0

Kafkaのドキュメントでは、コンシューマ設定のenable.auto.commitのデフォルト値はtrueです。しかし、私は間違っています。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メッセージをログに記録し、falseに戻します。

理由は何ですか?私を助けてください。

答えて

2

カフカストリームでは、ユーザーがenable.auto.commitを設定することはできません。 Streamsは、コンシューマの自動コミット機能に頼るのではなく、独自のメカニズムを使用してオフセットをコミットします。これは、ライブラリがデータが失われないことが確実である特定の時点でのみコミットが行われるようにするためです。

制御できるコミット設定はcommit.interval.msです。

+1

この問題にも注意してください:https://stackoverflow.com/questions/43416178/how-to-commit-manually-with-kafka-stream –

関連する問題