首页/数据/Redis 进阶速查/重写缓冲区:衔接新旧文件
本包目录(421 条)
数据结构与选型42 条
持久化56 条
主从与哨兵51 条Cluster 集群44 条内存与管理99 条性能与排障129 条

重写缓冲区:衔接新旧文件

重写开始后新写入无法只靠子进程快照覆盖,Redis 把期间的写命令同时追加到重写缓冲,子进程完成后把缓冲合并进新文件,保证不丢中间命令。

Redis 进阶速查数据更新于 2026-10-12
目的覆盖重写期间的增量写
相关内存client output buffer 与 aof_rewrite_buf
完成动作追加缓冲 → 重命名 → 切换

观测

观测
redis-cli INFO persistence | Select-String aof_rewrite
redis-cli INFO memory | Select-String used_memory
重写耗时越长、写入越猛,缓冲越大,内存与切换时的追加耗时都随之上升。

易错点

  • 写入量太大时切换瞬间可能明显卡顿,重写安排在低峰更稳
  • 只看「重写中」标志不够,还要观察 aof_rewrite_buffer_length 这类衍生指标(以实际版本 INFO 为准)

数据来源与参考

  • Redis 官方文档:BGREWRITEAOF 内部机制说明
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌