redis--过期删除策略

1.过期数据:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.删除策略:
2.1.定时删除:

在这里插入图片描述
在这里插入图片描述
2.2 惰性删除:

在这里插入图片描述
expireIfNeeded这个函数,在调用任何对数据操作的时候,内部都将先调用这个函数,这个函数就是检查是否数据过期的,也就是所有的get操作都与这个函数挂钩的,也就是只要拿数据 都是执行这个函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.3 定期删除:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
简单来说 ,就是每秒中执行若干次serverCron操作,在这个serverCron操作中会对所有的数据进行轮训访问(databaseCron操作),在访问的时候会对每一个库中的key进行轮训访问(activeExpireCycle操作,)访问的策略是:随机挑选若干个key,而这个若干 w–是配置来的,配置出来以后 就要判断这个里面有过期的就删除掉,同时看删除的量占整体的量是多还是少,如果多那么就再来一轮,如果少就停—再去下一个里面去找,同时记录你现在找到了哪个expires【*】,按照以上形式 一轮一轮的来进行。----这样呢,就利用了cpu的25%的时间阶段性的对它们(expires中的数据(过期数据))进行操作。--------那么这样的话,内存中的过期数据也会得到清理,cpu也不会一直在占用。----所以这就保证了 cpu和内存都不会是极端的情况

在这里插入图片描述
在这里插入图片描述
在redis内部是采用 惰性删除+定期删除

3.逐出算法:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值