简体   繁体   English

通过互联网订阅MSMQ

[英]Subscribing to MSMQ over the internet

I haven't been able to find a clear answer to this problem. 我还没有找到解决这个问题的明确答案。 Is there a good way to subscribe to a MSMQ through the internet? 是否有通过互联网订阅MSMQ的方法? Ideally I need security both in authentication and encryption for this connection. 理想情况下,我需要此连接的身份验证和加密安全性。 But I would like the subscriber to act just like any other client that would be subscribed on the local network. 但是我希望订阅者的行为就像在本地网络上订阅的任何其他客户端一样。 I believe I have a couple of options here 我相信我有两个选择

  • Expose the MSMQ ports publicly 公开公开MSMQ端口
  • Put the MSMQ behind some type of WCF service (not sure if that works for a subscriber) 将MSMQ放在某种WCF服务之后(不确定是否适用于订户)

What other options do I have? 我还有什么其他选择? We're sitting in a .NET environment and the main problem domain that is trying to be solved is to change the remote connections from a pulling system to an event based system to reduce the load on the main server. 我们坐在.NET环境中,试图解决的主要问题域是将远程连接从请求系统更改为基于事件的系统,以减少主服务器上的负载。

One way is to use a queue ON the Internet. 一种方法是在Internet上使用队列。

I work at Microsoft and my team owns MSMQ and we also own the Windows Azure Service Bus service. 我在Microsoft工作,我的团队拥有MSMQ,我们还拥有Windows Azure Service Bus服务。 For the scenario you describe you may want to take a look at using a Service Bus Queue, which has not only the advantage of being reachable for Internet senders but also eliminates the need to create inbound firewall rules on the receive side. 对于您描述的场景,您可能想看看使用服务总线队列,它不仅具有Internet发送者可访问的优点,而且消除了在接收端创建入站防火墙规则的需要。

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

检出NServiceBus的网关功能。

The most natural option will be to use MSMQ over http, which is a feature of MSMQ: http://msdn.microsoft.com/en-us/magazine/cc164041.aspx 最自然的选择是通过HTTP使用MSMQ,这是MSMQ的功能: http : //msdn.microsoft.com/zh-cn/magazine/cc164041.aspx

The alternative would be to create an http WCF service possibly with duplex polling and use WS-Routing to an MSMQ WCF service. 另一种选择是创建可能具有双工轮询的http WCF服务,并使用WS-Routing到MSMQ WCF服务。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM