标签: transactions apache-kafka
我有一个用例,我必须从主题中消费并发布到另一个主题。我发生了任何事情,实际上这些话题都没有改变。
答案 0 :(得分:1)
从Kafka 0.11开始,您可以使用事务来获取此类行为。 Kafka附带了一个精确的例子,它使用来自分区的消息并使用事务将它们生成到另一个分区。
除了执行常规事务逻辑之外,所有需要的是在事务失败时将使用者位置重置为最后提交的偏移量,并且只在事务成功时提交偏移量。
有关完整逻辑,请参阅https://github.com/apache/kafka/blob/trunk/tools/src/main/java/org/apache/kafka/tools/TransactionalMessageCopier.java