Skip to content

RabbitMQ Performance

Imported from Confluence

Content may be outdated. Verify before following any procedures. View original | Last updated: February 2024

Part2 Rabbitmq Best Practice For High Performance

  • RMQ queues are single-threaded, meaning one queue is limit by performance of single core
  • Performance tuning recommendations:
  • Have multiple queues which will be distributed to multiple nodes after rebalancing
  • HA (quorum in new rmq version) increases availability but affects performance due to messages replication
  • Monitor rmq nodes load, in case it's not even trigger rebalance
  • Rebalance

#queues can be balances with this command
$ rabbitmq-queues rebalance quorum

#then the major queues can be balanced with pattern
$ rabbitmq-queues rebalance quorum --queue-pattern "mmp.queue_quorum.[1-5]+"

#afterwards it can be checked with this on which node a specific queueu is running
$ rabbitmq-queues quorum_status --vhost growth_rabbitmq_stg_vhost mmp.queue_quorum.1
- Monitoring - Check queue status in RMQ UI, if you see "flow control" it means RMQ restricting queue performance to avoid unavailability