Note that during step 2 you actually use 2 queues (one per consumer) but each
of them gets messages from both exchanges IIRC, which is a bit counterintuitive in PerfTest.
But it doesn't really change the conclusion.
Also, we recommend increasing credit_flow values only if you really know
what the setting represents and what are the risks.
In all likelihood it won't have much of an impact in the longer term (e.g. not for the first
few seconds of a PerfTest run).
A much much better idea is to have continuous monitoring of
* Network bandwidth (ingress in particular but also egress). We often see that developers
assume that network bandwidth is infinite no matter what the message size is. Then they discover
they need a 10 GBit/s link to push through message bodies alone.
* I/O throughput
* CPU utilisation
Those 3 is the bare minimum you need to monitor if you want to make informed decisions
about throughput in your distributed system (this is applicable beyond RabbitMQ).