Java 如何使用Camel kafka提交消费者补偿?
我正在使用ApacheCamel与我的kafka消息集成。我还使用JavaDSL来使用来自kafka端点的消息 使用ApacheKafkaAPI的已知方法提交具有给定属性切换的使用者偏移量 如果我在camel-kafka组件中取消自动提交,那么如何在apcahe-camel中提交偏移量呢 我正在使用以下端点禁用Apache Camel中的自动提交Java 如何使用Camel kafka提交消费者补偿?,java,apache-camel,Java,Apache Camel,我正在使用ApacheCamel与我的kafka消息集成。我还使用JavaDSL来使用来自kafka端点的消息 使用ApacheKafkaAPI的已知方法提交具有给定属性切换的使用者偏移量 如果我在camel-kafka组件中取消自动提交,那么如何在apcahe-camel中提交偏移量呢 我正在使用以下端点禁用Apache Camel中的自动提交 kafka.consumer.uri = kafka://{{kafka.host}}?zookeeperHost={{zookeeper.host}
kafka.consumer.uri = kafka://{{kafka.host}}?zookeeperHost={{zookeeper.host}}&zookeeperPort={{zookeeper.port}}&groupId={{kafka.consumerGroupId}}&topic={{kafka.topic.transformer_t}}&{{kafka.uri.options}}
kafka.uri.options = autoCommitEnable=false
在中添加了对手动偏移提交的支持,并且自版本2.21.0以来一直受支持。您可以使用选项启用它。此选项将公开标头
CamelKafkaManualCommit
,其中包含的实例,然后您可以在处理器中使用该实例
from("kafka:topic?groupId=group&autoCommitEnable=false&allowManualCommit=true")
//...
.process(exchange -> {
exchange.getIn().getHeader(KafkaConstants.MANUAL_COMMIT, KafkaManualCommit.class).commitSync();
});
你有没有找到一个解决方案?没有,但如果他们有什么最新的卡夫卡规格检查。我停止使用Camel Kafka,因为它不支持手动提交偏移量。这对我来说也是一个阻碍。另见: