Redis缓存虽然很高效,但是内存不是无限的,我们不能一直往里面去插入数据,所以隔一段时间就必须查看下内存的使用情况

通过info命令来查看,通过客户端连接到Redis执行info命令,可以看到很多数据

只查看内存info memory

结果显示

# Memory
used_memory:43798640  //数据占用了多少内存(字节)
used_memory_human:41.77M  //数据占用了多少内存
used_memory_rss:44482560   //redis占用了多少内存
used_memory_rss_human:42.42M  
used_memory_peak:47023912  //占用内存的峰值
used_memory_peak_human:44.85M
used_memory_peak_perc:93.14%
used_memory_overhead:40011206
used_memory_startup:6019312
used_memory_dataset:3787434
used_memory_dataset_perc:10.03%
used_memory_lua:37888  //lua引擎所占用的内存大小
used_memory_lua_human:37.00K
maxmemory:8589934592
maxmemory_human:8.00G
maxmemory_policy:volatile-lru
mem_fragmentation_ratio:1.02  //used_memory_rss 和 used_memory 之间的比率
mem_allocator:jemalloc-4.0.3
active_defrag_running:0
lazyfree_pending_objects:0

在理想情况下, used_memory_rss 的值应该只比 used_memory 稍微高一点儿。 当 rss > used ,且两者的值相差较大时,表示存在(内部或外部的)内存碎片。 内存碎片的比率可以通过 mem_fragmentation_ratio 的值看出。 当 used > rss 时,表示 Redis 的部分内存被操作系统换出到交换空间了,在这种情况下,操作可能会产生明显的延迟。