通过MassTransit发送到多个RabbitMQ主机

问题描述 投票:0回答:1

我正在RabbitMQ的.NET应用程序中使用MassTransit。它可以正常工作,我已经在ioc中配置并注册了MassTransit总线控件,现在我可以将消息发送到RabbitMQ实例并使用它们了。

现在,我需要有可能将消息发送到RabbitMQ的另一个实例。我该怎么做呢?我不需要使用来自其他RabbitMQ的消息,只需要发送一些内容。

我试图注入ISendEndpointProvider并将GetSendEndpoint与其他RabbitMQ实例的URI一起使用,但这似乎不起作用。我没有任何错误,但是当我尝试通过其他RabbitMQ发送消息时,我没有收到任何消息。 MassTransit文档没有说明有关连接到多个主机的信息。

感谢所有建议。

c# .net rabbitmq masstransit
1个回答
0
投票

如果需要在同一过程中设置两个总线实例,则需要分别管理它们,并且使用不同的容器,或者不要将容器与第二个实例一起使用。我建议为委托给另一个总线实例的基于容器的服务创建类。您将不得不单独管理它,如果只发送/发布,则不需要任何使用者设置。

MassTransit不需要容器,因此您可以在应用程序生命周期中创建/启动和处置/停止第二个实例。

© www.soinside.com 2019 - 2024. All rights reserved.