The RabbitMQ team has been looking at the performance differences between the latest RMQ releases. After benchmarking multiple RabbitMQ version/Erlang version/build environment permutations, we have some findings to share.
The new management plugin and stats emission/collection implementation in RabbitMQ 3.6.7 produces a slight drop in performance in some workloads.
Another finding suggests that RabbitMQ packages compiled in Erlang R16B03 (such as the 3.6.x releases produced by our team) will have a minor throughput drop when running on Erlang 20.x. Packages built on Erlang 19.x.x and ran on Erlang 20.x.x showed no such difference.
Finally, stock RabbitMQ configuration on Erlang 20.x seems to yield a slightly lower performance than on any previous Erlang release.
We are looking for ways to reduce the impact of stats collection. Future 3.6.x releases will likely drop support for Erlang/OTP R16B03 and 17.5, and these findings are a yet another reason to do that. More on that in a separate announcement next week.