典型问题 redis请求慢

redis请求慢

典型问题 / 典型问题/性能/redis请求慢.md

redis请求慢

典型现象/特征

  1. 接口响应超时
  2. 业务加载慢

排查确认步骤

  1. 1.可先根据异常现象或慢请求定位相关业务方应用,例如出现提示错误、BPM 调用 org 异常或超时等情况;
  2. 2.随后检查 K8S 中相关业务 pod 状态是否正常、是否存在异常事件,并结合监控平台确认相关业务方的内存、CPU、数据库等指标是否基本正常。
  3. 3.如果应用基础资源没有明显异常,可进一步通过 {host}/service/{appNmae}/monitor/thread-info 查看当前阻塞线程(更多可查看 系统运维接口),确认是否持续存在 Redis 相关阻塞请求,常见关键字包括 Lettucejedis 等。
  4. 4.同时查看应用错误日志,重点搜索 Lettucejedis 等关键字,确认是否存在明显的 Redis 响应慢或连接异常信息。
  5. 5.再检查 Redis 服务器是否存在波动告警,例如内存、CPU 波动,并查看 Redis slow log 中是否存在持续慢请求或大 key 操作,以进一步确认慢请求根因。
  6. 6.可配合使用现有分析工具进行慢日志排查,工具地址如下: https://pan.baidu.com/s/1kB-M7ItHunsa7OtkzHQpsA?pwd=ni9k&_at_=1778224719874

分析工具

  1. 一键采集工具
  2. jvm分析工具 中的内存信息性能分析
  3. 系统监控查看说明 中的内存GC部分
  4. 系统日志查看指引info 日志查看
  5. Redis slow log
  6. Redis 服务器资源监控
  7. 一体化运维系统 查看日志分析工具

常见应急恢复策略

  1. 建议提前开启 Redis slow log 开关,并定期下载慢日志文件到本地分析;
  2. 如果条件允许,可增加运维脚本,将慢日志持续输出到磁盘进行持久化保存,以便后续做历史分析和问题回溯。
  3. 如果为单个key操作慢,可联系研发确认是否可直接删除该redis的key进行快速修复。
  4. 如果为redis服务异常,可考虑重启或联系运维
  5. 如果为redis服务器异常,一般需要联系客户运维支持,或增加机器资源,或重启机器等(需要客户运维授权确认)