使用须知
云消息队列 RocketMQ 版提供了通过HTTP协议的多语言SDK接入的能力,并支持公网访问。本文介绍HTTP协议下的多语言SDK的版本说明。
多语言支持
云消息队列 RocketMQ 版支持RESTful风格的HTTP协议通信,并提供了7种语言的SDK。HTTP协议的SDK所支持的功能通过不断迭代,与TCP协议的SDK所支持的功能逐渐对齐。HTTP协议的迭代版本所支持的功能与TCP协议功能对比说明,请参见:
注意事项
支持HTTP协议SDK接入为云消息队列 RocketMQ 版商业版的增强功能,开源自建RocketMQ集群不支持该功能,无法使用HTTP协议的SDK接入。
确保您需要访问的资源和HTTP接入点在同一地域。
例如您的云消息队列 RocketMQ 版实例在华东1(杭州)地域,则只能使用华东1(杭州)地域的接入点来访问该地域的实例。您可以实现以下场景的资源访问:
如果您的客户端在华东1(杭州)地域,为了最佳体验,请使用该实例的HTTP内网接入点访问该实例资源。
如果您的客户端在华东1(杭州)以外的任一地域,请确保客户端可连上互联网,并使用该实例的HTTP公网接入点访问该实例资源。
TCP协议的客户端和HTTP协议的客户端之间可以实现消息收发。但由于HTTP协议采用XML序列化,因此消息的属性、内容、Tag、Key等必须符合XML规范。
说明XML的规范详情,请参见XML语法。您也可按需使用第三方工具xml_validator校验XML语法的规范性。
如果包含了不符合XML规范的相关字符,那么可能出现以下情况:
采用HTTP协议发送消息时,发送消息失败。
采用TCP协议发送消息,HTTP协议消费消息时,消费消息失败。
您可以自行采用Base64编码对发送的消息进行编(解)码,以适用于此类不符合XML规范的消息收发场景。