我对RabbitMQ和MassTransit完全陌生。我只有一个可以在开发环境中工作的代码,但是在生产环境中,我得到了标题中提到的错误。 当前配置如下:
<source name="mdb" switchValue="All">
<listeners>
<add name="MM" type="Comp.MyTraceListener, Comp.Diagnostics"
initializeData="rabbitmq://server.xxx.int/ProdRabbitCluster/MDB"
username="prod" password="xxxxx" />
</listeners>
</source>'
仅检查一下我反编译了MassTransit DLL,发现这是因为"/ProdRabbitCluster/MDB"
有多个"/"
分隔的段。
那么,该URL格式仅仅是无效的,应该更改吗?该价值是由客户的管理员提供的,我不知道他们的整个基础架构和服务器。
答案 0 :(得分:1)
使用RabbitMQ的MassTransit的URL格式为:
rabbitmq://hostname[:port]/virtual_host
虚拟主机名中不应存在其他“ /”。它对RabbitMQ可能是合法的,但对MassTransit则不合法。他们需要重命名虚拟主机,以使其名称中不包含“ /”。
我不明白为什么有时操作会做这样的事情。