如果你想使用 WCF,那么它们真的很重要。只有当您使用他们的直接 API 时,您才会获得其中的大部分。
MSMQ - 随每个 Windows 安装一起安装的 MS 技术。它只是支持队列的传输技术。
Tibco EMS - 支持队列和主题(发布/订阅)的 Tibco 技术。价格昂贵,更适合企业场景。您很可能还需要其他 Tibco 工具和技术来实施完整的 SOA 解决方案(Tibco ActiveMatrix 产品套件)。.NET 和 WCF 将只是连接到这个基础设施的应用程序,它更适合 Java 世界。它也可以在非 Windows 平台上运行,并与 Tibco Business Works 一起为许多 LOB 应用程序提供连接器(适配器)。我喜欢 Tibco 产品的 API,但我真的不喜欢他们工具的 UI。
IBM MQ - IBM 技术支持队列,它还以某种方式模拟主题(发布/订阅)。同样,它是昂贵的商业解决方案,更适合涉及大型机的企业场景——这是 MQ 的最大优势——它“无处不在”地运行。但这就是优势的终结。Java 和 .NET 的 API 都很糟糕。.NET API 充满了错误,无法按预期工作。IBM 不理解 .NET 库版本控制,这在将客户端应用程序移动到安装了不同 MQ 客户端的机器等时会导致严重问题。
编辑:
有几个关于 MQ 有什么问题的问题/评论?作为几个示例,您可以查看我的 MQ 问题。并非每个问题实际上都是一个问题,但您会发现其中很少有人直接指向错误。这些问题已经可以在新的 MQ 客户端版本中得到解决,但这并不意味着没有其他问题。一般来说,我发现 MQ .NET API 是我用过的最令人沮丧的库——它甚至击败了讨厌的 SharePoint。
另一方面,如果您只需要发送和接收一些消息并且不打算做任何特殊的事情或使用低级功能,那么您应该没问题。最后,API 被使用了一段时间,常见的用例应该可以工作——如果你不乐意遇到回归错误的话。