博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何查看redis内存使用情况
阅读量:6407 次
发布时间:2019-06-23

本文共 1133 字,大约阅读时间需要 3 分钟。

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

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

工具/原料

 
  • Redis
  • Redis 客户端

方法/步骤

 
  1. 1

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

  2. 2

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

  3. 3

    分析 查询结果

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

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

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

  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 。

  5. 5

    对比几个值

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

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

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

  6. 6

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

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

    END

注意事项

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

转载地址:http://hltea.baihongyu.com/

你可能感兴趣的文章
GitHub详细教程
查看>>
raid技术的读与想
查看>>
Hbase 中Column Family 的作用
查看>>
用鸡讲解技术债务的形成过程?
查看>>
Linux下的Tftp服务
查看>>
C#将集合和Json格式互相转换的几种方式
查看>>
java连接数据库并操作
查看>>
安装.net framework 4.0时提示HRESULT 0xc8000222
查看>>
集群下文件同步问题
查看>>
ASA 5510 V821 EASY ×××配置
查看>>
ubuntu server 更换源
查看>>
SQL SERVER 2008安装
查看>>
EXT中的gridpanel自适应窗口的方法
查看>>
unary operator expected
查看>>
IPC之共享内存
查看>>
新加坡之旅
查看>>
IBM X3650 M3服务器上RAID配置实战
查看>>
Mysql DBA 高级运维学习之路-索引知识及创建索引的多种方法实战
查看>>
go语言与java nio通信,解析命令调用上下文拉起ffmpeg,并引入livego做的简单流媒体服务器...
查看>>
JavaScript面向对象轻松入门之多态(demo by ES5、ES6、TypeScript)
查看>>