消息队列 RocketMQ 版的标准版实例提供了通过 HTTP 协议的多语言 SDK 接入的能力,并支持公网访问。本文介绍 HTTP 协议下的多语言 SDK 各版本所支持的特性以及相关使用需知。

多语言支持

消息队列 RocketMQ 版支持 RESTful 风格的 HTTP 协议通信,并提供了以下 7 种语言的 SDK:

SDK 和示例代码

请到消息队列 RocketMQ 版 HTTP SDK 库下载所需语言的 SDK、阅读 SDK 使用说明,以及查看消息收发的示例代码。

使用需知

  • 如需使用 HTTP 协议的 SDK,请确保您的消息队列 RocketMQ 版实例为标准版。您可在消息队列 RocketMQ 版控制台实例详情页面查看实例类型来判断您的实例是否为标准版。
  • 请勿跨地域访问资源,确保您需访问的资源在同一地域。例如您的消息队列 RocketMQ 版标准版实例在地域 A,则对应的 Topic、Group ID、消费端、生产端等都应位于地域 A。
  • 由于 HTTP 协议采用 XML 序列化,因此消息的属性、内容、Tag、Key 等必须符合 XML 规范。

    如果包含了不符合 XML 规范的相关字符,那么可能出现以下情况:

    • 采用 HTTP 协议发送消息时,发送消息失败;
    • 采用 TCP 协议发送消息,HTTP 协议消费消息时,消费消息失败。

    您可以自行采用 Base64 编码对发送的消息进行编(解)码,以适用于此类不符合 XML 规范的消息收发场景。

HTTP 协议所支持的功能通过不断迭代,与 TCP 协议所支持的功能逐渐对齐。下文就 HTTP 协议的迭代版本所支持的功能对比 TCP 协议最新版的功能进行说明。

V1.0.1

发布日期:2019 年 6 月 10 日

消息队列 RocketMQ 版的 HTTP SDK V1.0.1 的版本说明如下:

注意 Node.js 语言的 SDK 版本号为 V1.0.2,其它语言的 SDK 版本号均为 V1.0.1。
  • 高级特性消息中已支持定时/延时消息(最长定时不能大于 3 天)和事务消息,暂不支持顺序消息;
  • 已支持集群消费模式,不支持广播消费模式;
  • 仅支持使用 Message ID(消息 ID)查询消息轨迹;
  • TCP 和 HTTP 的 Group ID 不可以共用,需要分别创建。

V1.0.0

发布日期:2019 年 1 月 30 日

消息队列 RocketMQ 版的 HTTP SDK V1.0.0 的版本说明如下:

注意 Node.js 语言的 SDK 版本号为 V1.0.1,其它语言的 SDK 版本号均为 V1.0.0。
  • 暂不支持高级特性消息,包括顺序消息、事务消息、定时/延时消息;
  • 已支持集群消费模式,不支持广播消费模式;
  • 暂不支持查询消息轨迹;
  • TCP 和 HTTP 的 Group ID 不可以共用,需要分别创建。