【问题标题】:Configuring Spring Kafka for two separate clusters为两个单独的集群配置 Spring Kafka
【发布时间】:2020-01-11 03:46:55
【问题描述】:

是否可以将 Kafka 配置为在单个 Spring Boot 应用程序中使用两个单独的集群?

用例:我有两个带有副本 + zookeeper 的集群:

  • 集群 #1 引导服务器server1.example.com,server2.example.com,server3.example.com
  • 集群 #2 引导服务器target-server1.example.com,target-server2.example.com,target-server3.example.com

我需要使用来自Cluster #1 的消息,然后根据该数据进行一些计算并将结果生成到Cluster #2 主题。有没有办法在单个 Spring 应用程序中配置 Kafka 来处理这种方法?

【问题讨论】:

  • 是的,你可以,你试过什么吗?你能显示代码吗?
  • 另一种方法是只使用一个集群,然后使用 Kafka Connect 或 MirrorMaker 将数据发送到另一个...... Kafka Streams 仅适用于一个集群

标签: spring-boot apache-kafka spring-kafka


【解决方案1】:

是的,但是如果你想同时消费和生产,你必须手动配置消费者和生产者工厂@Beans 等。

引导只能从属性中自动配置一个。

但如果您只是从一个集群消费并生产到另一个集群,可以通过属性来完成。

使用

spring.kafka.producer.bootstrap-servers=...
...
spring.kafka.consumer.bootstrap-servers=...

这些将覆盖公共属性。

【讨论】:

    猜你喜欢
    • 2020-11-16
    • 2016-09-22
    • 1970-01-01
    • 2021-06-12
    • 2018-11-21
    • 1970-01-01
    • 2020-02-26
    • 2021-07-21
    • 2019-03-15
    相关资源
    最近更新 更多