背景
最近, 我们有个接口不再走 redis. 然而, 我们在监控看板上看到 redis 的 qps 仍然很高, 达到 130k.
目标
需要排查 redis qps 虚高的原因, 到底在执行哪些命令
行动
监控看板上提取最近 8000 条命令,看到 35% 的命令都是 ping
命令, 猜想是客户端连接为了判断存活状态而发出的命令.
查看项目的 redison 配置, 发现是每个连接 1s 发出一次 ping
命令, 其实很频繁了.
对比最近 redisson 的版本更新, 配置的是 30s
解决
客户端配置不合理, 发出大量 ping
命令导致
调整的 redisson 的 pingConnectionInterval
参数改为 30000 后, redis 的 qps 即有明显降低