I'm trying here to understand why some frameworks introduce the control over the number of consumers on a AMQP queue.
For example, Spring AMQP introduces this feature on the 1.3.0 version, with the
Since version 1.3.0, you can now dynamically adjust the concurrentConsumers property. If it is changed while the container is running, consumers are added or removed as necessary to adjust to the new setting.
In addition, a new property called maxConcurrentConsumers has been added and the container dynamically adjusts the concurrency based on workload.
But I can't figure out the advantages to use it if I could just set the
concurrentConsumers already with my maximum value.
The only advantage that I know is reduce the average number of the connections with the RabbitMQ server. But thinking that most of the applications are very far to reach a number of connections that could create problems to a RabbitMQ instance, these consumers control feature seems very rare to take advantage.