.net 实现消息总线体系结构

.net 实现消息总线体系结构,.net,architecture,msmq,messaging,.net,Architecture,Msmq,Messaging,我目前正在我的公司为一种新的消息总线体系结构进行分析和设计。我过去曾尝试过MSMQ做类似的事情,它工作得很好,并考虑在这个项目中再次做同样的事情,但使用WCF作为API,而不是使用System.Messaging API。有没有人在WCF中使用MSMQ的经验?比System.Messaging API更容易使用吗?使用WCF而不是System.Messaging有什么好处?反之亦然?IMHO,有这么多好的、灵活的、经过验证的总线体系结构可供选择(,),实现自己的总线体系结构将是一个巨大的挑战。这

我目前正在我的公司为一种新的消息总线体系结构进行分析和设计。我过去曾尝试过MSMQ做类似的事情,它工作得很好,并考虑在这个项目中再次做同样的事情,但使用WCF作为API,而不是使用System.Messaging API。有没有人在WCF中使用MSMQ的经验?比System.Messaging API更容易使用吗?使用WCF而不是System.Messaging有什么好处?反之亦然?

IMHO,有这么多好的、灵活的、经过验证的总线体系结构可供选择(,),实现自己的总线体系结构将是一个巨大的挑战。这不是一件小事

Udi在中对其进行了很好的描述。

Apache ActiveMQ(开源)message broker也有一个.NET客户端:


与Apache Camel和Apache ServiceMix一起,企业集成模式和企业服务总线系统很容易设置。

很抱歉,我的回答来得很晚,但希望我的回答对MSMQ 4.0用户有用(但对更高版本的用户不一定有用)

和System.Messaging都是MSMQ API上的包装器。WCF更加复杂,但确实有以下好处:

  • 应用程序业务流程的OO视图,而不是其通信管道
  • 免费提供端到端消息加密和身份验证。系统。消息传递仅支持在线加密,而不支持存储中的加密
  • 如果愿意,您可以在IIS中托管,而不是构建自己的自定义主机
  • 消息关联是免费的。这允许您将消息自动分组到会话中
  • 事务批处理是免费的

mausch感谢您提供有关信息总线系统的信息。我不知道已经有这样的系统向公众开放了!这是如何回答OP的问题的,即他应该使用直接向上的MSMQ或WCF与MSMQ绑定的本质是什么?下面的答案我觉得更符合OP的问题。使用WCF,您不需要安装IIS来提供任何类型的服务。回答有误导性。@argatxa:我是说,使用WCF,您可以在IIS中托管。我同意您不需要在IIS中托管。我将编辑我的答案以反映这一点。您的第一次比较是正确的,但其他人的比较是错误的。1) MSMQ和WCF都有相关ID。2) MSMQ有事务3)MSMQ使用身份验证和授权。也有人认为MSMQ比WCF更难,因为它是一个母亲API@Micky:此答案是5年前的,讨论了MSMQ 4.0。我认为您应该根据当前版本(6.3)创建自己的答案。我早就搬到拉比去了。