Redis中缓存过期、内存被缓存占用要如何处理

技术Redis中缓存过期、内存被缓存占用要如何处理这篇文章主要讲解了“Redis中缓存过期、内存被缓存占用要如何处理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redi

本文主要讲解“如何处理Redis中缓存过期和缓存占用内存的问题”。本文的解释简单明了,易学易懂。接下来请跟随边肖的思路学习学习“如何处理Redis中的缓存过期和缓存占用内存”!

Redis中缓存过期、内存被缓存占用要如何处理

00-1010设置了expire的密钥缓存已经过期,但是由于redis所基于的两种删除策略,服务器的内存仍然会被占用。

Redis有两个策略:

(活动)计划删除

定期检查过期的密钥,如果过期,清理并删除它。(每秒检查的次数在redis.conf中配置为hz)

(被动)惰性缺失

当客户端请求一个过期的密钥时,redis会检查密钥是否过期,如果过期就删除,然后返回一个nil。这种策略对cpu友好,不会造成太大的损失,但是会占用更多的内存。

因此,虽然密钥已经过期,但只要不被redis清理,内存还是会被占用。

00-1010内存满了,可以用硬盘保存,但是没有意义,因为硬盘没有内存快,会影响redis的性能。

因此,当内存已满时,redis提供了一种缓存消除机制:MEMORY MANAGEMENT。

Max:当最大内存利用率达到时,开始清理缓存。

* noeviction:旧缓存永远不会过期,新缓存无法设置,返回错误。

*allkeys-lru:清除使用最少的旧缓存,然后保存新缓存(推荐)

*allkeys-random:在所有缓存中随机删除(不推荐)

*volatile-lru:在设置了到期时间的缓存中,清除使用最少的旧缓存,然后保存新缓存。

*volatile-random:随机删除那些设置了过期时间的缓存中的缓存。

*volatile-ttl:删除那些设置了过期时间的缓存中即将过期的缓存。感谢阅读。以上就是“如何处理Redis中缓存过期和缓存占用内存”的内容。学习完这篇文章,相信大家对如何处理这个问题有了更深的理解,具体用法还需要实践来验证。在这里,边肖将为您推送更多关于知识点的文章,敬请关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/125715.html

(0)

相关推荐

  • php自己写留言板教程(php超级简单留言板代码)

    技术php如何实现简易留言板小编给大家分享一下php如何实现简易留言板,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

    攻略 2021年12月16日
  • Python用哪些工具好

    技术Python用哪些工具好这篇文章主要介绍了Python用哪些工具好,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、最强终端:Upterm本来想推荐

    攻略 2021年10月28日
  • CTF入门学习3-Web通信基础

    技术CTF入门学习3-Web通信基础 CTF入门学习3-Web通信基础本篇文章主要介绍WEB通信的机制,主要介绍了URL协议和HTTP协议。Web安全基础
    01 Web通信
    这个部分重点介绍浏览器与We

    礼包 2021年11月20日
  • css3如何实现元素颜色从左到右变蓝效果

    技术css3如何实现元素颜色从左到右变蓝效果这篇文章主要介绍了css3如何实现元素颜色从左到右变蓝效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    攻略 2021年11月26日
  • Ch14学习笔记——MySQL数据库系统

    技术Ch14学习笔记——MySQL数据库系统 Ch14学习笔记——MySQL数据库系统Ch14学习笔记——MySQL数据库系统
    14.1 MySQL简介
    MySQL (MySQL2018 )是一个关系数

    礼包 2021年12月13日
  • 第十章(二) 模块补充 hashlib+log

    技术第十章(二) 模块补充 hashlib+log 第十章(二) 模块补充 hashlib+loghashlib模块
    加密:将明文数据通过一系列算法变成密文数据(目的就是为了数据的安全)加密算法:md系

    礼包 2021年11月30日