MassTransit-主机路径必须为空或包含单个虚拟主机名

时间:2018-08-22 14:23:57

标签: c# rabbitmq masstransit

我对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格式仅仅是无效的,应该更改吗?该价值是由客户的管理员提供的,我不知道他们的整个基础架构和服务器。

1 个答案:

答案 0 :(得分:1)

使用RabbitMQ的MassTransit的URL格式为:

rabbitmq://hostname[:port]/virtual_host

虚拟主机名中不应存在其他“ /”。它对RabbitMQ可能是合法的,但对MassTransit则不合法。他们需要重命名虚拟主机,以使其名称中不包含“ /”。

我不明白为什么有时操作会做这样的事情。