Redis 内存统计解读

 我来答
清宁时光17
2022-07-14 · TA获得超过1.4万个赞
知道大有可为答主
回答量:6976
采纳率:100%
帮助的人:39.7万
展开全部

在客户端通过 redis-cli 连接服务器后,输入 info memory 命令会显示 Redis 系统关于存储的统计信息,本文重点对 used_memory、used_memory_rss、mem_fragmentation_ratio 这三个词条做个详细的说明,欢迎大家批评讨论。

used_memory 为 Redis 内存分配器(如:jemalloc)分配的 内存总量 ,这些内存主要用于存储 Redis 实际运行时产生的数据。注意,这里说的内存总量包含 内存 虚拟内存

used_memory_rss 为 Redis 进程占据操作系统的内存,所以除了分配器分配的内存之外,还包括进程运行本身需要的内存、内存碎片等,但是 不包括虚拟内存
从 used_memory 和 used_memory_rss 的描述来看,它们之间孰大孰小不好确定,原因如下:
1.如果 used_memory 使用了虚拟内存,如果虚拟内存使用量超过 Redis进程本身占用内存大小 + 程序内存碎片 ,则 used_memory 值可能大于 used_memory_rss。
2.used_memory_rss 本身包含Redis系统进程占据的内存,还有程序运行产生的内存碎片,如果used_memory未占用或占用少量虚拟内存,则与上一条相反,used_memory_rss 值可能大于 used_memory。
这二者的大小关系可以从侧面体现 Redis 系统的运行状态,这就引出了第三个词条 mem_fragmentation_ratio 。

mem_fragmentation_ratio 为 used_memory_rss / used_memory 的比值。根据前面对 used_memory_rss 和 used_memory 含义的描述,很容易得出以下结论:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式