Redis的删除策略:

Redis的删除策略是指在设置了过期时间的键上,在某种条件之下触发的自动删除过期的键。删除策略有两种:

第一种是定时删除策略:也就是设置了过期时间的键当已经到过期时间的时候,定时器立即删除该键,无论CPU负载有多大。 (以时间换空间)

第二种是懒汉式删除策略:也就是在访问该键时,我们才去判断该键是否过期,若过期则直接删除。 (以空间换时间)

第三种是定期删除策略(定时任务方式):也就是定期的从redis所有键中随机的抽取一部分设置了过期时间的键,然后将这些键当中已经过期了的删除。该策略当中的抽取频率可以根据业务需求修改hz配置参数,默认情况下该参数值是10,表示每秒钟抽取10次。

定期删除的流程:

第一步:从设置了过期时间的键中随机抽取20个

第二步:删除里面已经过期了的键

第三步:判断这些键中过期键所占比例,若过期键大于25%,则重复第一个步骤。

同时为了保证不会出现循环过度的情况,导致线程卡死,算法还设置了循环时间上限,默认不会超过25ms。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值