enable.auto.commit值未配置为true

时间:2017-12-08 08:20:55

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

根据Kafka文档,consumer config enable.auto.commit的默认值为true。但我变得虚假。

在我的Kafka流应用程序中,我尝试将其更改为true props.put(StreamsConfig.consumerPrefix(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG), true)以自动提交偏移量。但我在日志中收到WARN o.a.k.s.StreamsConfig [main] Unexpected user-specified consumer config: enable.auto.commit found. User setting (true) will be ignored and the Streams default setting (false) will be used消息并恢复为假。

原因是什么?请帮帮我。

1 个答案:

答案 0 :(得分:4)

Kafka Streams不允许用户设置enable.auto.commit。 Streams使用自己的机制来提交偏移量,而不是依赖于消费者自动提交功能。这是为了确保只有在库确定没有数据丢失时才在某些点完成提交。

您可以控制的唯一提交设置是commit.interval.ms