美文网首页
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