python消费kafka逻辑处理导致cpu升高_大数据技术之一次KAFKA消费者异常引起的思考...

本文分析了一次由于Kafka consumer group信息存储问题导致的CPU升高现象。当broker参数offsets.topic.replication.factor设置错误为1时,broker关闭将影响consumer group的可用性。故障解决涉及手动扩展副本数并理解Kafka的failover机制。文中还探讨了Kafka在Broker宕机时的数据同步和重选举过程,以及如何避免类似问题。
摘要由CSDN通过智能技术生成

本篇教程探讨了大数据技术之一次KAFKA消费者异常引起的思考,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

问题描述:

线上出现一台服务器特别慢,于是关闭了服务器上的kafka broker. 关闭后发现一些kafka consumer无法正常消费数据了, 日志错误:

o.a.kakfa.clients.consumer.internals.AbstractCordinator  Marking the coordinator (39.0.2.100) as dead.

原因:

经过一番排查,发现consumer group信息:

(kafka.coordinator.GroupMetadataMessageFormatter类型):

groupId::[groupId,Some(consumer),groupState,Map(memberId -> [memberId,clientId,clientHost,sessionTimeoutMs], ...->[]...)],

存到了KAFKA内部topic: __consumer_offsets里, , 它的key是 groupId.

同时发现broker 参数 offsets.topic.replication.factor 错误地被设置为1. 这个参数表示TOPIC: __Consumer_offsets 的副本数.  这样一旦某个broker被关闭, 如果被关闭的Broker 是__Consumer_offsets的某些partition的Leader. 则导致某些consumer group 不可用. 如果一旦broker已经启动, 需要手工通过命令行来扩展副本数.reassignment.json:{"version":1, "pa

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值