Closed
Description
The RabbitMQ client currently allocates a lot of unnecessary memory and has a lot of GC overhead.
I'm currently working on a PR to reduce the allocations being made, and will probably introduce some *Async overloads as well as they help reduce lock contention.
Here is the current progress I have made with a test app that opens two connections. One connection bulk publishes 50000 messages in 100 message batches containing just an 4-byte integer as payload. The other connection receives those messages so it's mostly just measureing the frame serialize/deserialize overhead.
I'll follow up this issue with discussions and link the PR once it's ready for review.