什么是Microsoft的MQ系列版本?

时间:2011-04-20 21:00:59

标签: c# sharepoint-2010 message-queue mq

在大学里,我们研究了IBM的MQ系列,这是一个可以发送消息的中间件,它将被保存在一个队列中。 MQ Series具有所谓的保证消息传递,这意味着如果您将消息发送到队列,即使包含队列消息的服务器已关闭并再次重新打开,队列也会被保留。

Microsoft是否有与C#和Sharepoint一起使用的类似技术?

3 个答案:

答案 0 :(得分:5)

是的,它被称为MSMQ(Microsoft消息队列)。

Here是MSMQ的官方Microsoft常见问题解答。

答案 1 :(得分:1)

如果您想开源,请查看Apache Foundation的ActiveMQ。

ActiveMQ是跨平台的。 Libs可用于C#和其他语言:http://activemq.apache.org/cross-language-clients.html

答案 2 :(得分:1)

由于您正在谈论Sharepoint,它意味着您的后端是SQL Server。 SQL Server拥有自己的可靠消息传递技术,即Service Broker。与MSMQ相比的主要优势在于它完全集成到数据库引擎中,这意味着一个产品可以部署和维护,一致的备份/恢复,集成到基于SQL Server的高可用性/灾难恢复(镜像,SQL集群),语言/ API与数据库集成(您可以在队列上运行SELECT!)等。因为它消除了在MSMQ和您的数据库之间进行两阶段提交DTC以进行每条消息的需要,它提供显着吞吐量更高。此外,可扩展性和功能明显更高(MSMQ具有4GB 队列限制,SSB具有2GB 消息限制,队列限制是(总)磁盘容量,基本上是数据库限制) 。主要缺点是缺少像WCF MSMQ频道这样的客户端编程API。使用SSB,您必须使用SENDRECEIVE等动词对T-SQL进行编程。