0
votes

We are using Spring Cloud Steam with RabbitMQ binder.

I'm currently in the Process of setting up a RabbitMQ Cluster and want to use quorum queues. The options to set the queue type must be sent with the creation of the queue. In version 3.0.0 of Spring Cloud Stream, the option is added, but we are on an old version of String Boot and String Cloud Stream and don't want to update, because our live release will be in the next few weeks.

I've looked up the PR link. but the options are all private and I don't see any listeners or interceptors.

Is there any way to inject additional arguments into the queue creation call?

1

1 Answers

0
votes

I would recommend upgrading to a newer version.

The only option with older versions is to provision and bind the queue manually and disable automatic provisioning of the queues as discussed in the binder reference.

If you have an existing exchange/queue that you wish to use, you can completely disable automatic provisioning as follows, assuming the exchange is named myExchange and the queue is named myQueue:

spring.cloud.stream.binding.<binding name>.destination=myExhange

spring.cloud.stream.binding.<binding name>.group=myQueue

spring.cloud.stream.rabbit.bindings.<binding name>.consumer.bindQueue=false

spring.cloud.stream.rabbit.bindings.<binding name>.consumer.declareExchange=false

spring.cloud.stream.rabbit.bindings.<binding name>.consumer.queueNameGroupOnly=true