全部產品
Search
文件中心

ApsaraMQ for RocketMQ:4.x和5.x版本差異及相容性說明

更新時間:Feb 24, 2025

雲訊息佇列 RocketMQ 版是阿里雲基於Apache RocketMQ構建的低延遲、高並發、高可用、高可靠的分布式“訊息、事件、流”統一處理平台。隨著Apache RocketMQ 5.0版本的發布,阿里雲雲訊息佇列 RocketMQ 版將為您提供更加穩定可靠的服務端5.x版本。本文介紹雲訊息佇列 RocketMQ 版服務端5.x版本和4.x版本的差異及相容性說明。

5.x版本優勢

和歷史服務端版本相比,雲訊息佇列 RocketMQ 版5.x版本具有如下優勢:

  • 架構更先進

    全面採用儲存和計算分離的訊息架構,儲存和計算可以獨立按需水平擴充,滿足高效彈性營運和高效能大規格能力的訴求。

  • 開發門檻更低

    主推和Apache RocketMQ完全一致的用戶端SDK接入,同時相容歷史所有版本的SDK和API介面。

    支援VPC內部安全識別,上雲只需修改存取點,無需考慮代碼改造。

  • 營運門檻更低

    針對線上容量水位評估、業務峰穀彈性、日常灰階環境等常見困難問題提供自適應彈性、輕量測試環境版等解決方案,整體營運門檻和風險更低。

  • 成本更彈性

    通過雲底座技術最佳化,訊息收發計算能力支援預留+突發流量彈性組合,業務方無需為突發流量預留大量Buffer。

    訊息儲存按量使用付費,相比掛載雲端硬碟無法縮容的情況,具備極大的彈性優勢。

  • 售賣形態更完善

    提供更完善階梯系列,提供完整的包月和小時價售賣形態。

SDK相容性約束

雲訊息佇列 RocketMQ 版5.x版本相容大部分存量TCP協議SDK,服務端版本和各用戶端SDK版本的相容情況如下表所示,例如,您購買了5.x版本的執行個體,用戶端使用的是5.x對應的最新版SDK,則5.x版本服務端的功能全部支援;若您的用戶端使用4.x版本對應的SDK,則基礎訊息收發功能支援,部分監控指標、訊息軌跡資料無法擷取。

服務端版本

協議

用戶端版本

相容性

約束限制

5.x版本執行個體

gRPC協議v2

RocketMQ 5.x SDK

相容

雲訊息佇列 RocketMQ 版5.x版本執行個體的所有功能完全支援。

Remoting協議

RocketMQ 5.x SDK

相容

訊息收發功能支援,但Trace、Metrics部分指標不支援展示。

說明

不支援展示的指標包括生產者指標和消費者指標。詳情參見:Metrics指標詳情

RocketMQ 4.x/3.x SDK

相容

RocketMQ ONS TCP 1.x SDK

相容

gRPC協議v1

雲訊息佇列 RocketMQ 版ONS TCP 2.x SDK

不相容

5.x版本執行個體暫不支援使用ONS TCP 2.x版本的SDK接入。

HTTP協議

雲訊息佇列 RocketMQ 版ONS HTTP SDK

不相容

雲訊息佇列 RocketMQ 版5.x SDK不支援HTTP協議。

4.x版本執行個體

gRPC協議v2

雲訊息佇列 RocketMQ 版5.x SDK

不相容

4.x版本執行個體不支援使用5.x版本對應的SDK串連訪問。

Remoting協議

RocketMQ 4.x/3.x SDK

相容

雲訊息佇列 RocketMQ 版4.x版本執行個體的功能完整支援。

RocketMQ ONS TCP 1.x SDK

相容

gRPC協議v1

RocketMQ ONS TCP 2.x SDK

相容

HTTP協議

RocketMQ ONS HTTP SDK

相容

4.x和5.x功能相容說明

雲訊息佇列 RocketMQ 版5.x版本執行個體基於大規模企業客戶的生產實踐經驗,對訊息收發流程中的部分功能行為進行了最佳化調整。因此,部分情境下的參數配置、功能行為會有差異,一般情況下不影響主要訊息收發鏈路,對於存量4.x版本升級到5.x版本,請您根據業務情況評估風險。

具體的功能行為差異如下:

功能差異項

4.x版本

5.x版本

說明

定時訊息最大定時時間長度

40天

  • 訂用帳戶、隨用隨付標準版,Serverless標準版與專業版最大支援7天。

  • 訂用帳戶、隨用隨付專業版,鉑金版最大支援40天。

超長定時參數會給系統帶來穩定性風險,建議定時時間長度不要設定過長,使用短定時類比業務情境。更多資訊,請參見定時/延時訊息

如有4.x存量執行個體遷移,當前最大定時時間長度不滿足要求,請您提交工单諮詢

HTTP協議支援情況

支援

不支援

5.x版本暫不支援HTTP協議,若您的4.x存量執行個體使用的HTTP協議,建議暫緩升級。

RAM授權策略

資料鏈路+管控鏈路

支援管控鏈路,但授權策略和4.x版本不一致

  • 5.x版本採用更標準的ARN和策略定義,存量使用者需要重新按照5.x版本權限原則進行授權才能正確使用5.x版本資源。

  • 5.x版本資料鏈路不再支援RAM授權策略,採用RocketMQ開源ACL2.0許可權體系。詳見使用者身份識別

全球訊息路由

支援

不支援

5.x版本不支援全球訊息路由功能配置任務,需要採用訊息整合功能實現執行個體間的訊息同步。詳見訊息整合

訊息類型限制

不限制

強限制

5.x版本將訊息類型拆分到主題中進行獨立營運和處理,因此系統會對發送的訊息類型和主題定義的訊息類型進行強制校正,若校正不通過,則訊息發送請求會被拒絕,並傳回型別不匹配異常。詳見主旨列為約束

購買限制

  • 雲訊息佇列 RocketMQ 版5.x版本執行個體面向所有使用者提供購買開通服務。

  • 雲訊息佇列 RocketMQ 版4.x版本執行個體僅支援針對存量使用者開放購買,建議您盡量將執行個體版本升級到5.x,如有升級訴求,請提交工單諮詢。

4.x版本至5.x版本升級說明

當前暫不支援使用升級工具將4.x版本執行個體原地升級到5.x版本。如果您需要將存量執行個體升級至5.x版本執行個體,建議您參考如下流程購買5.x版本執行個體,逐步將業務流量遷移至新的執行個體。遷移流程

說明

如上圖所示,在第二步可以採用Topic、Group匯入/匯出功能快速實現中繼資料的建立,詳情參見:Topic匯入/匯出Group匯入/匯出

業務遷移時,您可以參考以下雙讀雙寫、分批發布的方案進行操作。

遷移業務