[英]How to set Binders for Spring Cloud Stream Bindings on different RabbitMQ vhosts
[英]Spring cloud stream RabbitMq - Set properties from source code
我正在将 Spring 云流与 RabbitMQ 一起使用。
我希望能够从源代码而不是从属性文件(正如他们在他们的文档中提到的)配置消息和查询属性。
例如,对于 RabbitMq 的经典 Java 客户端,我可以执行类似的操作来创建具有我想要的属性的队列:
//qName, passive, durable, exclusive auto-delete
channel.queueDeclare("myQueue", true, false, false, , false , null);
关于如何使用 Spring Cloud 流实现相同目标的任何想法?
在“application.yml”中,您可以添加所有这些值,以下是示例
spring:
cloud:
stream:
instance-count: 1
bindings:
input:
consumer:
concurrency: 2
maxAttempts: 1
group: geode-sink
destination: jdbc-event-result
binder: rabbit
rabbit:
bindings:
input:
consumer:
autoBindDlq: true
republishToDlq: true
requeueRejected: false
rabbitmq:
username: ur-user-name
password: ur-password
host: rabbitmq-url-replace-here
port: 5672
datasource:
platform: mysql
url: jdbc:mysql-url-replace-here
username: ur-user-name
password: ur-password
driverClassName: com.mysql.jdbc.Driver
datasource:
tomcat:
max-wait: 300
min-idle: 10
max-idle: 100
aggregator:
groupCount: 2
batchSize: 1000
batchTimeout: 1000
更新 :
在挖掘他们的文档并在@vaquar khan 的帮助下,我发现唯一的方法是从您的属性文件中进行。
应用程序.yml
spring:
cloud:
stream:
bindings:
queue_name :
destination: queue_name
group: your_group_name
durable-subscription : true
这将声明一个持久的、非删除和非排他的队列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.