0

我们有一个从 MSMQ 运行的现有服务总线,它消耗一个需要将命令发布到 Azure 上运行的总线的事件。

我们将 azure 暴露给外部世界,并为内部消息保留 msmq。

我尝试新建一个仅发送总线的实例来完成此操作,但没有运气,将不胜感激一些指针/代码示例。


编辑

我还没有找到这个问题的答案,到目前为止,我的解决方法是设置一个 web api,它托管运行 Azure 作为传输协议的 nservicebus。所以我的 MSMQ 消费者将调用 api,该 api 将向我们的 Azure 总线发送命令。不理想……一点也不,但这是我能想到的。


编辑2

创建了与网关配置略有不同但相关的问题: Nservicebus msmq to azure queue using gateway

4

2 回答 2

0

我已将所有评论汇总到此答案中并添加了更多评论。

尝试使用 NServiceBus网关进行站点间通信。

网关是多个站点之间的桥梁。每个站点都可以选择自己的排队技术。唯一需要通用的是序列化程序。(尽管这已被记录为错误)。

当文章说 http/https 是目前唯一支持的通道类型,但 Azure/Amazon SQS 等云站点计划用于未来时,它仅指桥接技术。一旦有了 Azure(或 Amazon SQS)网关通道,就不需要中间 HTTP(S) 步骤。

当前示例:
a) SiteA 上的 MSMQ Q => HTTPS 通道 => SiteB 上的 Azure Q
b) SiteA 上的 MSMQ Q => HTTPS 通道 => SiteB 上的 SQL Q

未来示例:
a) SiteA 上的 MSMQ Q => Azure 通道,这也是 SiteB 上的 Azure Q
b) SiteA 上的 MSMQ Q => Azure 通道 => SiteB 上的 SQL Q

通道是指网关使用的传输协议。端点使用的排队技术不相关。

于 2014-02-08T22:17:38.600 回答
0

Yves Goeleven在这里举了一个例子。

于 2014-11-11T01:32:43.960 回答