在 Masstransit 中使用 rabbitmq 传输时,如何为生产者和消费者创建两个 rabbitmq 连接

How to create two rabbitmq connection for producers and consumers wehen use rabbitmq transport in Masstransit

在Masstransit中使用rabbitmq传输时,如何为生产者和消费者创建两个rabbitmq连接。 分离发布者和消费者的连接以实现高吞吐量。当发布者发送太多消息供服务器处理时,RabbitMQ 可以对 TCP 连接施加背压。如果您在同一个 TCP 连接上消费,服务器可能不会收到来自客户端的消息确认,从而影响消费性能。消耗速度越慢,服务器就会不堪重负。

如果您有实际上触发 RabbitMQ 通过 TCP 施加背压的高消息速率场景,我建议从单独的总线实例(也可能在两个单独的服务中)生成初始消息(意思是在外部生成的消息消费者,例如 bus.Publish 或通过发送端点。

在我的性能测试中,我还没有发现任何与单个连接上的重负载相关的问题——即使是在较小的 RabbitMQ 实例上也是如此。