代码之家  ›  专栏  ›  技术社区  ›  Georgy Bolyuba

持久订阅能否在客户端重新启动后继续存在?

  •  4
  • Georgy Bolyuba  · 技术社区  · 16 年前

    让我澄清一下。JMS 1.1规范规定如下:

    /* Reconnect to a durable subscription */
    session.createDurableSubscriber(newsFeedTopic, "mySubscription");
    

    但是,有一些重要的限制需要注意:

    • 客户端必须连接到同一个连接。
    • 如果指定了消息选择器,则它也必须相同。

    2 回复  |  直到 16 年前
        1
  •  2
  •   Sarfaraz Nawaz    10 年前

    在规范中,看一下4.3,其中提到连接对象可以包含一个唯一的客户机标识符,4.3.2说明。。。

    客户端标识符的目的是将连接与其对象相关联 由提供者代表客户维护的状态。根据定义 是的。

    相同的 不同的连接 手柄 (使用WMQ术语)。

        2
  •  2
  •   Romain Hippeau    16 年前

    如果持久订阅没有活动订阅服务器,JMS将保留订阅的消息,直到订阅服务器接收到消息,或者直到消息过期,或者直到持久订阅被删除。这使得订户应用程序能够在一段时间内与JMS提供程序断开连接进行操作,然后重新连接到提供程序并处理在它们不在时发布的消息。