如何查看redis内存使用情况

如何查看redis内存使用情况

https://jingyan.baidu.com/article/2c8c281dbd079f0008252a0f.html

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。Redis的基本特点之一内存数据库,因为其数据是放在内存中的所以查询、操作非常快,但是占用过多的内存也是我们担心的,那么如何查看Redis内存使用情况呢?

工具/原料

 
  • Redis
  • Redis 客户端

方法/步骤

 
  1. 1

    使用Redis客户端连接Redis,保证可以执行Redis命令,我用的客户端是 Redis Desktop Manager,当然也可使用 Xshell

    如何查看redis内存使用情况

  2. 2

    执行 info memory 查询 Redis 内存使用情况信息

    如何查看redis内存使用情况

  3. 3

    分析 查询结果

    used_memory : 由 Redis 分配器分配的内存总量,以字节(byte)为单位

    used_memory_human : 以人类可读的格式返回 Redis 分配的内存总量

    used_memory_rss : 从操作系统的角度,返回 Redis 已分配的内存总量(俗称常驻集大小)。这个值和 top 、 ps 等命令的输出一致。

    如何查看redis内存使用情况

  4. 4

    分析 查询结果2

    used_memory_peak : Redis 的内存消耗峰值(以字节为单位)

    used_memory_peak_human : 以人类可读的格式返回 Redis 的内存消耗峰值

    used_memory_lua : Lua 引擎所使用的内存大小(以字节为单位)

    mem_fragmentation_ratio : used_memory_rss 和 used_memory 之间的比率

    mem_allocator : 在编译时指定的, Redis 所使用的内存分配器。可以是 libc 、 jemalloc 或者 tcmalloc 。

    如何查看redis内存使用情况

  5. 5

    对比几个值

    1)当 rss > used ,且两者的值相差较大时,表示存在(内部或外部的)内存碎片。

    内存碎片的比率可以通过 mem_fragmentation_ratio 的值看出。

    2)当 used > rss 时,表示 Redis 的部分内存被操作系统换出到交换空间了,在这种情况下,操作可能会产生明显的延迟。

    如何查看redis内存使用情况

  6. 6

    当 Redis 释放内存时,分配器可能会,也可能不会,将内存返还给操作系统。

    如果 Redis 释放了内存,却没有将内存返还给操作系统,那么 used_memory 的值可能和操作系统显示的 Redis 内存占用并不一致。查看 used_memory_peak 的值可以验证这种情况是否发生。

    END

注意事项

 
  • 内存碎片注意清理
  • 根据自己内存大小进行测试

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113508.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vue和layUi对比

    vue和layUi对比vue和layUi对比vue(angular,react)这些框架会负责数据和视图的绑定,数据变了,视图自动更新,视图发生事件,也会更新数据,很省事。layui(bootstrap,extjs)这类库,感觉不是框架,而是组件库,会提供一些组件(比如表格,树),只提供外观和行为,不提供和数据的绑定,数据变了,你负责刷新;视图变了,你自己获取数据。vue的界面库elementui和layui都是组件库,区别就是数据和视图是不是关联的。layui其实更偏向与后端开发人员使用,在服务端页面上有非常好的效果

    2022年6月25日
    164
  • vue使用axios解决跨域_vue前端解决跨域的方法

    vue使用axios解决跨域_vue前端解决跨域的方法工具版本:【vue-V】:2.9.6ide工具:VSCode/Idea前提:我们前端vue工程需要单独部署一、本地使用命令运行跨域问题。外网访问的地址:https://www.runoob.com/try/ajax/json_demo.json本地springboot接口访问的地址:http://192.168.3.12:8081/register/getSmsCode/1234567891、axios访问的代码: created(){ const_this=this

    2025年10月28日
    4
  • idea2020.2.1激活码【2021免费激活】

    (idea2020.2.1激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html3MRUAPM31O-eyJsaWNlbnNlSW…

    2022年3月29日
    579
  • 数据库原理——主从复制

    数据库原理——主从复制

    2021年5月20日
    95
  • JavaScript实现进制转换

    JavaScript实现进制转换

    2022年3月12日
    38
  • 内网IP和公网IP的区别

    内网IP和公网IP的区别IP地址对于经常上网的人应该都不陌生,ip地址又可以分成内网ip地址和公网ip地址,今天就来简单介绍下这两者的区别。通常我们所说的内网也就是局域网,是内网的计算机以网络地址转换协议,通过一个公共的网关访问Internet。而内网的计算机也可以向Internet上的其他计算机发送连接请求。但是但Internet上其他的计算机无法向内网的计算机发送连接请求。为了简单理解我们就以网吧的网络举个列子,网吧的网线都是连接在同一个交换机上面的,也就是说它们的IP地址是由交换机或者路由器进行分配的。而且每…

    2022年4月29日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号