当前位置: 首页 > news >正文

Kafka消费者消费失败问题的深度解码与治理实践

一、背景

kafka消息总量10亿/天,每分钟生成70万条消息,生成环境部署了12个服务,消费2个Topic,每个Topic部署12个分区

二、现象问题

  • 消费者方面

1、单个服务,同时消费2个不同Topic的2个分区,一个分区消费正常,一个分区停止消费,异常分区的Lag出现积压,出现异常没有时间规律。

2、消费者的配置参数,如下图

  • kafka服务器方面

1、查询消费组状态,发现Topic的分区4发生积压

2、在此期间,kafka、zk的集群状态正常,服务端日志无相关报错信息

3、积压恢复后相关日志排查,发现消费者ID(consumer-3-5b6d2a-6989-377409)在过程中无法继续发送心跳,被判断为消费者已经下线,从该消费组中移除。如果消费者下线一段时间后,在这期间没有其他消费者从该分区中消费消息,那Lag将发生积压。

三、排查思路和过程

1、查看资料,消费者配置参数(max.poll.interval.ms)设置为10分钟,此参数的作用定义了消费者处理单个调用poll()方法的最大时间,如果在此时间内未调用poll(),则kafka服务器会认为消费者已经死亡,并将其标记为离线,同时触发rebalance,将分区进行重新分配,但是实际情况是kakfa服务器没有出发rebalance,造成分区没有被其他正常消费者继续消费,最终导致分区消息积压。

四、分析总结

1、经过不断尝试验证,以及出问题前后时间节点上,各个方面的调整分析,最后初步判断是kafka服务器版本升级后,不兼容springboot kafka clietn版本导致,于是升级将spring-kafka从2.3.7升级到2.4.1,同时建kafka-clients升级到2.4.1,问题解决。

http://www.cnnetsun.cn/news/87333.html

相关文章:

  • LobeChat能否用于撰写简历?求职材料优化助手
  • OpenSpec认证的TensorRT容器安全性检测报告
  • Qwen3-VL-8B与OCR结合实现智能图文理解
  • Wan2.2-T2V-A14B本地部署:从环境配置到多GPU推理
  • Kotaemon:开源RAG框架的混合检索突破
  • GPU算力平台部署Linly-Talker数字人教程
  • 全球USB设备厂商ID与产品型号大全
  • Qwen3-14B如何避免输出截断?关键在max_new_tokens设置
  • 16倍压缩+双专家架构重塑视频生成效率
  • 主机监控指标解析—内存篇
  • Keepalived详解:安装与高可用集群配置
  • LangChain与AutoGPT:AI工作流引擎深度对比
  • Excalidraw代码贡献指南:如何参与开源社区开发
  • LangChain-Chatchat本地部署与配置指南
  • shared_ptr 快照用于安全地并发读取,无需拷贝
  • 官方适配完的命令行ruby在鸿蒙PC上的使用方法
  • LobeChat能否接收语音指令?全双工对话体验
  • LangFlow快速入门:可视化构建AI应用
  • Langflow本地部署:隔离环境安装指南
  • 云端算力的进化:云服务器架构演进的三重范式变革
  • 解决facefusion报错No source face detected
  • PaddleOCR中英文文字识别实战与优化指南
  • LobeChat剪贴板交互优化:复制粘贴操作更加流畅自然
  • YOLOv5详解:高效目标检测模型实战指南
  • Windows下PaddleOCR GPU版环境搭建指南
  • “开盒神器”威胁下的自保手册:七招应对超级 Agent 的实时入侵
  • EBS后台查询人员职责信息
  • Qwen3-8B-AWQ性能优化与最佳实践
  • LLaMA-Factory 微调 DeepSeek-R1 模型实战指南
  • Langflow自定义组件开发与界面集成详解