想要获得下面的redis服务器信息,只需要在命令行中输入:info
serverredis_versionredis_git_sha1redis_git_dirtyos
- redis_mode:standalone 服务器模式,单机模式(或者集群模式)
arch_bitsmultiplexing_apigcc_versionprocess_idrun_idtcp_portuptime_in_secondsuptime_in_dayslru_clock
- hz : Redis server执行后台任务的频率,默认为10,此值越大表示redis对"间歇性task"的执行次数越频繁(次数/秒)。"间歇性task"包括"过期集合"检测、关闭"空闲超时"的连接等,此值必须大于0且小于500。此值过小就意味着更多的cpu周期消耗,后台task被轮询的次数更频繁。此值过大意味着"内存敏感"性较差。建议采用默认值。
- config-file: redis 服务器配置文档路径
clientsconnected_clientsclient_longest_output_listclient_longest_input_bufblocked_clientsmemoryused_memoryused_memory_humanused_memory_rss
- : 从操作系统的角度,返回 Redis 已分配的内存总量(俗称常驻集大小)。这个值和
top
- 、
psused_memory_peakused_memory_peak_humanused_memory_luamem_fragmentation_ratio
- :
used_memory_rss
- 和
used_memorymem_allocator
used_memory_rss 的值应该只比
used_memory
rss > used
mem_fragmentation_ratio
used > rss
Because Redis does not have control over how its allocations are mapped to memory pages, high used_memory_rss
当 Redis 释放内存时,分配器可能会,也可能不会,将内存返还给操作系统。
used_memory
used_memory_peak
persistence
- 部分记录了跟
RDB
- 持久化和
AOF
-
loading -
rdb_changes_since_last_save -
rdb_bgsave_in_progress -
rdb_last_save_time -
rdb_last_bgsave_status -
rdb_last_bgsave_time_sec -
rdb_current_bgsave_time_sec -
aof_enabled -
aof_rewrite_in_progress -
aof_rewrite_scheduled -
aof_last_rewrite_time_sec -
aof_current_rewrite_time_sec -
aof_last_bgrewrite_status - aof_last_write_status : 最近写aof文件的状态
如果 AOF 持久化功能处于开启状态,那么这个部分还会加上以下域:
-
aof_current_size -
aof_base_size -
aof_pending_rewrite -
aof_buffer_length -
aof_rewrite_buffer_length -
aof_pending_bio_fsync : 后台 I/O 队列里面,等待执行的 fsync -
aof_delayed_fsync : 被延迟的 fsync
statstotal_connections_receivedtotal_commands_processedinstantaneous_ops_per_secrejected_connectionsexpired_keysevicted_keyskeyspace_hitskeyspace_missespubsub_channelspubsub_patternslatest_fork_usec
- : 最近一次
fork()replicationrole
- : 如果当前服务器没有在复制任何其他服务器,那么这个域的值就是
master
- ;否则的话,这个域的值就是
slave
如果当前服务器是一个从服务器的话,那么这个部分还会加上以下域:
-
master_host -
master_port -
master_link_status : 复制连接当前的状态, up 表示连接正常, down -
master_last_io_seconds_ago -
master_sync_in_progress
如果同步操作正在进行,那么这个部分还会加上以下域:
-
master_sync_left_bytes -
master_sync_last_io_seconds_ago
如果主从服务器之间的连接处于断线状态,那么这个部分还会加上以下域:
-
master_link_down_since_seconds
以下是一些总会出现的域:
-
connected_slaves
对于每个从服务器,都会添加以下一行信息:
-
slaveXXX
cpuused_cpu_sysused_cpu_userused_cpu_sys_childrenused_cpu_user_childrencommandstatscmdstat_XXX:calls=XXX,usec=XXX,usecpercall=XXXclustercluster_enabledkeyspacedbXXX:keys=XXX,expires=XXXsectionalldefault 当不带参数直接调用 INFO 命令时,使用 default
Note
不同版本的 Redis 可能对返回的一些域进行了增加或删减。
因此,一个健壮的客户端程序在对 INFO 命令的输出进行分析时,应该能够跳过不认识的域,并且妥善地处理丢失不见的域。
可用版本:
>= 1.0.0
时间复杂度:
O(1)
返回值:
具体请参见下面的测试代码。
redis> INFO
# Server
redis_version:2.9.11
redis_git_sha1:937384d0
redis_git_dirty:0
redis_build_id:8e9509442863f22
redis_mode:standalone
os:Linux 3.13.0-35-generic x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:4.8.2
process_id:4716
run_id:26186aac3f2380aaee9eef21cc50aecd542d97dc
tcp_port:6379
uptime_in_seconds:362
uptime_in_days:0
hz:10
lru_clock:1725349
config_file:
# Clients
connected_clients:1
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
# Memory
used_memory:508536
used_memory_human:496.62K
used_memory_rss:7974912
used_memory_peak:508536
used_memory_peak_human:496.62K
used_memory_lua:33792
mem_fragmentation_ratio:15.68
mem_allocator:jemalloc-3.2.0
# Persistence
loading:0
rdb_changes_since_last_save:6
rdb_bgsave_in_progress:0
rdb_last_save_time:1411011131
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:-1
rdb_current_bgsave_time_sec:-1
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
# Stats
total_connections_received:2
total_commands_processed:4
instantaneous_ops_per_sec:0
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
evicted_keys:0
keyspace_hits:0
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:0
migrate_cached_sockets:0
# Replication
role:master
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
# CPU
used_cpu_sys:0.21
used_cpu_user:0.17
used_cpu_sys_children:0.00
used_cpu_user_children:0.00
# Cluster
cluster_enabled:0
# Keyspace
db0:keys=2,expires=0,avg_ttl=0










