ApsaraMQ for RocketMQ released new versions of the TCP client SDK for Java and the TCP client SDK for C++ on October 18, 2021. In this release, the major versions of the TCP client SDKs are upgraded. This topic describes the SDK version information, the regions that support the upgrade, and the feature changes.
SDK version information
The following table describes the information about the upgraded SDK versions.
Protocol | Programming language | Version number |
TCP | Java | |
C++ |
Usage notes
Supported regions
You can upgrade the TCP client SDK for Java to V2.x.x.Final only in the following regions: China (Hangzhou), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Shenzhen), China (Chengdu), China (Hong Kong), Germany (Frankfurt), and Indonesia (Jakarta).
ImportantTo ensure that you can use the TCP client SDK for Java to connect to ApsaraMQ for RocketMQ, do not upgrade your TCP client SDK for Java to V2.x.x.Final in other regions.
The TCP client SDK for C++ V3.x.x is available in all regions.
Supported networks
TCP client SDK for Java V2.x.x.Final: allows you to access ApsaraMQ for RocketMQ only in virtual private clouds (VPCs).
ImportantIf you use an existing ApsaraMQ for RocketMQ instance and access the instance over the classic network, do not upgrade your TCP client SDK for Java to V2.x.x.Final. Otherwise, you cannot access the ApsaraMQ for RocketMQ instance.
TCP client SDK for C++ V3.x.x: No limit is imposed on networks.
Limits on namespaces
TCP client SDK for Java V2.x.x.Final: supports only instances that contain namespaces. If you use an instance that does not contain a namespace, do not upgrade your TCP client SDK for Java to V2.x.x.Final.
TCP client SDK for C++ V3.x.x: supports only instances that contain namespaces. If you use an instance that does not contain a namespace, do not upgrade your TCP client SDK for Java to V3.x.x.
By default, all Message Queue for Apache RocketMQ 5.x instances contain namespaces. To view whether a Message Queue for Apache RocketMQ 4.x instance contains a namespace, go to the Basic Information section of the Instance Details page in the ApsaraMQ for RocketMQ console.
Feature changes
The following table describes the differences between the supported features before and after you upgrade the major version of your TCP client SDK.
Feature | Version before upgrade SDK for Java: V1.x.x.Final SDK for C++: V2.x.x or V1.x.x | Version after upgrade SDK for Java: V2.x.x.Final SDK for C++: V3.x.x |
Load balancing is performed based on queues. If a queue-based load balancing policy is used, the following issues may occur:
| Load balancing is performed based on messages. This leads to more balanced message loads. This also prevents idle consumers or message accumulation that are caused by queue-based load balancing policies. | |
A small number of metrics are supported, such as the number of received messages, the number of sent messages, and the number of accumulated messages. |
| |
Traces of advance-featured messages cannot be queried. Data that is related to message accumulation is not included in trace query results. |
|