「 中间件 」 七月 10, 2022
redis(六) AOF日志详解
文章字数 21k 阅读约需 19 mins.
之前已经大致的讲解过aof的整体执行流程.
主要有四点:
- 命令追加
- 文件写入
- 日志重写
- 日志重载.
本文会根据以上四点,分析源码来了解redis具体的执行过程,以更好的理解机制.
当AOF持久化功能处于打开状态时,服务器在执行完一个写命令之后,会以协议格式将被执行的写命令追加到服务器状态的aof_buf缓冲区的末尾.
追加时机:
- 客户端命令
- 过期健删除,内存淘汰等发生时,会删除对应的key,也会把删除命令通过propagate函数传播到AOF中
- 事务追加传播命令时,会在头和尾加上”multi...