Redis AOF(Append Only File)机制是为了记录每一次redis命令的操作并用于恢复数据。
AOF按顺序记录每一步操作,例如:
set k = 3,
set k = 5,
set k = 10 ,当服务器重启后依次执行命令恢复k = 10。
日志写入有三种方式:
- Always,同步写回:每个写命令执行完,立马同步地将日志写回磁盘;
- Everysec,每秒写回:每个写命令执行完,只是先把日志写到 AOF 文件的内存缓冲区,每隔一秒把缓冲区中的内容写入磁盘;
- No,操作系统控制的写回:每个写命令执行完,只是先把日志写到 AOF 文件的内存缓冲区,由操作系统决定何时将缓冲区内容写回磁盘。
当日志过大后,redis启动子线程执行重刷AOF,上例中,AOF只记录一条记录set k = 10;减少日志量。