我们计划开发基于Microsoft Message Queuing(MSMQ)的高可用性系统。 目前我们正在为MSMQ收集高可用性选项。 我们计划使用Windows Server 2008 R2作为底层操作系统。
哪些特定的技术可以使MSMQ服务高度可用?
我们考察了Windows故障转移群集和NLB,但群集似乎有太高的故障转移时间(超过10秒),NLB不支持事务性消息。
有没有人有像VM Ware Fault Tolerance或类似的解决scheme的经验? 您是否知道任何其他解决scheme为MSMQ提供高可用性,同时支持低故障切换时间(<5秒)和事务消息?
你一定要看看Server 2008的群集function。 您可以configuration消息队列服务应用程序以提供高可用性和容错性。 build立这个networking的主要先决条件是build立一个SAN。
http://msdn.microsoft.com/en-us/library/dd897482(v=bts.10).aspx
另外,如果要详细了解如何设置,请访问Microsoft虚拟实验室: http : //go.microsoft.com/?linkid = 7091154
如果您需要低于典型的MSCS故障转移时间(他们往往是相当缓慢),考虑设置与MSMQ over HTTP的NLB。
这将考虑可用性,并可以扩展到几十个节点。
如果你需要HA,MSMQ并不是一个很好的解决scheme。 其他产品呢? 我会build议检查RabbitMQ,支持得相当好,迁移不是很痛苦。