redis中的数据过期后是如何处理的呢?

【字号: 日期:2022-09-01浏览:30作者:雯心

问题描述

redis可以设置数据过期时间,如果一个数据过期是如何处理的呢?是有一个计时器实时删除吗?这样太低效了。是下次使用的时候再判断吗?这样随着数据的增多,会不会判断时间越来越长?

问题解答

回答1:

这方面你可以搜索Redis过期策略,相关文章很多,我对Redis也仅仅是了解和使用,并没有深究原理。

回答2:

这篇文章有说明:http://www.cppblog.com/richbirdandy/archive/2011/11/29/161184.html

以上3种删除过期key的途径,第二种定期删除一定比例的key是主要的删除途径,第一种“读时删除”保证过期key不会被访问到,第三种是一个当内存超出设定时的暴力手段。由此也能看出redis设计的巧妙之处,

回答3:

惰性删除和定期删除,具体解释请查看 《Redis 设计与实现》

相关文章: