第十四章 Redis配置统计字典
第十三章是介绍搜狐的Redis监控运维平台CacheCloud,这里不做介绍,要深入了解可以查看他们的 官网 或者 github。
第十四章实际上就是个字典,对一些参数进行详细说明,下面直接附上书本的内容:
本章将对Redis的系统状态信息(info命令结果)和Redis的所有配置(包括Standalone、Sentinel、Cluster三种模式)做一个全面的梳理,希望本章能够成为
Redis配置统计字典,协助大家分析和解决日常开发和运维中遇到的问题,主要内容如下:
- info系统状态说明。
- Standalone配置说明。
- Sentinel配置说明。
- Cluster配置说明。
14.1 info系统状态说明
14.1.1 命令说明
info命令的使用方法有以下三种:
- info:部分Redis系统状态统计信息。
- info all:全部Redis系统状态统计信息。
- info section:某一块的系统状态统计信息,其中section可以忽略大小写。
例如,只对Redis的内存相关统计比较感兴趣,可以执行info memory,此时section=memory,下面是info memory的结果:
127.0.0.1:6379> info memory
# Memory
used_memory:5209229784
used_memory_human:4.85G
used_memory_rss:6255316992
used_memory_peak:5828761544
used_memory_peak_human:5.43G
used_memory_lua:36864
mem_fragmentation_ratio:1.20
mem_allocator:jemalloc-3.6.0
在运维的时候发现客户端有些异常,可以执行info clients,如以下信息反映了输出缓冲区存在溢出的情况:
127.0.0.1:6379> info clients
# Clients
connected_clients:225
client_longest_output_list:245639
client_biggest_input_buf:0
blocked_clients:0
info all 命令包含Redis最全的系统状态信息,下表是info all命令涉及的所有section,其中每个模块名就是我们上面提到的section,例如info Server 是查看Redis服务的基本信息。
模块名 | 模块名称 |
---|---|
Server | 服务器信息 |
Clients | 客户端信息 |
Memory | 内存信息 |
Persistence | 持久化信息 |
Stats | 全局统计信息 |
Replication | 复制信息 |
CPU | CPU消耗信息 |
Commandstats | 命令统计信息 |
Cluster | 集群信息 |
Keyspace | 数据库键统计信息 |
14.1.2 详细说明
下面将对每个模块进行详细说明,为了更加方便解释,我们直接结合线上一个运行的Redis实例进行说明。
1.Server
表14-2是info Server模块的统计信息,包含了Redis服务本身的一些信息,例如版本号、运行模式、操作系统的版本、TCP端口等。

2.Clients
表14-3是info Clients模块的统计信息,包含了连接数、阻塞命令连接数、输入输出缓冲区等相关统计信息。

3.Memory
表14-4是info Memory模块的统计信息,包含了Redis内存使用、系统内存使用、碎片率、内存分配器等相关统计信息。

4.Persistence
表14-5是info Persistence模块的统计信息,包含了RDB和AOF两种持久化的一些统计信息。

5.Stats
表14-6是info Stats模块的统计信息,是Redis的基础统计信息,包含了:连接、命令、网络、过期、同步等很多统计信息。

6.Replication
表14-7是info Replication模块的统计信息,包含了Redis主从复制的一些统计信息,根据主从节点,统计信息也略有不同。


7.CPU
表14-8是info CPU模块的统计信息,包含了Redis进程和子进程对于CPU消耗的一些统计信息。

8.Commandstats
表14-9是info Commandstats模块的统计信息,是Redis命令统计信息,包含各个命令的命令名、总次数、总耗时、平均耗时。

9.Cluster
表14-10是info Cluster模块的统计信息,目前只有一个统计信息,标识当前Redis是否为Cluster模式。

10.Keyspace
表14-11是info Keyspace模块的统计信息,包含了每个数据库的键值统计信息。

14.2 standalone配置说明和分析
相对于很多大型存储系统,Redis的配置不是很多,到了Redis3.0之后有60多个,虽然还是不多,但是每个配置都有很重要的作用和意义,本节我们将对Redis单机模式下的所有配置进行说明: