返回到文章

采纳

编辑于 2年前
m

【偶发】kafkaConsumer poll长时间阻塞,消费线程无任务异常,但是服务端消费组确已经异常退出

kafka

目前我们java应用系统有十几个消费线程(每个线程对应一个消费组),消费kafka不同的topic数据然后插入对应的数据库。但是业务方经常投诉数据同步不及时,运维过程中通过kafka命令:

./kafka-consumer-groups.sh --bootstrap-server 10.199.0.114:9001 --group xxxxxxxxx --describe --command-config ../config/consumer.properties

发现有部分消费组有大量的数据堆积,同时kafka消费组也异常退出了,如下图所示:

screenshot

但是排查我们java应用程序,该消费组对应的消费线程是正常running的,且无任务异常日志,并且通过程序日志和jstack 命令发现,消费线程在poll的时候已经长时间阻塞,不消费数据了。

最后运维通过重启kafka消费线程,发现又能正常消费数据,并且调用kafka命令数据堆积也慢慢减少,消费组也恢复正常了。。。。。。。

最后最后运行一段时间后同样的现场又会在不同的消费线程上复现,重启消费线程同样能解决。。。

望大佬帮忙分析下!!!