spring rabbit amqp @RabbitListener配置最小和最大消费者数量

时间:2017-04-02 15:16:12

标签: java spring rabbitmq spring-amqp spring-rabbit

我正在使用spring amqp rabbit @RabbitListener注释  来自:神器spring-rabbit-1.7.1.RELEASE 我想知道是否有办法为每个队列配置多少消费者? 我一直在挖掘文档并发现什么都没有,有没有办法在相关容器中为每个队列配置多少个消费者? 提前致谢。

1 个答案:

答案 0 :(得分:4)

通过container factory bean as shown in the documentation配置并发。

@Bean
public SimpleRabbitListenerContainerFactory rabbitListenerContainerFactory() {
    SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
    factory.setConnectionFactory(connectionFactory());
    factory.setConcurrentConsumers(3);
    factory.setMaxConcurrentConsumers(10);
    return factory;
}

如果您正在使用为您创建工厂bean的Spring Boot,则可以使用属性对其进行配置。

如果您想要固定数量的消费者,只需省略max

如果您想为每个侦听器设置不同的设置,则每组设置都需要不同的工厂。然后,您将在其@RabbitListener属性中引用containerFactory的特定容器工厂。