查看 Redis 内存


查看 Redis 内存

输入info memory

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
127.0.0.1:0>info memory

"# Memory

used_memory:1670920 由 Redis 分配器分配的内存总量,以字节(byte)为单位
used_memory_human:1.59M 以人类可读的格式返回 Redis 分配的内存总量
used_memory_rss:1633992 从操作系统的角度,返回 Redis 已分配的内存总量(俗称常驻集大小)。这个值和 top 、 ps 等命令的输出一致。
used_memory_rss_human:1.56M
used_memory_peak:1807976 Redis 的内存消耗峰值(以字节为单位)
used_memory_peak_human:1.72M 以人类可读的格式返回 Redis 的内存消耗峰值
total_system_memory:0
total_system_memory_human:0B
used_memory_lua:37888 Lua 引擎所使用的内存大小(以字节为单位)
used_memory_lua_human:37.00K
maxmemory:1048576000 所查询的Redis设置的的最大内存值(以字节为单位)
maxmemory_human:1000.00M 所查询的Redis设置的的最大内存值(以mb为单位)
maxmemory_policy:noeviction
mem_fragmentation_ratio:0.98 used_memory_rss 和 used_memory 之间的比率
mem_allocator:jemalloc-3.6.0 在编译时指定的, Redis 所使用的内存分配器。可以是 libc 、 jemalloc 或者 tcmalloc 。
"
127.0.0.1:0>

对比几个值

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

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

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