redis的aof持久化模式
Posted 北城cheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis的aof持久化模式相关的知识,希望对你有一定的参考价值。
AOF的重写机制
AOF的工作原理是将写操作追加到文件中,文件的冗余内容会越来越多。所以 Redis 新增了重写机制。当AOF文件的大小超过所设定的阈值时,Redis就会对AOF文件的内容压缩。
重写的原理:Redis 会fork出一条新进程,读取内存中的数据,并重新写到一个临时文件中。并没有读取旧文件,因为旧文件太大了。最后替换旧的aof文件。
触发机制:当AOF文件大小是上次rewrite后大小的一倍且文件大于64M时触发。这里的“一倍”和“64M” 可以通过配置文件修改。可以设置大一点,不然会频繁重写。
AOF 的优缺点
优点:数据的完整性和一致性更高
缺点:因为AOF记录的内容多,文件会越来越大,数据恢复也会越来越慢。效率会比rdb差一点,并且相同数据的情况下,aof文件会比dump.rdb文件大一点。
注意
- Redis 需要手动开启AOF持久化方式,默认是每秒将写操作日志追加到AOF文件中。
- AOF 的数据完整性比RDB高,但记录内容多了,会影响数据恢复的效率。
- Redis 针对 AOF文件大的问题,提供重写的压缩机制。
- 若只打算用Redis 做缓存,可以关闭持久化。
- 若打算使用Redis 的持久化。建议RDB和AOF都开启。其实RDB更适合做数据的备份,留一后手。AOF出问题了,还有RDB。
以上是关于redis的aof持久化模式的主要内容,如果未能解决你的问题,请参考以下文章
搞懂 Redis 持久化,RDB模式AOF模式工作原理详解及操作
Redis的持久化机制 (RDB&AOF&混合模式)