Redis过期key

Redis是怎么删除过期key的

1.惰性删除

当一些key过期了,Redis不会主动去删除,只有当用户访问这个key时,发现过期了才会删除

2.定期删除

定期抽取部分key,判断是否过期,如果过期就删除,每次遍历20个key

        (1)SLOW模式默认频率为每秒10次,每次不超过25ms

        (2)FAST删除频率不固定,删除间隔不少于2ms,每次耗时不超过1ms

如果key的数量过多,同时时间到了还未删除,导致内存占用过多怎么办

Redis内存淘汰策略

通过在Redis.config中设置maxmemory-policy的值来改变策略

  • noevitction:不淘汰任何key,但是内存满了不允许写入新的数据,写数据被阻塞,Redis默认策略
  • volatile-ttl:对设置TTL的key,比较key的剩余TTL的值,TTL越小越被先淘汰
  • allkeys-random:对全体的key随机进行淘汰
  • volatile-random:对设置了TTL的key随机淘汰
  • allkeys-lru:对全体key,基于lru算法进行淘汰
  • volatile-lru:对设置了TTL的key,基于lru算法淘汰
  • allkeys-lfu:对全体key,基于lfu算法进行淘汰
  • volatile-lfu:对设置了TTL的key,基于lfu算法淘汰

当Redis中 的内存超过了maxmemory,会触发Redis内存淘汰策略

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值