MSMQ的主要优点

fun*_*gdu 10 .net c# msmq

我见过很多套接字应用,其中有MSMQ的使用.但是当我详细介绍时,我认为我们可以在没有MSMQ的情况下做到这一点,所以我想知道MSMQ的主要优点是什么.为什么有人在他自己的应用程序中使用MSMQ.

ken*_*n2k 20

MSMQ是一个很棒的Windows.它基本上是一个面向消息的中间件,它在一些软件架构中有很大帮助.

这主要解决异步消息处理的常见用例:例如,您有一个Service1与软件体系结构的另一部分通信(发送消息)的服务Service2.

主要问题:如果Service2突然变得不可用怎么办?邮件会丢失吗?如果您使用MSMQ,它将不会:Service1将消息发送到队列中,并Service2在可用时出列.

MSMQ将解决以下常见问题:

  • 暂时不可用的服务:消息持久存储在磁盘上,并在服务再次可用时出列,因此不会丢失任何消息
  • 因为它是完全异步的,所以在准时峰值负载的情况下它会有很大的帮助:你Service2不会在繁重的负载下死亡,它只是一个接一个地出列并处理消息

MSMQ与另一个面向消息的中间件的优点:

  • 免费和内置(Windows附带)
  • 与其他Microsoft产品的良好集成(例如System.Messaging.Net中的命名空间用于处理MSMQ)
  • 监控功能(使用perfmon计数器:每秒收到的消息数...)
  • 交易队列
  • 磁盘上的持久性,因此消息永远不会丢失
  • 通过网络提供(远程队列)

  • 如果MSMQ突然变得不可用怎么办?难道我们不陷入同样的​​陷阱吗? (4认同)