Redis 提供 RDB(Redis Database) 和 AOF(Append Only File) 两种持久化机制,确保数据在宕机后可恢复。两者设计理念和适用场景不同,以下是详细对比及选择建议:
⚙️ 一、RDB 持久化机制
核心原理:定期生成内存数据的二进制快照(dump.rdb
文件),记录某一时刻的全量数据状态[citation:1][citation:3][citation:6]。
触发方式:
- 自动触发:通过配置时间间隔与写入阈值(如
save 900 1
表示900秒内至少1个键变化)[citation:3][citation:7]。 - 手动触发:执行
SAVE
(阻塞主线程)或BGSAVE
(后台子进程执行,非阻塞)[citation:3][citation:7]。
✅ 优点
- 高性能:子进程生成快照,主进程无阻塞,读写性能影响小[citation:1][citation:6]。
- 文件紧凑:二进制压缩存储,文件体积小(例:100