对于反应式 Kafka 中的一个生产者和多个消费者来说,是否可以拥有恰好一次语义?

问题描述 投票:0回答:1

我想知道是否可以通过分布式消费者以反应方式实现一次语义。

在Reactor Kafka的参考文档中,我们有一个Exactly-once交付的示例代码。问题是接收方必须有权访问 KafkaSender 拥有的 TransactionManager。

我们可以有一个共享的 TransactionManager 来处理所有这些混乱吗?通过将 KafkaTransactionManager 用于常规 Spring Kafka,我们确实具有类似的功能。但这是不同的,不能在Reactor kafka中使用。

有什么见解吗?

apache-kafka spring-kafka project-reactor
1个回答
0
投票

由于事务管理器拥有生产者并用于在该生产者上启动事务,因此您需要为每个接收者使用不同的

TransactionManager
(和发送者)实例(具有不同的
transactional.id
)。

© www.soinside.com 2019 - 2024. All rights reserved.