Rdkafka auto在处理消息后提交偏移量?

时间:2017-06-30 05:28:40

标签: kafka-consumer-api confluent-kafka

function fillparent() { var input = document.getElementsByName("code").innerHTML; alert(input); 设置为enable.auto.commit时,Rdkafka是否确保它只会表示应用程序处理的偏移量?

假设偏移204301处有消息。 在应用程序完成对此消息的处理之前,是否可能已提交偏移量204301?

1 个答案:

答案 0 :(得分:1)

它将提交从库中轮询的任何偏移量 - librdkafka无法知道您是否已完成处理消息

如果您希望在发生故障时至少保留一次语义100%的时间,则必须手动提交。

最好的办法是轮询一些数据,对它们进行处理(逐个或按批处理),一旦完成,提交偏移量,每X个消息或Y ms(不提交每条消息,这样做让经纪人无缘无故地忙着)