key的过期策略是怎么实现的? 一个redis中可能同时存在很多很多key,这些key中可能有很大一部分都有过期时间,此时,redis服务器咋知道哪些key已经过期要被删除,哪些key还没过期? 如果直接遍历所有的key,显然是行不通的.效率非常低~~ redis整体的策略是 1.定期删除 2.惰性删除 假设这个key已经到了过期时间,但是暂时还没删它,key还存在. 紧接着,后面又一次访问,正好用到了这个key,于是这次访问就会让redis服务器触发删除key操作,同时再返回一个nil