172173.com

参考博文1《Redis内存满了的几种解决方法》https://blog.csdn.net/u014590757/article/details/79788076
参考博文2《关于Redis数据过期策略》https://www.cnblogs.com/chenpingzhao/p/5022467.html
参考博文3《为什么Redis内存不宜过大》https://blog.csdn.net/houyongqian88/article/details/53866641

Redis三种过期键删除策略

  • ==被动删除:当读/写一个已经过期的key时,会触发惰性删除策略,直接删除掉这个过期key==
  • 主动删除:由于惰性删除策略无法保证冷数据被及时删掉,所以Redis会定期主动淘汰一批已过期的key
  • maxmemory:当前已用内存超过maxmemory限定时,触发主动清理策略maxmemory-policy

精品博文《Redis主从复制学习》https://zhuanlan.zhihu.com/p/47719810
精讲Redis主从全量、增量复制的原理。

1.Redis主从复制

Redis主从复制原理

Redis全量复制一般发生在Slave初始化阶段,这时Slave需要将Master上的所有数据都复制一份。具体步骤如下:

  • 从服务器连接主服务器,发送SYNC命令;
  • 主服务器接收到SYNC命名后,开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所有写命令;
  • 主服务器BGSAVE执行完后,向所有从服务器发送快照文件,并在发送期间继续记录被执行的写命令;
  • 从服务器收到快照文件后丢弃所有旧数据,载入收到的快照;
  • 主服务器快照发送完毕后开始向从服务器发送缓冲区中的写命令;
  • 从服务器完成对快照的载入,开始接收命令请求,并执行来自主服务器缓冲区的写命令;

分享博文《学会这15点,让你分分钟拿下Redis数据库》https://mp.weixin.qq.com/s/LUgwbgtbsciuZgExrTk3xA
精品博文《关于Redis持久化》https://www.cnblogs.com/chenpingzhao/p/5158791.html

Redis 持久化有两种方式:

  • Snapshotting(SAVE快照):RDB持久化方式是在一个特定的间隔保存某个时间点的一个数据快照。
  • Append-only file(AOF):AOF(Append only file)持久化方式则会记录每一个服务器收到的写操作。数据回复时,这些记录的操作会逐条执行从而重建出原来的数据。写操作命令记录的格式跟Redis协议一致,以追加的方式进行保存。

==Redis的持久化是可以禁用的,两种方式的持久化是可以同时存在的,但是当Redis重启时,AOF文件会被优先用于重建数据。==