是什么导致在使用commitSync时重新发送重复的消息?

时间:2020-10-02 17:07:49

标签: java apache-kafka kafka-consumer-api

我有一个使用者设置,可以手动提交偏移量。事件数以百万计至数十亿。仅当在正在处理的使用者批处理中处理成功时,我才提交偏移量。但是,我们注意到即使成功调用commitSync,我们也有成千上万的重复项。我们将在该主题的下一次民意调查中使用commitSync并在使用者中重新拖动相同的确切数据。为什么会这样?

1 个答案:

答案 0 :(得分:0)

@Ryan-请确保您为消费者设置了以下属性

notificationsList

即使由于巨大的负载而不能使您获得理想的结果,也请使用下面的构造函数提交当前偏移量,以使您不会在下一次轮询中获得偏移量。

props.setProperty("enable.auto.commit", "false");

关注API,网址为 commitSync