简单了解RDB和AOF持久优缺点
RDB持久化
优点:使用单独子进程来进行持久化,主进程不会进行任何 IO 操作,保证了 redis 的高性能
缺点:RDB 是间隔一段时间进行持久化,如果持久化之间 redis 发生故障,会发生数据丢失。所以这种方式更适合
数据要求不严谨的时候
AOF持久化
优点:可以保持更高的数据完整性,如果设置追加 file 的时间是 1s,如果 redis 发生故障,最多会丢失 1s 的数
据;且如果日志写入不完整支持 redis-check-aof 来进行日志修复;AOF 文件没被 rewrite 之前(文件过大时会对
命令进行合并重写),可以删除其中的某些命令(比如误操作的 flushall)。
缺点:AOF 文件比 RDB 文件大,且恢复速度慢。
简单来说,RDB在存储时,需要间隔一段时间才对数据进行备份(在突然断电的情况或崩溃的情况,是不利的),损耗一部分CPU,而AOF在这情况下,只是丢失一小部分数据,不过压缩的文件大,恢复速度慢。