【Redis】《Redis 开发与运维》笔记-Chapter13-Redis配置统计字典

本文详细介绍了Redis的各种配置,包括服务器信息、客户端信息、内存管理、持久化、统计信息、复制、CPU使用、命令统计、集群和数据库键的统计。此外,还涵盖了Sentinel和Cluster的特殊配置,如监控主节点、故障转移、集群模式等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

十三、Redis配置统计字典

1、info系统状态说明

  • info命令的使用方法有以下三种:
    1. info:部分Redis系统状态统计信息。
    2. info all:全部Redis系统状态统计信息。
    3. info section:某一块的系统状态统计信息,其中section可以忽略大小写。
  • 例如,只对Redis的内存相关统计比较感兴趣,可以执行info memory,此时section=memory。
  • info all命令包含Redis最全的系统状态信息。
  • info Server模块的统计信息,包含了Redis服务本身的一些信息,例如版本号、运行模式、操作系统的版本、TCP端口等。
  • info Clients模块的统计信息,包含了连接数、阻塞命令连接数、输入输出缓冲区等相关统计信息。
  • info Memory模块的统计信息,包含了Redis内存使用、系统内存使用、碎片率、内存分配器等相关统计信息。
  • info Persistence模块的统计信息,包含了RDB和AOF两种持久化的一些统计信息。
  • info Stats模块的统计信息,是Redis的基础统计信息,包含了:连接、命令、网络、过期、同步等很多统计信息。
  • info Replication模块的统计信息,包含了Redis主从复制的一些统计信息,根据主从节点,统计信息也略有不同。
  • info CPU模块的统计信息,包含了Redis进程和子进程对于CPU消耗的一些统计信息。
  • info Commandstats模块的统计信息,是Redis命令统计信息,包含各个命令的命令名、总次数、总耗时、平均耗时。
  • info Cluster模块的统计信息,目前只有一个统计信息,标识当前Redis是否为Cluster模式。
  • info Keyspace模块的统计信息,包含了每个数据库的键值统计信息。

info命令所有的section(info all命令涉及的所有section,其中每个模块名就是我们上面提到的section):

模块名模块含义
Server服务器信息
Clients客户端信息
Memory内存信息
Persistence持久化信息
Stats全局统计信息
Replication复制信息
CPUCPU消耗信息
Commandstats命令统计信息
Cluster集群信息
Keyspace数据库键统计信息

1)info Server模块统计信息

属性名属性值属性描述
redis_version3.0.7Redis服务版本
redis_git_sha100000000Git SHA1
redis_git_dirty0Git dirty flag
redis_build_id186eba9451cf9390Redis build id
redis_modecluster运行模式,分为:Cluster、Sentinel、Standalone
osLinux 2.6.18-274.el5 x86_64Redis所在机器的操作系统
arch_bits64架构(32或64位)
multiplexing_apiepollRedis所使用的事件处理机制
gcc_version4.1.2编译Redis时所使用的GCC版本
process_id31524Redis服务进程的PID
run_idfd8b97739c469526f640b8895a5084d669ed151fRedis服务的标识符
tcp_port6384监听端口
uptime_in_seconds9753347自Redis服务启动以来,运行的秒数
uptime_in_days112自Redis服务启动以来,运行的天数
hz10serverCron每秒运行次数
lru_clock16388503以分钟为单位进行自增的时钟,用于LRU管理
config_file/opt/cachecloud/conf/redis-cluster-6384.confRedis的配置文件

2)info Clients模块统计信息

属性名属性值属性描述
connected_clients262当前客户端连接数
client_longest_output_list0当前所有输出缓冲区中队列对象个数的最大值
client_biggest_input_buf0当前所有输入缓冲区中占有的最大容量
blocked_clients0正在等待阻塞命令(例如BLPOP等)的客户端数量

3)info Memory模块统计信息

属性名属性值属性描述
used_memory183150904Redis分配器分配的内存总量,也就是内部存储的所有数据内存占用量
used_memory_human174.67M以可读的格式返回used_memory
used_memory_rss428621824从操作系统的角度,Redis进程占用的物理内存总量
used_memory_peak522768352内存使用的最大值,表示used_memory的峰值
used_memory_peak_human498.55M以可读的格式返回used_memory_peak
used_memory_lua35840Lua引擎所消耗的内存大小
mem_fragmentation_ratio2.34used_memory_rss/used_memory比值,表示内存碎片率
mem_allocatorjemalloc-3.6.0Redis所使用的内存分配器。默认为:jemalloc

4)info Persistence模块统计信息

属性名属性值属性描述
loading0是否在加载持久化文件。0否,1是
rdb_changes_since_last_save53308858自上次RDB后,Redis数据改动条数
rdb_bgsave_in_progress0标识RDB的bgsave操作是否进行中。0否,1是
rdb_last_save_time1456376460上次bgsave操作的时间戳
rdb_last_bgsaveok上次bgsave操作状态
rdb_last_bgsave_time_sec3上次bgsave操作使用的时间(单位是秒)
rdb_current_bgsave_time_sec-1如果bgsva操作正在进行,则记录当前bgsave操作使用的时间(单位是秒)
aof_enabled1是否开启了AOF功能。0否,1是
aof_rewrite_in_progress0标识AOF的rewrite操作是否在进行中。0否,1是
aof_rewrite_scheduled0标识是否将要在RDB的bgsave操作结束后执行AOF rewrite操作
aof_last_rewrite_time_sec0上次AOF rewrite操作使用的时间(单位是秒)
aof_current_rewrite_time_sec-1如果rewrite操作正在进行,则记录当前AOF rewrite所使用的时间(单位是秒)
aof_last_bgrewrite_statusok上次AOF重写操作的状态
aof_last_write_statusok上次AOF写磁盘的结果
aof_current_size186702421AOF当前尺寸(单位是字节)
aof_base_size134279710AOF上次启动或rewrite的尺寸(单位是字节)
aof_buffer_length0AOF buffer的大小
aof_rewrite_buffer_length0AOF rewrite buffer的大小
aof_pending_bio_fsync0后台IO队列中等待fsync任务的个数
aof_delayed_fsync64延迟的fsync计数器

5)info Stats模块统计信息

属性名属性值属性描述
total_connections_received495967连接过的客户端总数
total_commands_processed5139857171执行过的命令总数
instantaneous_ops_per_sec511每秒处理命令总数
total_net_input_bytes282961395316输入总网络流量(以字节为单位)
total_net_output_bytes1760503612586输出总网络流量(以字节为单位)
instantaneous_input_kbps28.24每秒输入的字节数
instantaneous_output_kbps234.90每秒输出的字节数
rejected_connections0拒绝的连接个数
sync_full4主从完全同步成功次数
sync_partial_ok0主从部分同步成功次数
sync_partial_err0主从部分同步失败次数
expired_keys45534039过期的key数量
evicted_keys0剔除(超过了maxmemory后)的key数量
keyspace_hits3923837939命中次数
keyspace_misses1078922155不命中次数
pubsub_channels0当前使用中的频道数量
pubsub_patterns0当前使用中的模式数量
latest_fork_usec16194最近一次fork操作消耗的时间(微秒)
migrate_cached_sockets0记录当前Redis正在进行migrate操作的目标Redis个数。例如Redis A分别向Redis B和C执行migrate操作,那么这个值就是2

6)info Replication模块统计信息

角色属性名属性值属性描述
通用配置rolemasterslave
主节点connected_slaves1连接的从节点个数
主节点slave0slabe0:op=10.10.xx.169,port=6382,state=online,offset=426978948465,lag=1连接的从节点信息
主节点master_repl_offset426978955146主节点偏移量
从节点master_host10.10.xx.64主节点IP
从节点master_port6387主节点端口
从节点master_link_statusup与主节点的连接状态
从节点master_last_io_seconds_ago0主节点最后与从节点的通信时间间隔,单位为秒
从节点master_sync_in_progress0从节点是否正在全量同步主节点RDB文件
从节点slave_repl_offset426978956171复制偏移量
从节点slave_priority100从节点优先级
从节点slave_read_only1从节点是否只读
从节点connected_slaves0连接从节点个数
从节点master_repl_offset0当前从节点作为其他节点的主节点时的复制偏移量
通用配置repl_backlog_active1复制缓冲区状态
通用配置repl_backlog_size10000000复制缓冲区尺寸(单位:字节)
通用配置repl_backlog_first_byte_offset426968955147复制缓冲区起始偏移量,标识当前缓冲区可用范围
通用配置repl_backlog_histlen10000000标识复制缓冲区已存有效数据长度

7)info CPU模块统计信息

属性名属性值属性描述
used_cpu_sys31957.30Redis主进程在内核态所占用的CPU时钟总和
used_cpu_user72484.27Redis主进程在用户态所占用的CPU时钟总和
used_cpu_sys_children121.49Redis子进程在内核态所占用的CPU时钟总和
used_cput_user_children195.13Redis子进程在用户态所占用的CPU时钟总和

8)info Commandstats模块统计信息

属性名属性值属性描述
cmdstat_getcalls=3738730699,usec=11054972404,usec_per_call=2.96get命令调用总次数、总耗时、平均耗时(单位:微秒)
cmdstat_setcalls=50174458,usec=323143686,usec_per_call=6.44set命令调用总次数、总耗时、平均耗时(单位:微秒)

9)info Cluster模块统计信息

属性名属性值属性描述
cluster_enabled1节点是否为cluster模式。1是,0否

10)info Keyspace模块统计信息

属性名属性值属性描述
db0db0:keys=106430,expires=56107,avg_ttl=60283952当前数据库key总数,带有过期时间的key总数,平均存活时间

2、standalone配置说明和分析(Redis单机模式)

1)Redis 的一些总体配置,例如端口、 日志、数据库等。

配置名含义默认值可选值可否支持config set配置热生效
daemonize是否是守护进程noyes|no不可以
port端口号6379整数不可以
loglevel日志级别noticedebug|verbose|notice|warning可以
logfile日志文件名自定义,建议以端口号为名不可以
databases可用的数据库数16整数不可以
unixsocketunix套接字空(不通过unix套接字来监听)指定套接字文件不可以
unixsocketpermunix套接字权限0Linux三位数权限不可以
pidfileRedis运行的进程pid文件/var/run/redis.pid/var/run/redis-{port}.pid不可以
lua-time-limitLua脚本"超时时间"(单位:毫秒)5000整数,但是此超时不会真正停止脚本运行可以
tcp-backlogtcp-backlog511整数不可以
watchdog-period看门狗,用于诊断Redis的延迟问题,此参数是检查周期。(此参数需要在运行时配置才能生效)0整数可以
activerehashing指定是否激活重置哈希yesyes|no可以
dir工作目录(aof、rdb、日志文件都存放在此目录)./(当前目录)自定义可以

2)Redis内存相关配置。

配置名含义默认值可选值可否支持config set配置热生效
maxmemory最大可用内存(单位字节)0(没有限制)整数可以
maxmemory-policy内存不够时,淘汰策略noevictionvolatile-lru -> 用lru算法删除过期的键值
allkeys-lru -> 用lru算法删除所有键值
volatile-random -> 随机删除过期的键值
allkeys-random -> 随机删除任何键值
volatile-ttl -> 删除最近要到期的键值
noeviction -> 不删除键
可以
maxmemory-samples检测LRU采样数5整数可以

3)AOF方式持久化相关配置

配置名含义默认值可选值可否支持config set配置热生效
appendonly是否开启AOF持久化模式nono|yes可以
appendfsyncAOF同步磁盘频率everysecalways|everysec|no可以
appendfilenameAOF文件名appendonly.aofappendonly-{port}.aof不可以
aof-load-truncated加载AOF文件时,是否忽略AOF文件不完整的情况,让Redis正常启动yesno可以
no-appendfsync-on-rewrite设置为yes表示rewrite期间对新写操作不fsync,暂时存在缓冲区中,等rewrite完成后再写入nono|yes可以
auto-aof-rewrite-min-size触发rewrite的AOF文件最小阈值(单位:兆)64m整数+m(代表兆)可以
auto-aof-rewrite-percentage触发rewrite的AOF文件的增长比例条件100整数可以
aof-rewrite-incremental-fsyncAOF重写过程中,是否采取增量文件同步策略yesyes|no可以

4)RDB方式持久化相关配置

配置名含义默认值可选值可否支持config set配置热生效
saveRDB保存条件save 900 1
save 300 10
save 60 10000
如果没有该配置,代表不使用自动RDB策略可以
dbfilenameRDB文件名dump.rdbdump-{port}.rdb可以
rdbcompressionRDB文件是否压缩yesyes|no可以
rdbchecksumRDB文件是否使用校验和yesyes|no可以
stop-write-on-bgsave-errorbgsave执行错误,是否停止Redis接受写请求yesyes|no可以

5)Redis慢查询相关配置

配置名含义默认值可选值可否支持config set配置热生效
slow-log-slower-than慢查询被记录的阀值(单位微妙)10000整数可以
slowlog-max-len最多记录慢查询的条数128整数可以
latency-monitor-thresholdRedis服务内存延迟监控0(关闭)整数可以

6)Redis数据结构优化的相关配置

配置名含义默认值可选值可否支持config set配置热生效
hash-max-ziplist-entrieshash数据结构优化参数512整数可以
hash-max-ziplist-valuehash数据结构优化参数64整数可以
list-max-ziplist-entrieslist数据结构优化参数512整数可以
list-max-ziplist-valuelist数据结构优化参数64整数可以
set-max-intset-entriesset数据结构优化参数512整数可以
zset-max-ziplist-entrieszset数据结构优化参数128整数可以
zset-max-ziplist-valuezset数据结构优化参数64整数可以
hll-sparse-max-bytesHyperLogLog数据结构优化参数3000整数可以

7)Redis复制相关的配置

配置名含义默认值可选值可否支持config set配置热生效
slaveof指定当前从节点复制哪个主节点,参数:主节点的ip和portip和端口不可以,但可以用slaveof命令设置
repl-ping-slave-period主节点定期向从节点发送ping命令的周期,用于判定从节点是否存活。(单位:秒)10整数可以
repl-timeout主从节点复制超时时间(单位:秒)60整数可以
repl-backlog-size复制积压缓存区大小1M整数可以
repl-backlog-ttl主节点在没有从节点的情况下多长时间后释放复制积压缓存区空间3600整数可以
slave-priority从节点的优先级1000-100可以
min-slaves-to-write当主节点发现从节点数量小于min-slaves-to-write且延迟小于等于min-slaves-max-lag时,master停止写入操作0整数可以
min-slaves-max-lag当主节点发现从节点数量小于min-slaves-to-write且延迟小于等于min-slaves-max-lag时,master停止写入操作10整数可以
slave-serve-stale-data当从节点与主节点连接中断时,如果此参数值设置为"yes",从节点可以继续处理客户端的请求。否则除info和slaveof命令之外,拒绝的所有请求并统一回复"SYNC with master in process"yesyes|no可以
slave-read-only从节点是否开启只读模式,集群架构下从节点默认读写都不可用,需要调用readonly命令开启只读模式yesyes|no可以
repl-disble-tcp-nodelay是否开启主从复制socket的NO_DELAY选项:
yes:Redis会合并小的TCP包来节省带宽,但是这样增加同步延迟,造成主从数据不一致
no:主节点会立即发送同步数据,没有延迟
noyes|no可以
repl-diskless-sync是否开启无盘复制noyes|no可以
repl-diskless-sync-delay开启无盘复制后,需要延迟多少秒后进行创建RDB操作,一般用于同时加入多个从节点时,保证多个从节点可共享RDB5整数可以

8)Redis客户端的相关配置

配置名含义默认值可选值可否支持config set配置热生效
maxclients最大客户端连接数10000整数可以
client-output-buffer-limit客户端输出缓冲区限制normal 0 0 0 slave 268435456 67108864 60 pubsub 33554432 8388608 60整数可以
timeout客户端闲置多少秒后关闭连接(单位:秒)0(永不关闭)整数可以
tcp-keepalive检测TCP连接活性的周期(单位:秒)0(不检测)整数可以

9)Redis安全的相关配置

配置名含义默认值可选值可否支持config set配置热生效
requirepass密码自定义可以
bind绑定IP自定义不可以
masterauth从节点需要配置的主节点密码主节点的密码可以

3、Sentinel配置说明和分析

1)Sentinel节点是特殊的Redis节点,有几个特殊的配置

Redis Sentinel节点配置说明

参数名含义默认值可选值可否支持sentinel set配置热生效
sentinel monitor 定义监控的主节点名、ip、port、主观下线票数sentinel monitor mymaster 127.0.0.1 6379 2自定义masterName、实际的ip:port、票数支持
sentinel down-after-milliseconds Sentinel判定节点不可达的毫秒数sentinel down-after-milliseconds mymaster 30000整数支持
sentinel parallel-sync 在执行故障转移时,最多有多少个从服务器同时对新的主服务器进行同步sentinel parallel-sync mymaster 1大于0,不超过从服务器个数支持
sentinel failover-timeout 故障迁移超时时间sentinel failover-timeout mymaster 180000整数支持
sentinel auth-pass 主节点密码主节点密码支持
sentinel notification-script 故障转移期间脚本通知脚本文件路径支持
sentinel client-reconfig-script 故障转移成功后脚本通知脚本文件路径支持

4、Cluster配置说明和分析

1)Cluster节点是特殊的Redis节点,有几个特殊的配置

Redis Cluster配置说明

参数名含义默认值可选值可否支持config set配置热生效
cluster-node-timeout集群节点超时时间(单位:毫秒)15000整数可以
cluster-migration-barrier主从节点切换需要的从节点数最小个数1整数可以
cluster-slave-validity-factor从节点有效性判断因子,当从节点与主节点最后通行时间超过(cluster-node-timeout*slave-validity-factor)+repl-ping-slave-period时,对应从节点不具备故障转移资格,防止断线时间过长的从节点进行故障转移。设置为0标叔从节点永不过期。10整数可以
cluster-require-full-converage集群是否需要所有的slot都分配给在线节点,才能正常访问yesyes|no可以
cluster-enabled是否开启集群模式yesyes|no不可以
cluster-config-file集群配置文件名称node.confnodes-{port}.conf不可以
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值