典型问题
核心中间件服务异常
核心中间件服务异常
典型问题 / 典型问题/性能/核心中间件服务异常.md
核心中间件服务异常
典型现象/特征
- 大面积服务报错,错误信息中包含
redis、kafka 关键字,或出现消息发送失败等现象 - 消息队列相关功能异常,例如消息通知失败、公文意见大面积丢失等
排查确认步骤
- 1.应先确认影响范围,是单个服务异常还是多个服务同时异常;
- 2.如果多个服务在同一时段同时异常,应优先怀疑公共依赖的 Redis、Kafka 等核心中间件。
- 3.随后查看应用日志,Redis 重点关注
Connection refused、RedisConnectionException、timeout、OOM command not allowed、NOAUTH 等关键字,Kafka 重点关注消息发送失败、TimeoutException、Broker not available、LEADER_NOT_AVAILABLE、No space left on device 等异常信息。 - 4.之后登录 Redis 或 Kafka 所在服务器,检查进程、内存、磁盘、CPU 等资源状态,确认服务进程是否存在、内存是否打满、磁盘是否写满,必要时检查 CPU 和 IO 是否异常。
- 5.接着进行中间件服务可用性验证,Redis 可使用
redis-cli 执行 ping、info memory、info clients 等命令,Kafka 可通过 kafka-topics.sh、kafka-consumer-groups.sh 等命令确认 Broker、Topic、Consumer Group 状态。 - 6.如果中间件服务器本机执行正常,但应用侧仍然连接失败,还需要从相关 Pod 或业务服务所在节点检查网络连通性,确认服务地址、端口、防火墙、安全组、K8S Service 与 DNS 解析是否正常。
- 7.最后结合 Redis 或 Kafka 自身日志,进一步分析中间件异常根因。
分析工具
- 一键采集工具
- 一键巡检工具
- 系统监控查看说明 中的
服务器监控部分 - 系统日志查看指引
- 优先恢复异常中间件服务,确保 Redis、Kafka 先恢复可用;
- 在服务恢复后,再结合现场日志、资源状态和网络情况追踪根因,避免问题重复发生。