redis的服务器实用监控命令-运维必备

redis的服务器实用监控命令-运维必备

巴适小编
2024-03-25 / 0 评论 / 49 阅读 / 正在检测是否收录...

前言:Redis已经成为web应用开发不可或缺的一个组成部分,成为了很多系统重要的组成部分。本文介绍一些的redis运维技巧,欢迎阅读

1.redis-benchmark
模拟 N 个客户端同时发出 Y 个请求。可以使用 redis-benchmark -h 来查看基准参数。

redis-benchmark [-h ] [-p ] [-c ] [-n <requests]> [-k ]

Test
例1:同时执行1000个请求来检测性能:

redis-benchmark -n 1000 -q

例2:50个并发请求,10000个请求,检测Redis性能

redis-benchmark -h localhost -p 6379 -c 50 -n 10000

2.redis-cli 查看redis的连接及读写操作
例1:

redis-cli -h 127.0.0.1 -p 6379 monitor 

查看redis的连接及读写操作

例2:redis-cli info

Redis 监控最直接的方法就是使用系统提供的 info 命令,只需要执行下面一条命令,就能获得 Redis 系统的状态报告。
结果会返回 Server、Clients、Memory、Persistence、Stats、Replication、CPU、Keyspace 8个部分。从info大返回结果中提取相关信息,就可以达到有效监控的目的。

3.showlog redis的slowlog是redis用于记录记录慢查询执行时间的日志系统。由于slowlog只保存在内存中,因此slowlog的效率很高,完全不用担心会影响到redis的性能。Slowlog是Redis从2.2.12版本引入的一条命令。

命令格式

在redis-cli中有关于slowlog的设置:

CONFIG SET slowlog-log-slower-than 6000

CONFIG SET slowlog-max-len 25

4.RedisLive 是由Python编写的开源的图形化监控工具。核心服务部分只包括一个web服务和基于Redis自带的Info命令以及monitor命令的监控服务。支持多实例监控,监控信息可以使用redis存储和sqlite持久化存储
安装依赖环境:RedisLive是由Python2.X编写的,所以最好使用Python2.7来运行RedisLive,在CentOS 7中预安装了Python2.7,但没有安装Python的包管理器pip。

yum install epel-release
sudo yum install python-pip
pip install --upgrade pip
pip install tornado
pip install redis
pip install python-dateutil
安装RedisLive

git clone https://github.com/nkrode/RedisLive.git

修改配置文件redis-live.conf

cd RedisLive/src

//按照以下方式修改配置文件
{

"RedisServers":        
[ 
    #在此处添加需要监控的redis实例
    {
          "server": "127.0.0.1",                #redis监听地址,此处为本机
          "port" : 6379,                        #redis端口号,可以通过lsof -i | grep redis-ser查看 redis-server端口号
          "password" : "some-password"          #redis认证密码,如果没有可以删除该行,注意json格式
    }        
],

"DataStoreType" : "redis",        #监控数据存储方案的配置,可选择redis或sqllite
#用来存储监控数据的 Redis 实例
"RedisStatsServer":    
{
    "server" : "127.0.0.1",
    "port" : 6379,
    "password" : "some-password"
},
#监控数据持久化数据存储配置
"SqliteStatsStore" :
{
    "path":  "db/redislive.sqlite"    #redis数据文件
}

}
redis-live.conf的配置可以参考redis-live.conf.example

启动监控服务,每60秒监控一次

./redis-monitor.py --duration=60

再次开启一个终端,进入/root/RedisLive/src目录,启动web服务

./redis-live.py

5.redis-faina 是通过Redis的 MONITOR命令来实现的,通过对在Redis上执行的query进行监控,统计出一段时间的query特性。
其中--prefix-delimiter主要用于统计前缀的key的数据。

可以通过redis MONITOR命令以及管道进行分析,例如:

redis-cli -p 6379 MONITOR | head -n | ./redis-faina.py [options]

或者

redis-cli -p 6379 MONITOR > outfile.txt

./redis-faina.py ./outfile.txt

结束,喜欢本文的朋友请点击收藏哟

0

评论 (0)

取消