kafka acknowledge.acknowledge()仅侦听器完成处理的偏移量

q5iwbnjs  于 2021-06-06  发布在  Kafka
关注(0)|答案(0)|浏览(229)

我们正在开发一个springboot应用程序,其中消息生成到kafka队列中,并由侦听器拉入(跨多个服务器,每个服务器上可以处理多个线程)。
当消息处理成功后,我们将执行以下操作 Acknowledgement.acknowledge() 在侦听器中,将消息标记为已处理。
然而,根据文件:https://docs.spring.io/spring-kafka/api/org/springframework/kafka/support/acknowledgment.html:
调用此方法意味着分区中以前的所有消息都已被处理
我可以看到这会导致多线程和争用条件出现问题。。。
类似的未回答的问题:SpringKafka是线程安全的吗?
所以,我想我是在问 Acknowledgement.acknowledge() 不是正确的方法吗?必须有一种方法将特定消息(而不是整个偏移量)标记为已处理。。。
谢谢!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题