记一次redis内存没满发生key逐出的情况。

现象
从监控上看,redis的内存使用率最大是80%,但是发生了key evicted

在这里插入图片描述

分析
原因1、可能是阿里云监控没抓取到内存100%监控数据。
阿里控制台监控监控粒度是5秒。

内存使用率的计算方法。
used_memory_human/maxmemory

原因2、可能是link 内存占用比较大,虽然总内存超过了,maxmemory但是,link内存没统计到内存使用率里。

结合当时业务情况:没有大量数据写入, 有大key访问最大key 4M,hgetall访问。
所以判断,第二种可能性比较大。

解决方案:研发把大key 分散成小key。 比如原来存储了全国的数据,现在改成一个城市一个key。

redis 内存分析。
在这里插入图片描述
Redis总内存 = 链路内存(动态)+ 数据内存+ 管理内存(静态)

链路内存(动态)

主要包括Input Buff、Output Buff、JIT Overhead、Fake Lua Link、Lua执行缓存等,例如可执行INFO命令,通过返回结果的Clients中查看客户端缓存信息。

说明
Input buff与Output buff与每个客户端的连接有关,通常较小。当执行客户端Range类操作或大Key收发较慢时,Input buff与Output buff占用的内存会增大,从而影响数据区,甚至会造成内存溢出OOM(Out Of Memory)。

数据内存

用户数据区,即实际存储的Value信息,通常作为重点分析的对象。

管理内存(静态)

启动时较小且相对恒定,该区域由管理数据的Hash内存开销、Repl-buff与aof-buff的内存开销(约32 MB~64 MB)等构成。
说明
当Key数量特别多时(例如几亿个),会占用较大的内存。

内存使用率突然升高的主要原因如下

  • 短时间内大量写入新数据。
  • 短时间内大量创建新连接。
  • 突发访问产生大量流量超过网络带宽,导致输入缓冲区和输出缓冲区积压。
  • 客户端处理速度跟不上Redis的处理速度,导致输出缓冲区积压。

redis内存解释
https://www.jianshu.com/p/2e75ce35261e

https://help.aliyun.com/zh/redis/user-guide/troubleshoot-the-high-memory-usage-of-an-apsaradb-for-redis-instance?spm=a2c4g.11186623.0.i42

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/307027.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity Shader 实现X光效果

Unity Shader 实现X光效果 Unity Shader 实现实物遮挡外轮廓发光效果第五人格黎明杀机火炬之光 实现方案操作实现立体感优化总结源码 Unity Shader 实现实物遮挡外轮廓发光效果 之前看过《火炬之光》、《黎明杀机》、《第五人格》等不少的游戏里面人物被建筑物遮挡呈现出不同的…

一起玩儿物联网人工智能小车(ESP32)——13. 用ESP32的GPIO控制智能小车运动起来(一)

摘要:本文更深入的讲述了GPIO的相关知识,并完成了导线连接工作,为下一步的软件开发做好了准备。 通用输入输出端口(GPIO:General Purpose Input/Output Port),在前面已经有了初步的介绍&#xf…

Baumer工业相机堡盟相机如何使用NEOAPI SDK实现相机的连接(C++)

Baumer工业相机堡盟相机如何使用NEOAPI SDK实现相机的连接(C) Baumer工业相机Baumer工业相机SDK技术背景代码分析第一步:先使用NEOAPI函数查找相机第二步:连接相机后对相机进行采图第三步:将采集的图像显示在UI界面上 …

乘势而上开新年!2024深圳深圳户外家具及休闲用品展览会三月开幕

中国户外家具市场在九十年代末开始崭露头角,随着国家经济的腾飞,尤其是房地产行业的迅猛发展,加上现代商业模式的建立和完善,产品和需求都以惊人的速度在发展。无论是国际知名品牌,还是国内的专业户外家具生产企业&…

Fiddler 抓包工具的安装与使用

今天分享Fiddler 抓包工具的安装与使用,基于HTTP应用层协议的抓包工具。 一、下载安装 1、下载地址: The Ultimate Web Debugging Tool - Download Fiddler Everywhere | Telerik 选择相应类型: 2、下载完成 3、安装 傻瓜式安装&#xf…

【OpenAI Q* 超越人类的自主系统】DQN :Q-Learning + 深度神经网络

深度 Q 网络:用深度神经网络,来近似Q函数 强化学习介绍离散场景,使用行为价值方法连续场景,使用概率分布方法实时反馈连续场景:使用概率分布 行为价值方法 DQN(深度 Q 网络) 深度神经网络 Q-L…

【JVM篇】Java是如何实现平台无关的?

Java是如何实现平台无关的? ✔️什么是平台无关性✔️平台无关性的实现✔️Java虚拟机✔️字节码✔️Java语言规范 ✔️扩展知识仓✔️平台无关性的好处✔️ 有哪些语言实现了平台无关?✔️Java中基本数据类型的大小都是确定的吗? ✔️什么是平台无关性 平台无关性就是一种语…

shiro1.10版本后-IniSecurityManagerFactory过期失效

1、问题概述? 今天在研究了shiro的新版本shiro1.13.0版本,发现用了很长时间的IniSecurityManagerFactory工厂失效了。 从下图中可以看出,在新版本中IniSecurityManagerFactory被打上了过期线了。 那么问题来了,新版本如何使用呢…

六、从0开始卷出一个新项目瑞萨RZN2L之loader app分离工程优化

六、loader app分离工程 6.1 概述 6.2 官方资料与不足 6.3 loader app分离工程的优化 6.3.1 自动调节合并appsection 6.3.2 loader中使用外设 6.3.3 app使用sram mirror 6.3.4 sram atcm同时使用 六、从0开始卷出一个新项目之瑞萨RZN2L loader…

2024年科技行业十大经济预测

当我们站在新的一年的风口浪尖上时,科技行业正准备迎接重大变革和创新,这些变革和创新将塑造2024年的经济格局。以下是未来一年科技行业的十大经济预测。 低代码:低代码和无代码平台从 3 年前开始被大规模的应用,发展到现在已经逐…

最优化方法Python计算:无约束优化应用——逻辑回归模型

S型函数 sigmoid ( x ) 1 1 e − x \text{sigmoid}(x)\frac{1}{1e^{-x}} sigmoid(x)1e−x1​将全体实数 R \text{R} R映射到 ( 0 , 1 ) (0,1) (0,1),称为逻辑函数。其图像为 该函数连续、有界、单调、可微,性质量好。拟合函数为 F ( w ; x ) sigmoi…

阿里云服务器优惠活动大全

阿里云服务器优惠活动大全包括:云服务器新人特惠、云小站、阿里云免费中心、学生主机优惠、云服务器精选特惠、阿里云领券中心等,活动上阿里云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、轻量应用服务器2核2G3M带宽轻量服务器一年63元,…