面试题答案
一键面试auto - aof - rewrite - percentage
参数作用
auto - aof - rewrite - percentage
参数表示当前AOF文件大小相较于上次重写后AOF文件大小的增长率。当增长率超过该参数设定的值,且AOF文件大小大于auto - aof - rewrite - min - size
设定的值时,会触发AOF重写。
结合AOF文件增长场景说明与重写触发条件关系
假设上次AOF重写后文件大小为100MB,auto - aof - rewrite - percentage
设置为100,auto - aof - rewrite - min - size
设置为64MB。随着Redis数据的写入,AOF文件不断增长。当AOF文件大小增长到200MB(100MB * (1 + 100%))时,由于200MB > 64MB,满足重写触发条件,此时会触发AOF重写。如果auto - aof - rewrite - percentage
设置为200,那么AOF文件要增长到300MB(100MB * (1 + 200%))且大于64MB才会触发重写。所以auto - aof - rewrite - percentage
通过控制文件增长比例,与auto - aof - rewrite - min - size
共同决定AOF重写是否触发,避免频繁或不及时的重写操作。