美文网首页
RDB、AOF以及复制功能对过期键的处理机制

RDB、AOF以及复制功能对过期键的处理机制

作者: 那谁319 | 来源:发表于2019-08-17 16:44 被阅读0次

1、RDB对过期键的处理机制

  • 持久化时已过期的键不会保存到新生成的rdb文件中;
  • redis服务器(主服务器)启动时,载入持久化的数据到内存时,已过期的键不会载入到内存;
  • redis服务器(从服务器)启动时,载入持久化的数据到内存时,已过期的键也会载入到内存,但是当与主服务器进行数据同步时,从服务器的数据会被清空
  • 综上所述不管是写入rdb文件还是读取rdb文件的数据过期键都是无效的。

2、AOF对过期键的处理机制

  • 因为aof保存的操作命令,所以键的读写操作命令都会被保存在aof文件中,当键过期时,通过惰性删除或者定时删除之后,aof会保存相应的删除命令,显式记录该键已经被删除。
  • redis服务器通过aof文件方式将持久化数据load到内存时,遇到过期键的处理机制和rdb方式将持久化数据load到内存时的处理方式一样。
  • 综上所述不管时写入aof文件还是读取aof文件的数据过期键都是无效的。

3、复制功能对过期键的处理机制

  • 当服务器运行在复制模式下,从服务器的过期键的删除动作有主服务器控制;
  • 主服务器在删除一个过期键之后,会显式的向所有从服务器发送一条DEL命令,告知从服务器删除这个过期键
  • 从服务器在处理客户端发送过来的查询命令时,即使碰到过期键也不会将过期键删除,而是像处理未过期键一样来处理这个过期键
  • 从服务器只有在接收到主服务器发送过来的删除命令之后,才会删除过期键。

相关文章

网友评论

      本文标题:RDB、AOF以及复制功能对过期键的处理机制

      本文链接:https://www.haomeiwen.com/subject/gqvzlctx.html