Message Queue for Apache RocketMQ provides HTTP client SDKs for multiple programming languages and supports access over the Internet. This topic describes the release notes of HTTP client SDKs for multiple programming languages.

Support for multiple programming languages

Message Queue for Apache RocketMQ supports RESTful HTTP communication and provides SDKs for seven programming languages. More features will be developed for HTTP client SDKs to align with those of TCP client SDKs. For more information about feature differences between HTTP client SDKs and TCP client SDKs, see the following topics:

Usage notes

  • Make sure that the instance you want to access is in the same region as the HTTP endpoint.

    For example, if your Message Queue for Apache RocketMQ instance is deployed in the China (Hangzhou) region, you can access the instance only by using an endpoint of the China (Hangzhou) region. You can access the instance in the following scenarios:

    • If your client is located in the China (Hangzhou) region, we recommend that you access the instance by using the internal HTTP endpoint of the instance.
    • If your client is located in a region other than China (Hangzhou), make sure that your client can connect to the Internet and can access the instance by using the public HTTP endpoint of the instance.
  • Messages can be transmitted between TCP and HTTP clients. HTTP uses Extensive Markup Language (XML) serialization. Therefore, the message attributes, content, tags, and keys must be compiled with XML.

    If they contain characters that are not compiled with XML, the following errors may occur:

    • Failed to send messages over HTTP.
    • Failed to consume messages over HTTP when messages are sent over TCP.

    You can use Base64 to encode or decode messages that are not complied with XML.