通过互联网订阅MSMQ

时间:2010-05-15 01:48:03

标签: c# .net wcf msmq servicebus

我无法找到这个问题的明确答案。是否有良好的方式通过互联网订阅MSMQ?理想情况下,我在此连接的身份验证和加密方面都需要安全性。但我希望订阅者的行为与将在本地网络上订阅的任何其他客户端一样。我相信我有几个选择

  • 公开公开MSMQ端口
  • 将MSMQ置于某种类型的WCF服务之后(不确定这是否适用于订阅者)

我还有其他选择吗?我们坐在.NET环境中,试图解决的主要问题是将远程连接从拉动系统更改为基于事件的系统,以减少主服务器上的负载。

3 个答案:

答案 0 :(得分:7)

一种方法是在Internet上使用队列。

我在Microsoft工作,我的团队拥有MSMQ,我们也拥有Windows Azure Service Bus服务。对于您描述的方案,您可能需要查看使用服务总线队列,该队列不仅具有可访问Internet发件人的优势,而且还消除了在接收方创建入站防火墙规则的需要。

更多信息:http://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-queues/

答案 1 :(得分:0)

最自然的选择是使用MSMQ over http,这是MSMQ的一个功能: http://msdn.microsoft.com/en-us/magazine/cc164041.aspx

另一种方法是使用双工轮询创建一个http WCF服务,并使用WS-Routing到MSMQ WCF服务。

答案 2 :(得分:0)

查看NServiceBus的Gateway功能。