spring 云总线 - 重命名 rabbitmq 队列?
spring cloud bus - rename rabbitmq queues?
有没有办法告诉 spring 总线重命名它的 rabbitmq 队列?在启动时,它们似乎只是一些随机值,如下所示:
springCloudBus.anonymous.4zzIP0z-TH6oIza5mCun7Q
试图让 spring 总线将其重命名为更易于阅读的可预测队列名称。例如:
testQueue
或者知道它为什么服务保存消息的知识。
我尝试将以下内容添加到 application.yml 上以用于 bootRun:
spring:
cloud:
stream:
bindings:
output:
destination: testQueue
无济于事。请帮忙!!
注意:匿名组对于 Spring Cloud Bus 的正常工作至关重要。
使用群组可以
a) 持久订阅,这意味着应用程序将接收所有事件(包括未发送的事件 运行)
b) 使用组意味着应用程序可以成为竞争消费者,这意味着事件不会广播
c) 不再自动删除队列
您在 spring-cloud-bus
inbound/outbound 通道中设置的目的地是 rabbitmq 交换而不是队列。
对于 spring-cloud-bus
,出站 频道名称是 springCloudBusOutput
。
因此,您的配置需要:
spring:
cloud:
stream:
bindings:
springCloudBusOutput:
destination: testExchange
这里的目标名称 testExchange 是交换名称而不是 queue
名称。
为避免 anonymous
名称出现在队列中,您可以为 inbound
通道绑定设置一个 group
名称。
spring:
cloud:
stream:
bindings:
springCloudBusInput:
destination: testExchange
group: testQueue
这将使队列名称testExchange.testQueue
我最近是这样做的:
spring:
cloud:
stream:
rabbit:
default:
consumer:
anonymousGroupPrefix: ${spring.application.name}-${server.port}.
它重命名所有匿名队列,这非常有用。
有没有办法告诉 spring 总线重命名它的 rabbitmq 队列?在启动时,它们似乎只是一些随机值,如下所示:
springCloudBus.anonymous.4zzIP0z-TH6oIza5mCun7Q
试图让 spring 总线将其重命名为更易于阅读的可预测队列名称。例如:
testQueue
或者知道它为什么服务保存消息的知识。
我尝试将以下内容添加到 application.yml 上以用于 bootRun:
spring:
cloud:
stream:
bindings:
output:
destination: testQueue
无济于事。请帮忙!!
注意:匿名组对于 Spring Cloud Bus 的正常工作至关重要。
使用群组可以
a) 持久订阅,这意味着应用程序将接收所有事件(包括未发送的事件 运行)
b) 使用组意味着应用程序可以成为竞争消费者,这意味着事件不会广播
c) 不再自动删除队列
您在 spring-cloud-bus
inbound/outbound 通道中设置的目的地是 rabbitmq 交换而不是队列。
对于 spring-cloud-bus
,出站 频道名称是 springCloudBusOutput
。
因此,您的配置需要:
spring:
cloud:
stream:
bindings:
springCloudBusOutput:
destination: testExchange
这里的目标名称 testExchange 是交换名称而不是 queue
名称。
为避免 anonymous
名称出现在队列中,您可以为 inbound
通道绑定设置一个 group
名称。
spring:
cloud:
stream:
bindings:
springCloudBusInput:
destination: testExchange
group: testQueue
这将使队列名称testExchange.testQueue
我最近是这样做的:
spring:
cloud:
stream:
rabbit:
default:
consumer:
anonymousGroupPrefix: ${spring.application.name}-${server.port}.
它重命名所有匿名队列,这非常有用。