是否可以将Kafka配置为在单个Spring Boot应用程序中与两个单独的集群一起工作?
用例:我有两个带有副本+ Zookeeper的集群:
server1.example.com,server2.example.com,server3.example.com
target-server1.example.com,target-server2.example.com,target-server3.example.com
我需要使用Cluster #1
中的消息,然后根据该数据进行一些计算,并将结果生成到Cluster #2
主题。有什么方法可以在单个Spring应用程序中配置Kafka来处理这种方法?
答案 0 :(得分:2)
是的,但是如果要同时使用两者进行生产,则必须手动配置消费者工厂和生产工厂@Bean
等。
引导只能从属性中自动配置其中之一。
但是,如果您只是从一个集群中消费而生产到另一个集群,则可以 通过属性来完成。
使用
spring.kafka.producer.bootstrap-servers=...
...
spring.kafka.consumer.bootstrap-servers=...
这些将覆盖通用属性。