在MSMQ中是否存在类似JMS Topic的等效函数?

时间:2014-11-14 11:23:18

标签: .net msmq eai

在JMS主题中是一个核心概念。它是发布/订阅模式的表示。

  1. 发布者在频道上发布消息
  2. 订阅者订阅该频道并从该频道接收消息
  3. 当每个订阅者收到消息时,频道会删除该消息
  4. MSMQ / .NET中是否有类似的功能?

    注意:出版商不应关心有多少订户或哪些用户。

1 个答案:

答案 0 :(得分:2)

MSMQ没有直接的主题概念。在正常操作中,一条消息仅传送到一个接收器 - 一旦从队列中读取,它就会变得不可用于尝试从同一队列读取的任何其他接收器。 MSMQ有一个triggers的概念,它试图通过向多个接收者传递消息来克服这种限制,但它绝对与主题不同(并且不那么容易使用)。

如果您的用例确实需要主题,您将需要创建自己的多播"服务器"通过MSMQ与订阅者和发布者进行通信,或者您需要选择更合适的技术 - 例如ServiceBus for Windows,Rabbit MQ,Active MQ等。