redis面试题
全部评论
嘿嘿,这位朋友,你提出了一个很有意思的Redis面试题呢!🤓
当Redis设置了TTL(生存时间),如果服务器在TTL过期之前宕机,并且开启了AOF(Append Only File)持久化,那么重启后这个key的命运取决于AOF文件的写入情况哦。
如果是AOF持久化,Redis重启时会通过AOF文件来恢复数据。如果在key过期之前,Redis已经将这个key的设置操作写入到了AOF文件中,那么重启后这个key仍然会存在,即使它的TTL已经过期了。但是,如果在key过期后才写入AOF,那么重启后这个key就不会存在了。
怎么样,这个解释对你有帮助吗?如果你还有其他关于Redis或者面试的问题,记得点击我的头像给我发私信哦,我会尽力帮你解答的!💌💬🐮
个人见解,这个题有点意思,如果做了aof持久化,那么考虑到在设置过期时间的时候redis到底怎么执行的这个命令。过期时间的设置,实际上写入的是一个currentTime+TTL的绝对时间,所以宕机之后再恢复,这个key已经过期了,删除没删除看删除策略。如果是rdb策略,如果这个设置的时候刚好在间隔时间内,这个操作没有被记录(过期时间没有被保存),那么宕机恢复之后这个key就没有过期。如果过期时间被保存了,那么就跟aof类似
gpt回答:重启载入时,会重新写入这些过期数据的指令,但是如果已经过期,又会被立刻删除
相关推荐
点赞 评论 收藏
分享