本文為您介紹雲訊息佇列 RocketMQ 版支援的SDK版本資訊。
各版本SDK說明
雲訊息佇列 RocketMQ 版各版本SDK和功能支援情況如下所示:
下表中的✅表示支援該功能,❌表示不支援該功能。
對比項 | ||||||
協議 | gRPC協議v2 | Remoting協議 | Remoting協議 | Remoting協議 | gRPC協議v1 | HTTP協議 |
可訪問的執行個體 | 5.x系列執行個體 |
|
|
| 4.x系列執行個體 | 4.x系列執行個體 |
使用建議 | 推薦5.x gRPC SDK。
|
|
| |||
普通、順序、事務、定時訊息的發送功能 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
✅ | ❌ | ❌ | ❌ | ❌ | ❌ | |
並發消費 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
順序消費 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
順序消費消費並發度最佳化 | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
廣播消費 | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ |
流式消費(串連 Flink 等) | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
訊息軌跡 | ✅ | ✅ | 4.5.2及以上版本支援 | ✅ | ✅ | ❌ |
✅ | ❌ | ❌ | ❌ | ❌ | ❌ | |
✅ | 僅支援5.x系列執行個體 | ❌ | ❌ | ❌ | ❌ | |
批量發送 | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
SDK使用限制
同一個ConsumerGroup下的不同 Consumer 使用相同協議的用戶端。
同一ConsumerGroup下,從Remoting協議SDK升級至gRPC協議SDK的灰階過程中的注意事項:
順序投遞的ConsumerGroup暫不支援升級。
並發投遞的ConsumerGroup可以支援平滑升級,期間會有少量訊息重複。
往同一個順序Topic發送訊息,所有生產者的用戶端協議要相同,即都是Remoting協議或都是gRPC協議用戶端。
順序投遞ConsumerGroup如果同時滿足以下a、b、c 三個步驟,會有順序消費位點回退的風險:
該順序consumerGroup先使用Remoting協議SDK運行。
因為業務需要將SDK升級為gRPC協議SDK。
將SDK回退到了Remoting協議SDK。
RocketMQ ONS TCP 2.x SDK只支援部分地區,詳情請參見使用限制。
RocketMQ 5.x gRPC SDK
協議 | 語言 | 相關文檔 |
gRPC協議v2 | Java SDK | |
C# SDK | ||
Go SDK | ||
Python SDK | ||
C++ SDK |
RocketMQ 5.x Remoting SDK
協議 | 語言 | 相關文檔 |
Remoting協議 | Java SDK |
RocketMQ 4.x/3.x SDK
協議 | 語言 | 相關文檔 |
Remoting協議 | Java SDK | |
C++ SDK |
RocketMQ ONS TCP 1.x SDK
協議 | 語言 | 相關文檔 |
Remoting協議 | Java SDK | |
C++ SDK | ||
.NET SDK |