【问题标题】:IBM MQ publish/subscribe send message to one subscriberIBM MQ 发布/订阅向一个订阅者发送消息
【发布时间】:2015-06-30 06:34:25
【问题描述】:

我想构建一个发布/订阅程序来计算集群上的矩阵操作。

当发布者向某个主题发送消息时,消息会复制到所有订阅者。

我想将消息副本发送给一个订阅者,然后消息会被删除,而不是发送给其他订阅者。

【问题讨论】:

    标签: java jms ibm-mq


    【解决方案1】:

    有两种方法可以做到这一点。

    1. 进行管理订阅并让所有订阅者从订阅指向的队列中读取消息。
    2. 使用 MQ V8.0、新的 JMS 2.0 接口和 Shared Subscription 功能。

    请注意,在这两种情况下,所有订阅者都连接到同一个队列管理器。尽管 Pub/Sub 创建了一条逻辑消息,但当它被广播到其他队列管理器时,它变成了多条物理消息,并且订阅者对它们的消费在整个网络中是不协调的。

    【讨论】:

      【解决方案2】:

      使用队列,而不是主题。主题是为一对多发布而设计的,队列允许多个侦听器,但每条消息仅传递给一个侦听器。

      【讨论】:

      • 实际上,从 JMS 2.0 开始,OP 查询的功能是规范的一部分,称为shared subscription。也就是说,这是一种有效的模式,并且在 JMS 2.0 之前,人们通过将应用程序的多个实例定向到订阅传递主题消息的队列来实现它。事实上,新功能的存在因为它是一种常见的模式。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-11
      • 2019-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多