Py学习  »  MQ

rabbitmq directmessagelistenercontainer中的消费者-云Foundry中的内存影响

Jatin S Bhavra • 4 年前 • 1313 次点击  

我有一个场景,我在其中为队列创建预定义的使用者 DirectMessageListenerContainer bean如下:

@Bean
public DirectMessageListenerContainer directMessageListenerContainer(ConnectionFactory conn, DynamicTenantListenerCreator listener){
    DirectMessageListenerContainer factory = new DirectMessageListenerContainer();
    factory.setAcknowledgeMode(AcknowledgeMode.MANUAL);
    factory.setConnectionFactory(conn);
    factory.setConsumersPerQueue(5);
    factory.setMessageListener(listener);
    return factory;
}

根据我的理解,这将为在单独通道上工作的每个队列分配5个使用者。例如,如果我向这个bean添加5个队列,那么在5个不同的通道上工作的总消耗量将是25。我的问题是:

  1. 空闲用户对CloudFoundry中CPU的影响是什么?如果某些队列的消息较少,应用程序的性能是否会受到影响,因为会有一些空闲的使用者?

  2. 有没有办法单独定义每个队列的特定消费者数量?

提前谢谢

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38828
 
1313 次点击  
文章 [ 1 ]  |  最新文章 4 年前
Gary Russell
Reply   •   1 楼
Gary Russell    5 年前

空闲的使用者将使用最少的资源(只有少量的内存,没有CPU)。不可以,除非每个队列都有一个单独的容器,否则不能为每个队列指定使用者计数。