我有4个不同的JVM上运行的spring boot应用程序实例。有没有办法设定最大的全球消费者?目前我有setMaxConcurrentConsumers(1);组。问题在于,每个JVM上都创建了一个使用者。我希望在4个JVM中创建一个使用者。我目前正在使用SimpleRabbitListenerContainerFactory,希望在那里可以使用此功能。如果不是这样,可以用DirectRabbitListenerContainerFactory吗?
我想我基本上是在问如何设置channel.basicQos(15,true); // Spring-AMQP中RabbitMQ的每个通道限制。
谢谢, 布莱恩
答案 0 :(得分:0)
如果该限制大于1,则无法设置该限制。
要限制单个消费者,您可以设置消费者的独占标志(在@RabbitListener
上);那么只有一个使用方被允许,其他实例将继续尝试使用,直到当前使用方去世(热备用)为止。