kafka客户端负责把消息丢给你的业务层,这个时候,该消息必须被提交,无论你业务层是否成功,而且kafka是基于offset下标的,如果后面的提交也会跳过之前的消息。另外设计第一原则是不要侵入到业务层。
如果业务处理这条消息失败,重新丢会队列或者其他的处理就可以了,简单不复杂。
是呀,kafka客户端已经将消息拉下来了,也丢给你了,你不提交offset,那客户端也不会重新去拉取了,它认为你在处理中。
解决了 原因节点崩溃过一次 ,也没有开启auto.leader.rebalance.enable
参考https://www.orchome.com/33