c# - 使用 RabbitMQ 的 MassTransit - RecieveFrom 的地址

标签 c# rabbitmq esb masstransit

我们已经在测试环境中配置了 RabbitMQ 的主动/主动集群。

我们使用指定 ReceiveFrom("rabbitmq://cluster_machine_a/some_queue?ha=true") 的 MassTransit 进行连接。

显然,这是利用特定的集群节点,因此不提供故障转移。

通知 MassTransit 有关集群节点以便发生故障转移的正确方法是什么?

RabbitMQ 文档表明客户端应该使用传统的负载均衡器来分配流量,但是这是否适用于 RabbitMQ? (最后一节 - http://www.rabbitmq.com/clustering.html)

最佳答案

为了回答我自己的问题,在 MassTransit 中没有故障转移的概念,即带有故障转移伙伴的 SQL 服务器连接字符串。

相反,您只需在 RMQ 的前面引入一个负载均衡器,并接受当您为其编写恢复代码的节点出现故障时您将收到错误。当然,您需要将 RMQ 节点连接在一起,这可以通过它的内置集群来实现。

最后,从负载均衡器引入的虚拟 ip 接收并让它负责检测失败的 RMQ 节点。

关于c# - 使用 RabbitMQ 的 MassTransit - RecieveFrom 的地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10731495/

相关文章:

nservicebus - NServiceBus 到底是不是 ESB

c# - joliver/EventStore 最终一致性

c# - 如何在 .NET Core MVC 项目中转换 appsettings.json?

java - JMS 和 AMQP - RabbitMQ

websocket - 更改 RabbitMQ WebSocket MQTT 端点的路径?

web-services - 如何在 Mule 中显示来自 Web 服务的错​​误而不是 Mule 的错误消息

web-services - Apache Camel 聚合多个REST服务响应

c# - 任务栏中未显示客户应用程序图标 - 为什么?

c# - XSLt.transform 给我 ""

docker - 未在Rabbit MQ Docker镜像3.7.6上安装auth_backend_http