AMQ Clients 2.11 发行注记

Red Hat AMQ Clients 2.11

Red Hat AMQ Clients 发行注记

摘要

本发行注记包含有关 AMQ Clients 2.11 发行版本中包含的新功能、增强功能、修复和问题的最新信息。

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。有关更多详情,请参阅我们的首席技术官 Chris Wright 提供的消息

第 1 章 新增和改变的功能

注意

此发行版本为 Node.js 引进了新的最小版本。AMQ JavaScript 客户端需要 Node.js 版本 14 或更高版本。如需更多信息,请参阅 Red Hat AMQ 支持的配置

  • ENTMQCL-3126 - 在 FIPS 模式中操作支持

    所有客户端都已在启用了 FIPS 模式的 Red Hat Enterprise Linux 8(RHEL 8)中测试。所有基于 Java 的客户端都已在启用了 FIPS 模式的 OpenJDK 11 中测试。

    有关在 RHEL 8 中启用 FIPS 模式的详情,请参考 RHEL 8 安全强化

    有关在 OpenJDK 11 中启用 FIPS 模式的详情,请参考使用 FIPS 的 RHEL 上配置 OpenJDK 11

1.1. AMQ C++

  • ENTMQCL-2957 - 改进 C++ API 进行交付跟踪

    AMQ C++ 客户端现在为交付和跟踪器对象上的 AMQP 交付标签提供 accessors。

1.2. AMQ JMS

第 2 章 修复的问题

2.1. AMQ C++

  • ENTMQCL-2975 - 当用户将空向量传递给 connection_options::failover_urls 时重新连接 Crash

    在产品的早期版本中,客户端程序试图在提供故障切换 URL 列表为空时重新连接崩溃。

    在本发行版本中,重新连接可以正常工作。

2.2. AMQ Python

  • ENTMQCL-2242 - KeyError if enabled and message has annotations, but no trace context

    在产品的早期版本中,当启用追踪时,客户端会出现意外异常,它遇到带有注解的消息,但没有对 trace 上下文的注解。

    在此版本中,追踪在没有 trace 上下文的情况下可以正常工作。

第 3 章 重要备注

3.1. 长期支持

AMQ Clients 2.11 作为长期支持(LTS)发行版本提供。在一系列微版本(2.11.1、2.11.2、2.11.3 等)中,为 AMQ Clients 2.11 提供了程序错误修正和安全公告,其中至少为 12 个月。

请注意 LTS 发行流的以下重要点:

  • LTS 发行流仅提供程序错误修正。此流中不会添加新增强功能。
  • 要保留在受支持的配置中,您必须升级到 LTS 发行流中的最新微版本。
  • 从 AMQ Clients 2.11.0 GA 开始,LTS 版本最少支持 12 个月。

3.2. AMQ C++

  • Unsettled 接口

    AMQ C++ 消息传递 API 包括未经验证且在将来的版本中可能会更改的类和方法。请注意,使用这些接口可能需要在以后更改应用程序代码。

    这些接口在 API 引用中被标记为 Unsettled API。它们在 proton::codecproton::io 命名空间中包括接口,并在 proton 命名空间中包括以下接口。

    • listen_handler
    • messaging_handler上的 on_sender_drain_starton_sender_drain_finish 方法
    • 发送者 上排空返回_credit 方法
    • 接收器排空和排空 方法

    标题文件中存在的 API 元素但尚未记录的 API 元素被视为未设置,并可能会有所改变。

  • 弃用的接口

    在以后的版本中,计划在 API 引用中标记为已弃用的接口,以便在以后的发行版本中删除。

    此发行版本弃用了 proton 命名空间中的以下接口。

    • void_function0 - 使用 work 类或 C++11 lambdas 替代。
    • default_container - 使用 容器 类。
    • URL 和 url _error - 使用第三方 URL 库。

3.3. 首选客户端

通常,支持 AMQP 1.0 标准的 AMQ 客户端是新的应用程序开发的首选。但是,会有以下例外:

  • 如果您的实施需要分布式事务,请使用 AMQ Core Protocol JMS 客户端。
  • 如果您的域中需要 BYO 或 STOMP(用于 IoT 应用程序),请使用社区支持的 [...] 或 STOMP 客户端。

3.4. 旧客户端

  • 弃用 AMQ OpenWire JMS 客户端

    AMQ OpenWire JMS 客户端现在在 AMQ 7 中弃用。建议使用这个客户端的用户迁移到 AMQ JMS 或 AMQ Core Protocol JMS。

  • CMS 和 NMS API 弃用

    ActiveMQ CMS 和 NMS 消息 API 在 AMQ 7 中弃用。建议 CMS API 的用户迁移到 AMQ C++,以及 NMS API 的用户迁移到 AMQ .NET。CMS 和 NMS API 在 AMQ 7 中可能会降低功能。

  • 弃用旧的 AMQ C++ 客户端

    传统的 AMQ C++ 客户端(之前在 MRG 消息传递中提供的 C++ 客户端)已在 AMQ 7 中弃用。建议将此 API 的用户迁移到 AMQ C++。

  • 不支持 Core API

    不支持 6.2 核心 API 客户端。这个客户端与 AMQ Core Protocol JMS 客户端不同,后者被支持。

3.5. 上游版本