由于项目原因,最近经常碰到Kafka消息队列某topic在集群宕机重启后无法消费的情况。碰到这种情况,有三步去判断原因所在:
step A:如果用kafka串口(即console-consumer)是可以正常消费该topic,则排除kafka集群出现故障
step B:若平台业务能正常消费其他topic的消息,则排除平台业务代码逻辑问题
step C:不到万不得已,则只能手动删除kafka的对应topic的Log,但是清理Kafka Log又不能单纯的去删除中间环节产生的日志,中间关联的很多东西需要手动同时去清理,否则可能会导致删除后客户端无法消费的情况。
一、Kafka消费Offset原理