1. 背景
在某次运维发现线上的kafka server集群的默认配置的size太小,不能满足业务发送数据的要求,导致业务阻塞,于是,更改了kafka server的某项参数的size大小之后,并重启了线上kafka server集群。
在重启集群之后,线上实时业务消费kafka topic的消费者开始报错,在消费端的错误信息为:
- 消费方的error错误信息为:
"Container exception":
org.apache.kafka.common.errors.TimeoutException: Timeout of 6000ms expected expired before successfully committing offsets{orders-5=OffsetAndMetadata{offset=197572354, leaderEpoch=null, metadata=''}}
- 查看error错误信息的上下文,发现有相应的warn日志:
[Consumer clientId=consumer-25, groupId=orderconsumer-my-consumer] Offset commit failed on partition order-3 at offset 197449610: The coordinator is loading and hence can't process requests.
- 另外 kafka server在重启的过程中也打印了相应的启动的日志,大致是__consumer_offset这个topic正在loading相关的数据。
输出日志信息待补充
2. 业务处理
在kafka server 集群重启后,业务这边消费端的偏移量无法提交,并不断报上述的

本文详细介绍了在kafka集群重启后,由于__consumer_offsets topic数据量过大导致的问题,分析了问题原因,包括配置错误和消费提交偏移量过多。提出了设置过期策略和查看日志信息的方法,并提供了优化方案,如调整清理策略和应用代码优化,成功将数据量从900G降至2G。
最低0.47元/天 解锁文章
9108

被折叠的 条评论
为什么被折叠?



