Java 当负载增加时,我应该如何提高RabbitMQ治疗速度?

Java 当负载增加时,我应该如何提高RabbitMQ治疗速度?,java,performance,rabbitmq,spring-rabbit,Java,Performance,Rabbitmq,Spring Rabbit,我使用RabbitMQ来管理连接的东西和我的服务器之间的MQTT通信。预计处理的负载约为每秒800条消息 早些时候,它是这个负载的三分之一,我设法用一个RabbitMQ代理处理它们,并在多个服务器java应用程序之间复制负载。它们都连接到一个AMQP队列,该队列为我处理负载平衡(使用自然的AMQP循环方式) 注意:MQTT输入和AMQP之间的传输由Spring Rabbit完成。虽然我不太确定幕后会发生什么,但我的理解是,RabbitMQ的所有内容都集中在一个交换机(amq.topic)上,并路

我使用RabbitMQ来管理连接的东西和我的服务器之间的MQTT通信。预计处理的负载约为每秒800条消息

早些时候,它是这个负载的三分之一,我设法用一个RabbitMQ代理处理它们,并在多个服务器java应用程序之间复制负载。它们都连接到一个AMQP队列,该队列为我处理负载平衡(使用自然的AMQP循环方式)

注意:MQTT输入和AMQP之间的传输由Spring Rabbit完成。虽然我不太确定幕后会发生什么,但我的理解是,RabbitMQ的所有内容都集中在一个交换机(amq.topic)上,并路由到我的单个队列,我的所有应用程序都连接到该队列

在这一点上,我的架构是:一台机器上有一个代理,每台机器有25个应用程序(总共75个应用程序乘以3)。将应用程序和机器相乘可能有点天真,但至少它是可行的

但是,现在负载增加了,无论我添加多少应用程序来平衡负载,处理速度都不会增加(当我添加超过100个时,处理速度实际上会减慢)

我还尝试添加另一台机器以形成一个代理集群,认为可能有太多的消费者,代理无法自行实现负载平衡,但它没有加快速度。我按照本教程设置集群:

我不熟悉load problematics,并且我已经在这个主题上花费了很多时间,因此我向您寻求帮助:

  • 在这种情况下,我增加资源的方法正确吗
  • 如何提高邮件的处理速度
  • 此外,对于物联网来说,这是一个相当重的负载吗

我建议您在rabbitmq用户Google组上而不是在这里提出类似的问题。