Apache kafka Kafka enable.auto.commit=true并使用commitSync()
建议仅当Apache kafka Kafka enable.auto.commit=true并使用commitSync(),apache-kafka,kafka-consumer-api,spring-kafka,Apache Kafka,Kafka Consumer Api,Spring Kafka,建议仅当enable.auto.commit设置为false时才使用commitSync()。但是我们使用了commitSync(),忘记了将enable.auto.commit设置为false。所以我想知道在这种情况下会发生什么?如果设置为True,则消费者的偏移量会在后台定期提交。另一方面,是一个允许手动提交偏移量的阻塞调用 在您的情况下,将在两种情况下提交偏移: 每次调用commitSync() 每个Nms,其中N是一个可配置参数(auto.commit.interval.ms) 使用s
enable.auto.commit
设置为false
时才使用commitSync()
。但是我们使用了commitSync()
,忘记了将enable.auto.commit
设置为false
。所以我想知道在这种情况下会发生什么?如果设置为True
,则消费者的偏移量会在后台定期提交。另一方面,是一个允许手动提交偏移量的阻塞调用
在您的情况下,将在两种情况下提交偏移:
- 每次调用
commitSync()
- 每个
ms,其中N
是一个可配置参数(N
)auto.commit.interval.ms
false
;容器将使用AckMode.BATCH
(默认)或AckMode.RECORD
以更确定的方式提交偏移量。spring kafka的最新版本默认将其设置为false(除非显式设置)。