首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >春云流:没有allowOverride就无法连接到2个兔子集群

春云流:没有allowOverride就无法连接到2个兔子集群
EN

Stack Overflow用户
提问于 2020-07-17 18:14:39
回答 1查看 286关注 0票数 0

我有一个spring引导应用程序(让我们称之为示例-服务),它具有以下配置,可以连接到两个不同的rabbitmq集群。

代码语言:javascript
复制
spring:
  cloud:
    stream:
      defaultBinder: rabbitA
      binders:
        rabbitA:
          inheritEnvironment: false
          defaultCandidate: false
          type: rabbit
          environment:
            spring:
              rabbitmq:
                addresses: rabbitmq-a:5672
                username: user-a
                password: password-a
        rabbitB:
          inheritEnvironment: false
          defaultCandidate: false
          type: rabbit
          environment:
            spring:
              rabbitmq:
                addresses: rabbitmq-b:5672
                  username: user-b
                  password: password-b
      bindings:
        dataFromA:
          destination: exchange-1
            group: queue-1
          binder: rabbitA
        dataFromB:
          destination: exchange-2
            group: queue-2
          binder: rabbitB

它本身工作得很好,它连接到两个集群。问题是,此服务部署在具有以下文件的spring配置服务器的环境中:

application.yml

代码语言:javascript
复制
spring.rabbitmq:
  addresses: rabbitmq-a:5672
  username: user-a
  password: password-a

然后,这似乎覆盖了位于“环境”属性下的每个绑定器的配置集。所以我需要添加这个额外的配置。

example-service.yml

代码语言:javascript
复制
spring.cloud:
  config:
    overrideSystemProperties: false
    allowOverride: true
    overrideNone: false

现在,示例服务再次连接到两个rabbitmq集群。但我已经观察到了某些副作用,主要是无法覆盖配置服务器示例中的其他属性--service.yml,这是我真正需要的。因此,我放弃了使用allowOverride及其相关属性。

问题是.是否有可能在不使用allowOverride的情况下工作,同时在远程配置服务器application.yml中保留Spring.rabbitmq.Address/用户名/密码?

先谢谢你。

致以亲切的问候。

EN

回答 1

Stack Overflow用户

发布于 2020-07-20 16:08:49

你用的是哪个版本?我刚刚用3.0.6测试了它,它运行得很好:

代码语言:javascript
复制
spring:
  cloud:
    stream:
      binders:
        rabbitA:
          type: rabbit
          inherit-environment: false
          environment:
            spring:
              rabbitmq:
                virtual-host: A
        rabbitB:
          type: rabbit
          inherit-environment: false
          environment:
            spring:
              rabbitmq:
                virtual-host: B
      bindings:
        input1:
          binder: rabbitA
          destination: input1
          group: foo
        input2:
          binder: rabbitB
          destination: input2
          group: bar
  rabbitmq:
    virtual-host: /

可能没有关联,但是您的group缩进是错误的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62959656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档