redis 获取服务器信息,查看Redis内存信息的命令

info 命令用于监控Redis运行情况,其中 info memory 可以查看Redis内存使用统计信息:

命令输出结果如下图:

前几个字段信息最为重要,其含义分别为:

属性名

属性说明

used_memory

Redis 分配器分配的内存总量,也就是内部存储的所有数据内存占用量

used_memory_human

以可读的格式返回 used_memory

used_memory_rss

从操作系统的角度显示 Redis 进程占用的物理内存总量

used_memory_rss_human

used_memory_rss 的用户宜读格式的显示

used_memory_peak

内存使用的最大值,表示 used_memory 的峰值

used_memory_peak_human

以可读的格式返回 used_memory_peak的值

查看Key统计信息

Keys命令性能很不好,线上使用该命令简直是业务克星,因此建议生产环境屏蔽Keys命令。如果只是想查看Key统计信息,可以使用另外两个命令:

1. dbsize:查看当前数据库的有效key数量

2. info keyspace:info命令给出Redis实例各个数据库的Key信息

两个命令输出如下:

可以看到,info keyspace命令给出更全的统计信息。

查看占用内存最大的Key

查看数据库中哪个Key占用内存最大,可以使用--bigkeys参数:

命令输出如下:

运行结果按照从小到大的顺序给出了内存占用最高的10个Key。上图结果中,最大Key的值占用内存达到300多K。

对于string类型,bigkeys的输出是正确的,然而list、sets等数据结构,bigkeys的计算方式可能存在问题,实践中请注意着点。

此外--bigkeys参数还给出了Keys信息的统计。上述输出中,所有的数据都是string类型,没有list、sets等类型数据。

info 命令用于监控Redis运行情况,其中 info memory 可以查看Redis内存使用统计信息: 命令输出结果如下图: 前几个字段信息最为重要,其含义分别为: 属性名 属性说明 used_memory Redis 分配器分配的内存总量,也就是内部存储的所有数据内存占用量 used_memory_human 以可读的格式返回 used_memory used_memory_rss 从操作系统的角度显示 Redis 进程占用的物理内存总量 used_memory_rss_human used_memory_rss 的用户宜读格式的显示 used_memory_peak 内存使用的最大值,表示 used_memory 的峰值 used_memory_peak_human 以可读的格式返回 used_memory_peak的值 查看Key统计信息 Keys命令性能很不好,线上使用该命令简直是业务克星,因此建议生产环境屏蔽Keys命令。如果只是想查看Key统计信息,可以使用另外两个命令: 1. dbsize:查看当前数据库的有效key数量 2. info keyspace:info命令给出Redis实例各个数据库的Key信息 两个命令输出如下: 可以看到,info keyspace命令给出更全的统计信息。 查看占用内存最大的Key 查看数据库中哪个Key占用内存最大,可以使用--bigkeys参数: 命令输出如下: 运行结果按照从小到大的顺序给出了内存占用最高的10个Key。上图结果中,最大Key的值占用内存达到300多K。 对于string类型,bigkeys的输出是正确的,然而list、sets等数据结构,bigkeys的计算方式可能存在问题,实践中请注意着点。 此外--bigkeys参数还给出了Keys信息的统计。上述输出中,所有的数据都是string类型,没有list、sets等类型数据。
经验分享 程序员 微信小程序 职场和发展