Spring 来自两个不同 Kafka 代理的 Cloud Stream Processor

Spring Cloud Stream Processor from two different Kafka broker

我想知道是否可以为 Spring Cloud Stream 上的输入和输出绑定两个不同的 Kafka 代理。

换句话说,我希望我的流在一个 Kafka 代理中侦听并在另一个 Kafka 代理中写入输出。

@StreamListener(Processor.INPUT)
@SendTo(Processor.OUTPUT)
public Object handle(String message) {
    // Processor.INPUTbeing bind to one Kafka broker
    // Processor.OUTPUT being bind to another Kafka broker
    // Write the logic here
}

是的,非常可以!这是一个 multi-binder application 读取和写入 2 个不同的 Kafka 集群。

注意application.yml中的binder和channel绑定配置。