Microsoft 的 MQ 系列版本是什么?
在大学里,我们学习了 IBM 的 MQ 系列,它是一个中间件,您可以向其发送消息,并将消息保留在队列中。 MQ 系列具有所谓的保证消息传递,这意味着如果您将消息发送到队列,即使包含队列消息的服务器关闭并再次打开,队列也将被保留。
Microsoft 是否有适用于 C# 和 Sharepoint 的类似技术?
In college we studied IBM's MQ Series which was middleware that you could send messages to that would be persisted in a Queue. MQ Series had what was called Guaranteed Message delivery, meaning that if you got the message sent to the Queue, the Queue would be persisted even if the server containing the queue message was turned off and turned back on again.
Does Microsoft have a similar technology that works with C# and Sharepoint?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是的,它称为 MSMQ(Microsoft 消息队列)。
此处是 MSMQ 的官方 Microsoft 常见问题解答。
Yes, it is called MSMQ (Microsoft Message Queuing).
Here is the official Microsoft FAQ for MSMQ.
如果您想开源,请查看 Apache Foundation 的 ActiveMQ。
ActiveMQ 是跨平台的。库可用于 C# 和其他语言: http://activemq.apache.org/cross-语言-clients.html
If you'd like to go open-source, have a look at ActiveMQ from Apache Foundation.
ActiveMQ is cross platform. Libs are available for C# and other languages: http://activemq.apache.org/cross-language-clients.html
由于您谈论的是 Sharepoint,因此意味着您的后端是 SQL Server。 SQL Server 拥有自己的可靠消息传递技术,即 Service Broker。相对于 MSMQ 的主要优点是完全集成到数据库引擎中,这意味着一个单一产品即可部署和维护、一致的备份/恢复、集成到基于 SQL Server 的高可用性/灾难恢复性(镜像、SQL 集群)、语言/API 与数据库集成(您可以在队列上运行 SELECT!)等。因为它消除了在 MSMQ 和数据库之间进行两阶段提交 DTC 来处理每条消息的需要,所以它提供了显着提高吞吐量。此外,可扩展性和功能也显着提高(MSMQ 有 4GB 队列 限制,SSB 有 2GB 消息 限制,队列限制是(总)磁盘容量,基本上是数据库限制) 。主要缺点是缺乏像 WCF MSMQ 通道这样的客户端编程 API。使用 SSB,您必须使用诸如
SEND
和接收
。Since you're talking about Sharepoint, it implies your back end is SQL Server. SQL Server has it's own reliable messaging technology, namely Service Broker. The main advantage over MSMQ is that is completely integrated into the database engine, which means one single product to deploy and maintain, consistent backup/restore, integration into the SQL Server based high-availability/disaster recoverability (mirroring, SQL clustering), language/API integration with the database (you can run SELECT over your queues!) etc. Because it eliminates the need to engage in two-phase-commit DTC between MSMQ and your database to precess each message, it offers Significantly higher throughput. Also the scalability and capabilities are significantly higher (MSMQ has a 4GB queue limit, SSB has 2GB message limit and queue limit is the (total) disks capacity, basically database limits). The main drawback is lack of a client side programming API like WCF MSMQ channel. With SSB you have to program T-SQL using verbs like
SEND
andRECEIVE
.