8.2. 创建持久订阅


持久订阅是远程服务器上代表消息接收器的一种状态。通常,当客户端关闭时,消息接收器会被丢弃。但是,由于持久订阅是永久的,客户端可以从它们分离,然后在以后重新连接。当客户端重新附加时,分离时收到的所有消息都可用。

持久订阅通过组合客户端容器 ID 和接收器名称组成订阅 ID 来唯一标识。这些必须具有稳定值,以便可以恢复订阅。

  1. 将连接容器 ID 设置为 stable 值,如 client-1:

    var container = rhea.create_container({id: "client-1"});
    Copy to Clipboard Toggle word wrap
  2. 使用稳定名称(如 sub-1 )创建接收器,并通过设置 durableexpiry_policy 属性配置接收器源以实现持久性:

    var receiver_opts = {
        source: {
            address: "notifications",
            name: "sub-1",
            durable: 2,
            expiry_policy: "never"
        }
    }
    
    conn.open_receiver(receiver_opts);
    Copy to Clipboard Toggle word wrap

要从订阅中分离,使用 receiver.detach() 方法。要终止订阅,使用 receiver.close() 方法。

如需更多信息,请参阅 persistent -subscribe.js 示例

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat