美文网首页
Redis过期删除策略

Redis过期删除策略

作者: 毛里求疵 | 来源:发表于2019-09-26 09:47 被阅读0次

一、知识点

  • 惰性删除:
    指某个键值过期后,此键值不会马上被删除,而是等到下次被使用的时候,才会被检查到过期,此时才能得到删除,惰性删除的缺点很明显是浪费内存。

  • 定时删除:
    每隔一段时间执行一次删除操作,并通过限制删除操作执行的时长和频率,来减少删除操作对cpu的影响。另一方面定时删除也有效的减少了因惰性删除带来的内存浪费。

  • 立即删除:
    立即删除能保证内存中数据的最大新鲜度,因为它保证过期键值会在过期后马上被删除,其所占用的内存也会随之释放。但是立即删除对cpu是最不友好的。因为删除操作会占用cpu的时间,如果刚好碰上了cpu很忙的时候,比如正在做交集或排序等计算的时候,就会给cpu造成额外的压力。

二、考点剖析

// Redis的过期策略是什么?
惰性删除 + 定期删除 

// Redis怎么实现定期删除的呢?
Redis默认每隔100ms随机抽取一些设置了过期时间的key,检查是否过期,如果过期就删除。

// 为什么要随机抽取呢?
假设Redis中有大量的key,并且都设置了过期时间,如果全量检查的话,将会耗费大量的CPU时间,这样有损Redis对外的服务性能。

// 随机抽取会带来什么问题呢?
可能导致已经过期的key还滞留在内存中,占用着内存空间。

// 如何解决随机抽取带来的问题呢?
为了解决这个问题,Redis引入了惰性删除。

// 什么是惰性删除呢?
在获取某个key的时候,Redis会进行检查,如果key设置了过期时间,并且已经过期,则删除这个key,释放内存空间。

// 如果某些key没有触发惰性删除,也就是说经过惰性删除 + 定期删除两轮清理,依旧存在,该如何解决呢?
这种情况,在内存不足的时候,Redis的内存淘汰策略就派上用场了。

相关文章

  • Redis 过期策略

    redis 过期策略 redis 过期策略是:定期删除+惰性删除。 所谓定期删除,指的是 redis 默认是每隔 ...

  • redis数据淘汰机制

    redis的过期策略 redis有两种过期策略,定期删除和惰性删除 定期删除:redis每个100ms随机抽取一些...

  • redis过期数据删除策略

    过期数据删除策略  redis的过期数据删除策略使用了惰性删除和定期删除两种策略: 惰性删除发生在redis处理读...

  • Redis学习笔记(一)过期策略

    redis支持两种过期删除策略:定期扫描删除和惰性删除 定期扫描策略 redis会将所有设置了过期时间的key放到...

  • Redis学习之路(12)- 杂记

    Redis-过期删除策略 Redis-删除策略: 1、定时删除:对内存友好, 但是占用cpu 2、惰性删除:对cp...

  • Redis几种常见问题

    1.Redis的过期策略以及内存淘汰机制 Redis采用的是定期删除+惰性删除策略+内存淘汰机制。 定期删除,Re...

  • Redis是如何管理内存中过期数据的

    一 redis的数据过期策略 定期删除策略每100毫秒, 随机抽取设置了过期时间的key,如果发现过期了,就删除;...

  • redis过期策略以及内存淘汰机制

    一、redis的过期策略 定期删除+惰性删除redis在存储数据时,可能会设置过期时间,而所谓的定期删除,指的是r...

  • Redis中Key的过期策略和淘汰机制

    Key的过期策略 Redis的Key有3种过期删除策略,具体如下: 1. 定时删除 原理:在设置键的过期时间的同时...

  • redis 过期键的删除策略

    redis 删除过期键策略  定时删除:   优点:定时删除策略对内存是最友好的:通过定时器,定时删除策略可以保证...

网友评论

      本文标题:Redis过期删除策略

      本文链接:https://www.haomeiwen.com/subject/wpcfuctx.html