MST

星途 面试题库

面试题:Redis RDB中过期键处理的基本流程是什么

请简述在Redis RDB持久化过程中,过期键是如何被处理的,包括在什么阶段进行判断和操作等方面。
24.4万 热度难度
数据库Redis

知识考点

AI 面试

面试题答案

一键面试
  1. 生成RDB文件阶段
    • 在执行SAVEBGSAVE命令生成RDB文件时,会对数据库中的键进行遍历。
    • 对于过期键,不会将其写入RDB文件。这意味着过期键在RDB文件生成过程中就被直接忽略掉,不会出现在RDB文件里。
  2. 加载RDB文件阶段
    • 主服务器模式下:当Redis以主服务器模式运行并加载RDB文件时,会对RDB文件中的所有键进行检查。如果发现某个键已经过期,不会将该过期键加载到数据库中,直接跳过此键。
    • 从服务器模式下:当Redis以从服务器模式运行并加载RDB文件时,无论键是否过期,都会直接加载到数据库中。这是因为从服务器的数据最终会被主服务器同步过来,所以加载RDB文件时不需要对过期键进行过滤。在主从复制过程中,从服务器会接收主服务器发送的数据库状态更新命令,从而保证数据一致性,过期键也会在这个过程中得到正确处理。