如何在 CloudAMQP 上连接 MassTransit 和 RabbitMq
How to connect MassTransit with RabbitMq on CloudAMQP
我在将 MassTransit 与 CloudAMQP 上的 RabbitMq 连接时遇到问题。下面是我的代码
var bus = Bus.Factory.CreateUsingRabbitMq(otions => {
var host = otions.Host(new Uri("rabbitmq://llama-01.rmq.cloudamqp.com"),
h => { h.Username("my_username"); h.Password("my_password"); });
otions.ReceiveEndpoint(host, "recvqueue", ep => {
ep.Handler<Communicate>(Handle);
});
});
bus.Start();
h.Password
和 h.Username
是正确的。
当我尝试启动总线时出现以下错误:
RabbitMQ Connect Failed: Broker unreachable:
my_username@llama-01.rmq.cloudamqp.com:5672/
我怀疑问题出在 URI 地址上,但我找不到正确的地址。
嗯,我快速浏览了他们的入门指南,我可以看到您的实例获得了一个与您的用户同名的虚拟主机。
上图是我订阅免费计划后得到的。
对于 MassTransit,您需要在连接字符串的末尾添加 vhost,例如 rabbitmq://llama-01.rmq.cloudamqp.com/my_username
,或者在主机配置中配置它,以及用户名和密码。
我在将 MassTransit 与 CloudAMQP 上的 RabbitMq 连接时遇到问题。下面是我的代码
var bus = Bus.Factory.CreateUsingRabbitMq(otions => {
var host = otions.Host(new Uri("rabbitmq://llama-01.rmq.cloudamqp.com"),
h => { h.Username("my_username"); h.Password("my_password"); });
otions.ReceiveEndpoint(host, "recvqueue", ep => {
ep.Handler<Communicate>(Handle);
});
});
bus.Start();
h.Password
和 h.Username
是正确的。
当我尝试启动总线时出现以下错误:
RabbitMQ Connect Failed: Broker unreachable: my_username@llama-01.rmq.cloudamqp.com:5672/
我怀疑问题出在 URI 地址上,但我找不到正确的地址。
嗯,我快速浏览了他们的入门指南,我可以看到您的实例获得了一个与您的用户同名的虚拟主机。
上图是我订阅免费计划后得到的。
对于 MassTransit,您需要在连接字符串的末尾添加 vhost,例如 rabbitmq://llama-01.rmq.cloudamqp.com/my_username
,或者在主机配置中配置它,以及用户名和密码。