Performance Improvements
summary
Overview of concrete changes and results: RabbitMQ leverages Erlang/OTP and the BEAM, uses perf flame graphs and perf_test/stream_perf_test/emqtt_bench for profiling, and adds Parker for cluster sampling. Routing lookup is reindexed so routing CPU drops from 9.5% to 2.5% and end-to-end publish speeds improve 10–40%. Streams hit ~17 million msgs/s (≈380 MB/s); Quorum queues go from ~40k to ~50k msgs/s across releases; Classic Q v2 reduces latency and memory spikes. Plans include native MQTT handling and a kpri metadata store.
AI-written summary · about
chapters (13)
- 0:00Introduction
- 1:06RabbitMQ architecture and BEAM VM
- 3:11Scalability with Erlang processes
- 5:40Bottlenecks in RabbitMQ
- 6:45Classic mirrored queues limits
- 9:38Quorum queues and Raft
- 12:53RabbitMQ streams benefits
- 15:41Performance tools
- 19:41Flame graphs for optimization
- 27:33General queue optimizations
- 32:12RabbitMQ future developments
- 36:52Kubernetes operators and profiling
- 39:01Q&A
related talks
40mOpen Riak how we gained from leaning on the BEAM
32mRabbitMQ in Real Life - Tips and Tricks
35mMigrating from Kafka to RabbitMQ at SimpleBet: Why and How
45mAn update on Khepri adoption in RabbitMQ
01h 00mRabbit MQ vs Kafka: When, Which, Where?
50mMiddleware Showdown: Exploring Diverse Messaging Solutions
37mLet's build our own message streaming platform
48mBuilding a Distributed Data Ingestion System with RabbitMQ
