主页 > 知识库 > 关于redis状态监控和性能调优详解

关于redis状态监控和性能调优详解

热门标签:AI电销 地方门户网站 网站排名优化 呼叫中心市场需求 百度竞价排名 铁路电话系统 服务外包 Linux服务器

前言

对于任何应用服务和组件,都需要一套完善可靠谱监控方案。

尤其redis这类敏感的纯内存、高并发和低延时的服务,一套完善的监控告警方案,是精细化运营的前提。

本文主要给大家介绍了关于redis状态监控和性能调优的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

1、redis-benchmark

redis基准信息,redis服务器性能检测

例如:

检测redis服务器性能,本机6379端口的实例,100个并发连接,100000个请求

redis-benchmark -h localhost -p 6379 -c 100 -n 100000 
[root@redis-server ~]# redis-benchmark -h localhost -p 6379 -c 100 -n 100000 
====== PING_INLINE ======
requests completed in 1.29 seconds
parallel clients
bytes payload
 keep alive: 1

81.97% = 1 milliseconds
97.69% = 2 milliseconds
99.79% = 3 milliseconds
99.94% = 4 milliseconds
99.97% = 5 milliseconds
100.00% = 5 milliseconds
77639.75 requests per second

====== PING_BULK ======
requests completed in 1.49 seconds
parallel clients
bytes payload
 keep alive: 1

73.04% = 1 milliseconds
97.46% = 2 milliseconds
99.62% = 3 milliseconds
99.97% = 4 milliseconds
100.00% = 5 milliseconds
100.00% = 5 milliseconds
67204.30 requests per second

====== SET ======
requests completed in 1.30 seconds
parallel clients
bytes payload
 keep alive: 1

81.09% = 1 milliseconds
97.16% = 2 milliseconds
99.43% = 3 milliseconds
99.75% = 4 milliseconds
99.80% = 5 milliseconds
99.82% = 7 milliseconds
99.83% = 8 milliseconds
99.85% = 9 milliseconds
99.87% = 10 milliseconds
99.89% = 11 milliseconds
99.89% = 12 milliseconds
99.90% = 13 milliseconds
99.90% = 14 milliseconds
99.90% = 15 milliseconds
99.91% = 16 milliseconds
99.93% = 17 milliseconds
99.94% = 18 milliseconds
99.95% = 19 milliseconds
99.96% = 20 milliseconds
99.98% = 21 milliseconds
99.99% = 22 milliseconds
100.00% = 23 milliseconds
100.00% = 23 milliseconds
76687.12 requests per second

====== GET ======
requests completed in 1.91 seconds
parallel clients
bytes payload
 keep alive: 1

49.74% = 1 milliseconds
93.92% = 2 milliseconds
99.37% = 3 milliseconds
99.95% = 4 milliseconds
99.97% = 5 milliseconds
99.98% = 6 milliseconds
100.00% = 6 milliseconds
52273.91 requests per second

====== INCR ======
requests completed in 1.60 seconds
parallel clients
bytes payload
 keep alive: 1

66.32% = 1 milliseconds
96.55% = 2 milliseconds
99.61% = 3 milliseconds
99.96% = 4 milliseconds
100.00% = 5 milliseconds
62344.14 requests per second

====== LPUSH ======
requests completed in 1.27 seconds
parallel clients
bytes payload
 keep alive: 1

73.84% = 1 milliseconds
95.61% = 2 milliseconds
99.36% = 3 milliseconds
99.96% = 4 milliseconds
99.99% = 5 milliseconds
100.00% = 5 milliseconds
78492.93 requests per second

====== RPUSH ======
requests completed in 1.31 seconds
parallel clients
bytes payload
 keep alive: 1

80.47% = 1 milliseconds
96.93% = 2 milliseconds
99.56% = 3 milliseconds
99.98% = 4 milliseconds
100.00% = 5 milliseconds
100.00% = 5 milliseconds
76103.50 requests per second

====== LPOP ======
requests completed in 1.30 seconds
parallel clients
bytes payload
 keep alive: 1

74.91% = 1 milliseconds
95.50% = 2 milliseconds
99.29% = 3 milliseconds
99.95% = 4 milliseconds
100.00% = 5 milliseconds
100.00% = 5 milliseconds
77101.00 requests per second

====== RPOP ======
requests completed in 1.40 seconds
parallel clients
bytes payload
 keep alive: 1

77.99% = 1 milliseconds
97.07% = 2 milliseconds
99.61% = 3 milliseconds
99.97% = 4 milliseconds
99.98% = 5 milliseconds
100.00% = 6 milliseconds
100.00% = 6 milliseconds
71377.59 requests per second

====== SADD ======
requests completed in 1.32 seconds
parallel clients
bytes payload
 keep alive: 1

80.83% = 1 milliseconds
97.14% = 2 milliseconds
99.57% = 3 milliseconds
99.95% = 4 milliseconds
100.00% = 5 milliseconds
100.00% = 5 milliseconds
75757.57 requests per second

====== HSET ======
requests completed in 1.30 seconds
parallel clients
bytes payload
 keep alive: 1

80.25% = 1 milliseconds
96.83% = 2 milliseconds
99.49% = 3 milliseconds
99.97% = 4 milliseconds
100.00% = 4 milliseconds
76923.08 requests per second

====== SPOP ======
requests completed in 1.48 seconds
parallel clients
bytes payload
 keep alive: 1

73.97% = 1 milliseconds
96.91% = 2 milliseconds
99.55% = 3 milliseconds
99.96% = 4 milliseconds
100.00% = 5 milliseconds
100.00% = 5 milliseconds
67567.57 requests per second

====== LPUSH (needed to benchmark LRANGE) ======
requests completed in 1.35 seconds
parallel clients
bytes payload
 keep alive: 1

71.03% = 1 milliseconds
95.36% = 2 milliseconds
99.29% = 3 milliseconds
99.97% = 4 milliseconds
100.00% = 5 milliseconds
100.00% = 5 milliseconds
73909.83 requests per second

====== LRANGE_100 (first 100 elements) ======
requests completed in 2.91 seconds
parallel clients
bytes payload
 keep alive: 1

14.30% = 1 milliseconds
80.30% = 2 milliseconds
94.42% = 3 milliseconds
96.88% = 4 milliseconds
98.34% = 5 milliseconds
99.39% = 6 milliseconds
99.78% = 7 milliseconds
99.93% = 8 milliseconds
99.97% = 9 milliseconds
99.98% = 10 milliseconds
100.00% = 11 milliseconds
100.00% = 11 milliseconds
34317.09 requests per second

====== LRANGE_300 (first 300 elements) ======
requests completed in 5.88 seconds
parallel clients
bytes payload
 keep alive: 1

0.00% = 2 milliseconds
85.83% = 3 milliseconds
94.17% = 4 milliseconds
96.10% = 5 milliseconds
97.90% = 6 milliseconds
98.68% = 7 milliseconds
98.70% = 8 milliseconds
99.30% = 9 milliseconds
99.49% = 10 milliseconds
99.76% = 11 milliseconds
99.79% = 12 milliseconds
99.83% = 13 milliseconds
99.85% = 14 milliseconds
99.87% = 15 milliseconds
99.89% = 16 milliseconds
99.91% = 17 milliseconds
99.92% = 19 milliseconds
99.93% = 20 milliseconds
99.94% = 21 milliseconds
99.95% = 22 milliseconds
99.96% = 23 milliseconds
99.97% = 24 milliseconds
99.99% = 25 milliseconds
99.99% = 26 milliseconds
100.00% = 27 milliseconds
17006.80 requests per second

====== LRANGE_500 (first 450 elements) ======
requests completed in 8.16 seconds
parallel clients
bytes payload
 keep alive: 1

0.00% = 2 milliseconds
0.01% = 3 milliseconds
80.98% = 4 milliseconds
90.89% = 5 milliseconds
95.60% = 6 milliseconds
97.20% = 7 milliseconds
98.23% = 8 milliseconds
98.53% = 9 milliseconds
99.06% = 10 milliseconds
99.09% = 11 milliseconds
99.46% = 12 milliseconds
99.53% = 13 milliseconds
99.65% = 14 milliseconds
99.75% = 15 milliseconds
99.79% = 16 milliseconds
99.81% = 17 milliseconds
99.82% = 18 milliseconds
99.84% = 19 milliseconds
99.85% = 20 milliseconds
99.86% = 21 milliseconds
99.87% = 22 milliseconds
99.88% = 23 milliseconds
99.89% = 24 milliseconds
99.90% = 25 milliseconds
99.91% = 26 milliseconds
99.93% = 27 milliseconds
99.93% = 28 milliseconds
99.94% = 29 milliseconds
99.95% = 30 milliseconds
99.96% = 31 milliseconds
99.98% = 32 milliseconds
99.98% = 33 milliseconds
99.99% = 34 milliseconds
99.99% = 35 milliseconds
100.00% = 36 milliseconds
100.00% = 36 milliseconds
12260.91 requests per second

====== LRANGE_600 (first 600 elements) ======
requests completed in 10.15 seconds
parallel clients
bytes payload
 keep alive: 1

0.00% = 3 milliseconds
0.01% = 4 milliseconds
84.84% = 5 milliseconds
93.41% = 6 milliseconds
96.43% = 7 milliseconds
97.71% = 8 milliseconds
97.75% = 9 milliseconds
98.32% = 10 milliseconds
98.79% = 11 milliseconds
99.19% = 12 milliseconds
99.22% = 13 milliseconds
99.25% = 14 milliseconds
99.48% = 15 milliseconds
99.56% = 16 milliseconds
99.60% = 17 milliseconds
99.68% = 18 milliseconds
99.74% = 19 milliseconds
99.77% = 20 milliseconds
99.79% = 21 milliseconds
99.82% = 22 milliseconds
99.83% = 23 milliseconds
99.85% = 24 milliseconds
99.86% = 25 milliseconds
99.86% = 26 milliseconds
99.87% = 27 milliseconds
99.88% = 28 milliseconds
99.89% = 29 milliseconds
99.90% = 30 milliseconds
99.90% = 31 milliseconds
99.91% = 32 milliseconds
99.91% = 33 milliseconds
99.92% = 34 milliseconds
99.94% = 35 milliseconds
99.95% = 36 milliseconds
99.95% = 37 milliseconds
99.96% = 38 milliseconds
99.96% = 39 milliseconds
99.96% = 40 milliseconds
99.97% = 41 milliseconds
99.98% = 42 milliseconds
99.98% = 43 milliseconds
99.99% = 44 milliseconds
99.99% = 45 milliseconds
99.99% = 46 milliseconds
100.00% = 47 milliseconds
100.00% = 47 milliseconds
9851.25 requests per second

====== MSET (10 keys) ======
requests completed in 1.89 seconds
parallel clients
bytes payload
 keep alive: 1

0.00% = 1 milliseconds
75.00% = 2 milliseconds
89.85% = 3 milliseconds
95.38% = 4 milliseconds
98.52% = 5 milliseconds
99.34% = 6 milliseconds
99.60% = 7 milliseconds
99.83% = 8 milliseconds
99.98% = 9 milliseconds
100.00% = 9 milliseconds
52994.17 requests per second


[root@redis-server ~]#

2、redis-cli

例1:监控本机6379端口的实例的数据操作,redis的连接及读写操作

redis-cli -h localhost -p 6379 monitor 

先开启一个终端1,用于redis监控

[root@redis-server ~]# redis-cli -h localhost -p 6379 monitor 
OK
1504689350.635365 [0 127.0.0.1:57996] "COMMAND"
1504689361.944610 [0 127.0.0.1:57996] "set" "a" "1"
1504689369.782029 [0 127.0.0.1:57996] "get" "a"

然后在开启一个redis终端2进行操作

[root@redis-server ~]# redis-cli -p 6379
127.0.0.1:6380> set a 1
OK
127.0.0.1:6380> get a 
"1"
127.0.0.1:6380>

可以看到终端2上面进行的数据操作会在终端1上面被记录下来

例2:查询本机redis实例的信息,端口6379

redis-cli -h localhost -p 6379 info 

备注:该命令也可以在redis终端里面进行查询

[root@redis-server ~]# redis-cli -h localhost -p 6379 info 
# Server
redis_version:3.2.10
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:eae5a0b8746eb6ce
redis_mode:standalone
os:Linux 2.6.32-431.el6.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:4.4.7
process_id:6003
run_id:0057d03b2e908ee036c2aa1c3531e8aa051d7468
tcp_port:6379
uptime_in_seconds:159221
uptime_in_days:1
hz:10
lru_clock:11517636
executable:/usr/local/redis/bin/redis-server
config_file:/usr/local/redis/conf/redis.conf

# Clients
connected_clients:1
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0

# Memory
used_memory:1828104
used_memory_human:1.74M
used_memory_rss:4050944
used_memory_rss_human:3.86M
used_memory_peak:8439360
used_memory_peak_human:8.05M
total_system_memory:1960443904
total_system_memory_human:1.83G
used_memory_lua:37888
used_memory_lua_human:37.00K
maxmemory:0
maxmemory_human:0B
maxmemory_policy:noeviction
mem_fragmentation_ratio:2.22
mem_allocator:jemalloc-4.0.3

# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1504689256
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
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:3603
total_commands_processed:3600007
instantaneous_ops_per_sec:0
total_net_input_bytes:192800186
total_net_output_bytes:2634476722
instantaneous_input_kbps:0.00
instantaneous_output_kbps:0.00
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
evicted_keys:0
keyspace_hits:1000003
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:408
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:99.45
used_cpu_user:108.88
used_cpu_sys_children:0.01
used_cpu_user_children:0.01

# Cluster
cluster_enabled:0

# Keyspace
db0:keys=7,expires=0,avg_ttl=0
[root@redis-server ~]#

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

您可能感兴趣的文章:
  • 深入了解Redis的性能
  • Redis性能大幅提升之Batch批量读写详解
  • asp.net性能优化之使用Redis缓存(入门)

标签:崇左 仙桃 铜川 湘潭 衡水 湖南 黄山 兰州

巨人网络通讯声明:本文标题《关于redis状态监控和性能调优详解》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266