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 的部分内存被操作系统换出到交换空间了,在这种情况下,操作可能会产生明显的延迟。