Redis学习笔记(5)—— Redis的持久化方案&Redis的集群搭建
一、Redis的持久化方案 Redis的高性能是由于其将所有数据都存储在了 内存 中,为了使Redis在重启之后仍能保证数据不丢失,需要将数据从内存中同步到硬盘中,这一过程就是持久化。 Redis支持两种方式的持久化,一种是RDB方式,一种是AOF方式。可以单独使用其中一种或将二者结合使用。 【RDB方式】 快照形式,定期把内存中当前时刻的数据保存到磁盘。Redis默认支持的持久化方案。 在redis.conf配置文件中配置: Redis启动后会读取RDB快照文件,将数据从硬盘载入到内存。根据数据量大小与结构和服务器性能不同,这个时间也不同。通常将记录一千万个字符串类型键、大小为1GB的快照文件载入到内存中需要花费20~30秒钟。 问题总结: 通过RDB方式实现持久化,一旦Redis异常退出,就会丢失最后一次快照以后更改的所有数据。这就需要开发者根据具体的应用场合,通过组合设置自动快照条件的方式来将可能发生的数据损失控制在能够接受的范围。如果数据很重要以至于无法承受任何损失,则可以考虑使用AOF方式进行持久化。 【AOF方式】 把所有对redis数据库操作的命令,增删改操作的命令。保存到文件中。数据库恢复时把所有的命令执行一遍即可。 默认情况下Redis没有开启AOF(append only file)方式的持久化