Redis CPU使用率过高问题的排查

本文介绍当Redis服务器CPU使用率异常升高时的排查方法,通过使用info、monitor及slowlog等命令来定位问题根源,特别是频繁调用keys命令所带来的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Redis CPU占用过高会导致所有使用Redis的客户端性能大幅下降,可能的原因中其中一个是大量的请求,尤其是keys命令请求过多,查询流程:

1. 使用info和monitor命令(这两个命令也可以登录之后使用,不过有可能造成client的crash)

redis-cli -h 192.168.1.xx  -a 'xxx' info 

redis-cli -h 192.168.1.xx  -a 'xxx' monitor 

info命令会显示当前的状态,monitor会显示当前的客户端的命令请求;

2. 使用慢查询 

redis-cli -h 192.168.1.xx  -a 'xxx' slowlog get (reset替换get清空旧的log)

这个命令会显示出最近一段时间内的耗时较久的查询。


这几个命令综合起来,基本可以找到是哪些命令频繁调用造成系统繁忙。

一般来说,都是大量调用keys命令并使用通配符造成的。

我们业务目前使用的是阿里云的云资源,关于云资源我配置了如下告警规则,请根据我的告警规则帮我设计一套基于规则的故障检测联合规则 ES-宕机【紧急】 ES-磁盘使用率 ES-内存使用率 ES-节点CPU使用率 ES-集群不健康 ES load kafka-消息堆积 kafka-消息生产量 kafka-消费量 kafka-磁盘使用率 mongodb-磁盘使用率 mongodb-内存使用率 mongodb-CPU使用率 mongodb-连接数 mongodb-实例重启 mysql-数据库宕机【紧急】 mysql-磁盘使用率 mysql-内存使用率【紧急】 mysql-数据库CPU使用率于70% mysql-IOPS使用率 mysql-连接池使用率 mysql-行锁时间长 mysql-慢查询过多 mysql-拒绝连接数 prometheus宕机 redis-内存使用率 redis-CPU使用率【紧急】 redis-实例发生重启 redis-连接率 redis-redis_averager_duration_high redis - 分片CPU使用率 redis BPS持续【紧急】 线程池活跃线程数 线程池队列占用率 node-宕机【紧急】 node-节点CPU使用率 node-节点inode使用率 node-节点内存使用率 node-节点磁盘使用率 节点池CPU request过 节点池CPU request100%【紧急】 节点池CPU Limit于150% node-节点CPU iowait使用率 node-cat-节点内存使用率 核心EIP 流入带宽超150MB node 节点starcharge-prod 命名空间下pod超过11个 node 节点starcharge-prod 命名空间下L0应用超过6个 node-新加坡nginx节点CPU使用率 coredns 解析超时 Kafka Broker 异常
04-01
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值