kafka手动提交时异常消费的坑
在consumer端enable.auto.commit设置为false时
正常情况时通过调用ack.acknowledge();(spring-kafka,官方kafka不是这个接口)来进行offect的提交,但是如果发生异常的情况下,offect没有触发提交,这时kafka是不会重复发消息的,除非这时候系统重启,或者consumer端重置
并且在这种情况下,如果后面的消息被正常消费了,那么异常这个消息的offect就直接被覆盖过去了,这条记录就丢失不会再被消费
以上表述文字通过代码实测
具体详细的见
https://www.cnblogs.com/xuwujing/p/8432984.html