• 缓存过期都有哪些策略?


    常见以下四种缓存过期策略:

    • 定时过期 :每个设置过期时间的key都需要创建⼀个定时器,到过期时间就会立即清除。该策略可以⽴ 即清除过期的数据,对内存很友好;但是会占⽤ ⼤量的CPU资源 去处理过期的数据,从⽽ 影响缓存的响应时间和吞吐量
    • 惰性过期 :只有当访问⼀个 key 时,才会判断该key是否已过期,过期则清除。该策略可以最⼤化地节省CPU资源,但是很消耗内存、许多的过期数据都还存在内存中。极端情况可能出现⼤量的过期key没有再次被访问,从⽽不会被清除,占⽤⼤量内存。
    • 定期过期 :每隔⼀定的时间,会扫描⼀定数量的数据库的 expires 字典中⼀定数量的key(是随机的), 并 清除其中已过期的key 。该策略是定时过期和惰性过期的折中⽅案。通过调整定时扫描的时间间隔和每次扫描的限定耗时,可以在不同情况下使得 CPU和内存资源 达到最优的平衡效果。
    • 分桶策略 定期过期的优化,将过期时间点相近的 key 放在⼀起,按时间扫描分桶。

       

  • 相关阅读:
    PDF 如何高效的转换成 markdown
    ddr4测试-2
    在国外当程序员有多高兴
    路由策略简介
    React中useMemo与useCallback的区别
    深信服AC应用控制技术
    【C++】红黑树插入操作实现以及验证红黑树是否正确
    面试官【说一下移动端1px的解决方案】
    12.JVM
    分布式ID之雪花算法
  • 原文地址:https://blog.csdn.net/m0_70734549/article/details/127958585