使用redis-faina解析Redis的执行命令
可以使用redis-cli的monitor命令来查看命令执行日志,但是手动分析非常困难。
使用redis-faina可以解析monitor命令的结果,并显示统计信息,这在想要确定经常执行的命令或键时很有帮助。
Redis优化
redis-faina是由Instagram的开发者创建,由Facebook发布的一款基于Python的工具,非常易于使用。
安装
$ git clone https://github.com/facebookarchive/redis-faina.git
$ cd redis-faina
执行
如果从文件中读取
$ redis-cli -p 6379 monitor | head -n 10000 > outfile.txt
$ .redis-faina.py outfile.txt
如果从标准输出中读取来的话
$ redis-cli -p 6379 monitor | head -n 10000 | .redis-faina.py outfile.txt
执行结果
Overall Stats
========================================
Lines Processed 10000
Commands/Sec 12967.49
Top Prefixes
========================================
key 2000 (20.00%)
counter 1000 (10.00%)
Top Keys
========================================
mylist 2999 (29.99%)
myset 2000 (20.00%)
key:__rand_int__ 2000 (20.00%)
counter:__rand_int__ 1000 (10.00%)
Top Commands
========================================
PING 2000 (20.00%)
LPUSH 1999 (19.99%)
INCR 1000 (10.00%)
SET 1000 (10.00%)
SADD 1000 (10.00%)
GET 1000 (10.00%)
SPOP 1000 (10.00%)
LPOP 1000 (10.00%)
Command Time (microsecs)
========================================
Median 68.0
75% 84.75
90% 116.0
99% 241.75
Heaviest Commands (microsecs)
========================================
PING 160997.25
LPUSH 152823.0
GET 83242.75
SET 80229.75
SADD 76377.0
INCR 75668.25
LPOP 71876.0
SPOP 69945.0
请参考
Redis-Faina: 一款用于Redis的查询分析工具。