RDB和AOF的特点
RDB: 以二进制 + 数据压缩方式存储,文件体积小
丢失数据的问题: 我觉得可能在生成上一次快照和下一次快照的间隔中追加到redis的数据可能会丢失。
AOF: 记录每一次写命令,数据最全
单机redis数据持久化方案
采用混合持久化方式,即RDB与AOF相结合的方式。
具体来说,当 AOF rewrite 时,Redis 先以 RDB 格式在 AOF 文件中写入一个数据快照,再把在这期间产生的每一个写命令,追加到 AOF 文件中。因为 RDB 是二进制压缩写入的,这样 AOF 文件体积就变得更小了。其中 AOF rewrite 是指 AOF 文件中只保留当前 key 的最新值。
集群哨兵方案
https://mp.weixin.qq.com/s/x1AobPWpMufNWqrBnc5sZg (好文,本文中的摘抄也源自此文)