redis info命令中各个参数的含义

来源:互联网 发布:淘宝加拿大运费 编辑:程序博客网 时间:2024/05/18 00:56

redis 127.0.0.1:6381> info


redis_version:2.4.16                                  # Redis 的版本
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:64
multiplexing_api:epoll
gcc_version:4.1.2                                         #gcc版本号
process_id:10629                                        # 当前 Redis 服务器进程id
uptime_in_seconds:145830                      # 运行时间(秒)
uptime_in_days:1                                        # 运行时间(天)
lru_clock:947459                                        
used_cpu_sys:0.02
used_cpu_user:0.02
used_cpu_sys_children:0.00
used_cpu_user_children:0.00
connected_clients:1                                  # 连接的客户端数量
connected_slaves:0                                  # slave的数量
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
used_memory:832784                               # Redis 分配的内存总量
used_memory_human:813.27K
used_memory_rss:1896448                     # Redis 分配的内存总量(包括内存碎片)
used_memory_peak:832760                
used_memory_peak_human:813.24K    #Redis所用内存的高峰值
mem_fragmentation_ratio:2.28                 # 内存碎片比率
mem_allocator:jemalloc-3.0.0                 

loading:0
aof_enabled:0                                                  #redis是否开启了aof
changes_since_last_save:0                         # 上次保存数据库之后,执行命令的次数
bgsave_in_progress:0                                   # 后台进行中的 save 操作的数量
last_save_time:1351506041                        # 最后一次成功保存的时间点,以 UNIX 时间戳格式显示
bgrewriteaof_in_progress:0                         # 后台进行中的 aof 文件修改操作的数量
total_connections_received:1                      # 运行以来连接过的客户端的总数量
total_commands_processed:1                    # 运行以来执行过的命令的总数量
expired_keys:0                                                # 运行以来过期的 key 的数量
evicted_keys:0                                                #运行以来删除过的key的数量
keyspace_hits:0                                            # 命中 key 的次数
keyspace_misses:0                                     # 不命中 key 的次数
pubsub_channels:0                                     # 当前使用中的频道数量
pubsub_patterns:0                                      # 当前使用的模式的数量
latest_fork_usec:0                                      
vm_enabled:0                                                # 是否开启了 vm (1开启  0不开启)
role:master                                                     #当前实例的角色master还是slave
db0:keys=183,expires=0                             # 各个数据库的 key 的数量,以及带有生存期的 key 的数量   



Redis介绍

Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表、哈希、集合和有序集合5种。支持在服务器端计算集合的并、交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务器。Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为“全持久化模式”)。

Redis监控

首先判断客户端和服务器连接是否正常

1
2
3
4
5
6
7
# 客户端和服务器连接正常,返回PONG
redis> PING
PONG
 
# 客户端和服务器连接不正常(网络不正常或服务器未能正常运行),返回连接异常
redis 127.0.0.1:6379> PING
Could not connect to Redis at 127.0.0.1:6379: Connection refused

Redis 监控最直接的方法就是使用系统提供的 info 命令,只需要执行下面一条命令,就能获得 Redis 系统的状态报告。

1
redis-cli info

结果会返回 Server、Clients、Memory、Persistence、Stats、Replication、CPU、Keyspace 8个部分。从info大返回结果中提取相关信息,就可以达到有效监控的目的。

先解释下各个参数含义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# Server
redis_version:2.8.8                     # Redis 的版本
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:bf5d1747be5380f
redis_mode:standalone
os:Linux 2.6.32-220.7.1.el6.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:4.4.7                       #gcc版本
process_id:49324                        # 当前 Redis 服务器进程id
run_id:bbd7b17efcf108fdde285d8987e50392f6a38f48
tcp_port:6379
uptime_in_seconds:1739082               # 运行时间(秒)
uptime_in_days:20                       # 运行时间(天)
hz:10
lru_clock:1734729
config_file:/home/s/apps/RedisMulti_video_so/conf/zzz.conf
 
# Clients
connected_clients:1                     #连接的客户端数量
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
 
# Memory
used_memory:821848                       #Redis分配的内存总量             
used_memory_human:802.59K
used_memory_rss:85532672                 #Redis分配的内存总量(包括内存碎片)
used_memory_peak:178987632
used_memory_peak_human:170.70M           #Redis所用内存的高峰值
used_memory_lua:33792
mem_fragmentation_ratio:104.07           #内存碎片比率
mem_allocator:tcmalloc-2.0
 
# Persistence
loading:0
rdb_changes_since_last_save:0            #上次保存数据库之后,执行命令的次数
rdb_bgsave_in_progress:0                 #后台进行中的 save 操作的数量
rdb_last_save_time:1410848505            #最后一次成功保存的时间点,以 UNIX 时间戳格式显示
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
rdb_current_bgsave_time_sec:-1
aof_enabled:0                            #redis是否开启了aof
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:5705          #运行以来连接过的客户端的总数量
total_commands_processed:204013          # 运行以来执行过的命令的总数量
instantaneous_ops_per_sec:0
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:34401                       #运行以来过期的 key 的数量
evicted_keys:0                           #运行以来删除过的key的数量
keyspace_hits:2129                       #命中key 的次数
keyspace_misses:3148                     #没命中key 的次数
pubsub_channels:0                        #当前使用中的频道数量
pubsub_patterns:0                        #当前使用中的模式数量
latest_fork_usec:4391
 
# Replication
role:master                              #当前实例的角色master还是slave
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:1551.61
used_cpu_user:1083.37
used_cpu_sys_children:2.52
used_cpu_user_children:16.79
 
# Keyspace
db0:keys=3,expires=0,avg_ttl=0             #各个数据库的 key 的数量,以及带有生存期的 key 的数量

内存使用

如果 Redis 使用的内存超出了可用的物理内存大小,那么 Redis 很可能系统会被杀掉。针对这一点,你可以通过 info 命令对 used_memory 和 used_memory_peak 进行监控,为使用内存量设定阀值,并设定相应的报警机制。当然,报警只是手段,重要的是你得预先计划好,当内存使用量过大后,你应该做些什么,是清除一些没用的冷数据,还是把 Redis 迁移到更强大的机器上去。

持久化

如果因为你的机器或 Redis 本身的问题导致 Redis 崩溃了,那么你唯一的救命稻草可能就是 dump 出来的rdb文件了,所以,对 Redis dump 文件进行监控也是很重要的。可以通过对rdb_last_save_time 进行监控,了解最近一次 dump 数据操作的时间,还可以通过对rdb_changes_since_last_save进行监控来获得如果这时候出现故障,会丢失(即已改变)多少数据。

Keys

通过获取Keyspace中的结果得到各个数据库中key的数量

QPS

即每分钟执行的命令个数,即:(total_commands_processed2-total_commands_processed1)/span,为了实时得到QPS,可以设定脚本在后台运行,记录过去几分钟的total_commands_processed。在计算QPS时,利用过去的信息和当前的信息得出QPS的估计值。


阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 车险该买哪些 买车险送东西 买车险怎么买好 车险买那个好 淘宝上买车险 网上能买车险 车险都买什么 淘宝 买车险 买车险怎样划算 网上怎么买车险 买车险怎么买 哪里买车险便宜 买车险买哪些 买车险在哪买 车险哪些必须买 买车险多少钱 自己买车险怎么买 网上怎样买车险 买车险哪里便宜 怎么买车险便宜 买车险在哪买划算 买车险一般买哪些 怎样买车险便宜 网上哪里买车险 买车险选哪家好 我要买车险 买车险哪家好又便宜 买车险怎么买合适 手机怎么买车险 网上买车险好吗 买车险计算器 必买的车险 买哪个车险 大家都买什么车险 一般买什么车险 车险一定要买吗 在哪里购买车险 卖车险 买车险 哪家好 购车保险 保险公司那家好