先在监控平台对齐告警前后 10 分钟,再按需执行。下面的命令用于回答决策树问题,不用于“碰运气”。
SLOWLOG · 找长耗时命令
redis-cli -h <host> -p <port> SLOWLOG GET 32
先用 SLOWLOG LEN 看数量,再取少量样本。慢日志只统计命令执行时间,不包含排队和网络等待。
LATENCY · 找服务端尖峰
redis-cli -h <host> -p <port> LATENCY DOCTOR
redis-cli -h <host> -p <port> LATENCY LATEST
确认是否出现 fork、AOF fsync、命令或过期淘汰造成的延迟事件;前提是实例开启延迟监控阈值。
INFO · 命令与客户端
redis-cli -h <host> -p <port> INFO commandstats
redis-cli -h <host> -p <port> INFO clients
观察命令调用量与累计耗时、连接数、阻塞客户端和输出缓冲。需要两次采样做差值,累计值本身不能说明“此刻”。
INFO · 内存与整体状态
redis-cli -h <host> -p <port> INFO memory
redis-cli -h <host> -p <port> INFO stats
重点看 used_memory、used_memory_rss、mem_fragmentation_ratio、evicted_keys、expired_keys、instantaneous_ops_per_sec 与 rejected_connections。
现场禁忌不要在线执行 MONITOR 持续抓流量;不要用 KEYS * 扫全库。它们会把“正在变慢”推向“彻底不可用”。需要抽样 key 时优先限速、限量使用 SCAN,并在低峰验证影响。