February
12th,
2023
AOF实现
写后日志,“写后”的意思是 Redis 是先执行命令,把数据写入内存,然后才记录日志
三种写回策略
- always
- everysec
- no
AOF重写
重写过程是由后台子进程 bgrewriteaof 来完成的,这也是为了避免阻塞主线程,导致数据库性能下降。
RDB全量快照
- save:在主线程中执行,会导致阻塞
- bgsave:创建一个子进程,专门用于写入 RDB 文件,避免了主线程的阻塞
持久化建议
- 数据不能丢失时,内存快照和 AOF 的混合使用是一个很好的选择
- 允许分钟级别的数据丢失,可以只使用 RDB
- 只用AOF,优先使用
everysec
,它在可靠性和性能之间取了一个平衡