暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

354.Redis AOF 重写机制

每天一个开发小知识


本文为《Redis设计与实现》学习笔记


开局一张图



上图为 AOF 重写机制的过程


Why


AOF 持久化会将所有对 Redis 数据库的写命令写入 AOF 文件


随着时间的流逝


AOF 文件会越来越大


为避免 AOF 文件无限变大


Redis 服务器会对 AOF 文件进行重写


即减少 AOF 文件中的命令数


How


  • 重写 AOF 文件并不是对老 AOF 文件进行操作,而是直接读取 Redis 数据,生成新的 AOF 文件

  • 重写进程为单独的子进程,从而主进程能照常对外提供服务

  • 重写子进程拥有自己的数据副本,从而无需和主进程竞争数据资源

  • 写命令会被写入 AOF 缓冲区和 AOF 重写缓冲区,保证老 AOF 文件和新 AOF 文件的数据一致

  • 将新 AOF 文件改名,原子地覆盖老的 AOF 文件


每天一个开发小知识,今天你学废了吗?

文章转载自每天一个开发小知识,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论