全部產品
Search
文件中心

ApsaraMQ for RabbitMQ:使用限制

更新時間:Oct 01, 2026

雲訊息佇列 RabbitMQ 版對叢集、字元及TPS流量峰值進行了限制,您在使用雲訊息佇列 RabbitMQ 版時注意不要超過相應的限制值,以免程式出現異常。

叢集限制

  • 此表格中各項限制為最新版本執行個體;

  • 如果使用者執行個體某項限制與表格不符合,可能不是最新版本執行個體造成,詳細請提工單諮詢,調整時有如下限制:

    • 老架構執行個體不支援調整:執行個體 ID 為純數字,或者 vpc 網域名稱不是 mq.amqp.aliyuncs.com 結尾的執行個體,不支援對下列各項限制進行調整。

限制項

Serverless系列執行個體

預付費系列執行個體

共用

獨享

企業版

鉑金版

專業版

預留+彈性/按累積量

預留+彈性

單一實例的Vhost數量

200

2000

200

4096

200

單一實例的Exchange數量

6000

10000

6000

80000

6000

單一實例的Binding數量

2萬

2萬

2萬

無

2萬

單一實例可建立的Queue數量

6000

10000

6000

80000

6000

單一實例的Connection數量

最大串連數為1萬。

最大串連數為2萬。

根據執行個體規格購買。

單一實例有2000的免費額度,最大串連數為1萬。

根據執行個體規格購買。

單一實例有5萬的免費額度,最大串連數為10萬。

等於Queue數量×4。

單一實例的Connection數量取值範圍為[1000,5000]。

單Exchange綁定的Queue數量

256

256

可提交工單定製需求。定製後執行個體不可降配到共用叢集。

256

256

如需定製,請聯絡阿里雲支援人員。

256

單Queue的Consumer數量

等於Queue數量×4。

單Queue的Consumer數量取值範圍為[800,5000]

無

等於Queue數量×4。

單Queue的Consumer數量取值範圍為[800,5000]

無

等於Queue數量×4。

單Queue的Consumer數量取值範圍為[50,5000]。

單Connection的Channel數量

2000

3000

單Connection的Channel數量取值範圍為Min[Queue數量,2048]。

  • 若Queue數量小於2048,則Channel數量限制值為Queue的數量。

  • 若Queue數量大於等於2048,則Channel數量限制值為2048。

3000

單Connection的Channel數量取值為64或Queue數量。

  • 如果Queue數量小於或等於64,則單Connection的Channel數量等於64。

  • 如果Queue數量大於64,則單Connection的Channel數量等於Queue數量。

訊息大小

10 MB

50 MB

10 MB

(注:青島、日本、呼和浩特地區及2025年5月1日前建立的其他地區執行個體為 1 MB)

50 MB

(注:青島、日本、呼和浩特地區及2025年5月1日前建立的其他地區執行個體為 3 MB)

64 KB

延時訊息最大延時時間

7天

7天

可提交工單定製需求。定製後執行個體不可降配到共用叢集。

7天

7天

如需定製,請聯絡阿里雲支援人員。

24小時

訊息最大保留時間

3天

3天

3天

3天

3天

最大投遞次數

16

16

16

64

16

消費逾時時間

最大值:3小時

預設值:5分鐘

最大值:12小時

預設值:30分鐘

最大值:3小時

預設值:5分鐘

最大值:12小時

預設值:30分鐘

最大值:10分鐘

預設值:1分鐘

說明

雲訊息佇列 RabbitMQ 版對訊息 Header 幀的大小限制為 32 KB,且該限制不可調整。建議將大訊息內容放置在訊息 Body 中發送,以避免觸發 Header 幀大小限制。

單 Channel 的 basicQos(即 prefetch count)最大值為 100,且該限制不可調整,適用於所有執行個體類型。此限制用於避免未確認訊息(Unacked Message)堆積過多導致記憶體壓力過大,從而保障系統的穩定性與效能。設定 prefetch count 時請勿超過此上限,否則可能導致 Qos 限制生效異常。

字元限制

限制項

限制值

Queue名稱

  • 只能包含字⺟、數字、短劃線(-)、底線(_)、半形句號(.)、井號(#)、正斜線(/)、at符號(@)。

  • ⻓度限制1~255字元。

Exchange名稱

  • 只能包含字⺟、數字、短劃線(-)、底線(_)、半形句號(.)、井號(#)、正斜線(/)、at符號(@)。

  • ⻓度限制1~255字元。

Vhost名稱

  • 只能包含字⺟、數字、短劃線(-)、底線(_)、半形句號(.)、井號(#)、正斜線(/)、at符號(@)。

  • ⻓度限制1~255字元。

Binding Key

  • 普通類型

    • 只能包含字⺟、數字、短劃線(-)、底線(_)、半形句號(.)、正斜線(/)、at符號(@)。

    • ⻓度限制1~255字元。

  • Topic類型

    • 只能包含字母、數字、短劃線(-)、底線(_)、星號(*)、半形句號(.)、井號(#)、正斜線(/)、at符號(@)。

    • 長度限制1~255字元。

    • 不能以半形句號(.)開頭或結尾。對於井號(#)或星號(*),如果以其開頭,則其後需有半形句號(.),如果以其結尾,則其前需有半形句號(.),如果既不是開頭也不是結尾,則其前後均需有半形句號(.)。

Consumer Tag

  • 只能包含字⺟、數字、短劃線(-)、底線(_)、半形句號(.)、井號(#)、正斜線(/)、at符號(@)。

  • ⻓度限制1~255字元。

Message ID

  • 只能包含字⺟、數字、短劃線(-)、底線(_)、半形句號(.)、井號(#)、正斜線(/)、at符號(@)、冒號(:)。

  • ⻓度限制1~255字元。

限流閾值

執行個體總TPS限流閾值

執行個體系列

Serverless系列執行個體

預付費系列執行個體

規格

共用

獨享

未開啟彈性TPS

開啟彈性TPS

預留+彈性/按累積量

預留+彈性

企業版

鉑金版

專業版

企業版

鉑金版

專業版

限流閾值

最大5萬次/秒

基礎TPS流量峰值規格的2倍

基礎TPS流量峰值規格

基礎TPS流量峰值規格的2倍,最大5萬次/秒

基礎TPS流量峰值規格的2倍,最大5萬次/秒

基礎TPS流量峰值規格的1.5倍

單節點SendMessage TPS限流閾值

服務端會在執行個體維度限制每個後台服務節點上SendMessage的TPS值,限流閾值如下所示:

限制

Serverless系列執行個體

預付費系列執行個體

共用

獨享

企業版

鉑金版

專業版

按累積量

預留+彈性

預留+彈性

限流閾值

2.5萬次/秒

2.5萬次/秒

無

2.5萬次/秒

無

2.5萬次/秒

單介面的限流閾值

限制項

限制項介面

Serverless系列執行個體

預付費系列執行個體

共用

獨享

企業版

鉑金版

專業版

預留+彈性/按累積量

預留+彈性

單一實例清Queue

purgeQueue

500 TPS

無

500 TPS

無

500 TPS

單一實例建立Exchange

exchangeDeclare

500 TPS

無

500 TPS

無

500 TPS

單一實例刪除Exchange

exchangeDelete

500 TPS

無

500 TPS

無

500 TPS

單一實例建立Queue

queueDeclare

500 TPS

無

500 TPS

無

500 TPS

單一實例刪除Queue

queueDelete

500 TPS

無

500 TPS

無

500 TPS

單一實例建立Binding

queueBind

500 TPS

無

500 TPS

無

500 TPS

單一實例刪除Binding

queueUnbind

500 TPS

無

500 TPS

無

500 TPS

單一實例恢複訊息

basicRecover

500 TPS

無

500 TPS

無

500 TPS

單一實例重入Queue訊息

  • basicReject(requeue=true)

  • basicNack(requeue=true)

20 TPS

無

20 TPS

無

20 TPS

常見問題

企業版執行個體是否支援單獨擴充 Queue 數量上限?

當前企業版執行個體的單一實例 Queue 數量上限為 6000,該限制為產品版本級規格限制,暫不支援在目前的版本內單獨擴充至 10000。

如需解決 Queue 數量不足的問題,可參考以下方案:

  1. 最佳化 Queue 使用:合并可合并的 Queue,通過 Topic Exchange 路由策略減少 Queue 數量,或清理無消費者且不再使用的歷史 Queue。

  2. 拆分執行個體:若業務允許,將部分業務拆分到新的企業版執行個體,分散 Queue 使用量。

報錯 The channelMax limit is reached 如何處理?

當單個 Connection 下的 Channel 數量達到當前執行個體版本的 channelMax 限制時,會觸發此報錯。

問題原因:單個 Connection 下的 Channel 數量超出了當前執行個體版本的上限(channelMax)。Channel 數量限制因執行個體版本不同而有所差異,例如專業版的 Channel 數量與 Queue 數量關聯,企業版 Channel 數量上限為 Queue 數量與 2048 的較小值。

解決方案:

  1. 確認當前 RabbitMQ 執行個體的版本(專業版/企業版/鉑金版等)。

  2. 查閱本文檔「叢集限制」表格中「單 Connection 的 Channel 數量」行,瞭解目前的版本的具體 channelMax 限制值。

  3. 根據業務需求評估是否需要升級執行個體版本,以支援更多的 Channel 並發量。

雲訊息佇列 RabbitMQ 版是否支援開放 15672 管理連接埠及自訂配置?

雲訊息佇列 RabbitMQ 版不支援開放 15672 管理連接埠,也不支援任何自訂配置。雲上執行個體僅預設開放 5672 連接埠用於 AMQP 協議通訊,該限制適用於所有執行個體類型(Serverless、獨享、共用、預付費等)。如果您需要通過管理主控台連接埠查看叢集狀態或調整自訂參數,暫時無法通過開放該連接埠實現。

RabbitMQ 執行個體是否支援遷移資源群組?

雲訊息佇列 RabbitMQ 版執行個體當前不支援資源群組功能,控制台無相關配置入口,暫不支援資源群組遷移或更換資源群組(ResourceGroup)。

購買 RabbitMQ 執行個體需要佔用多少個交換器 IP 位址?

購買雲訊息佇列 RabbitMQ 版執行個體通常需要配置兩個交換器(vSwitch),每個交換器至少需預留 20 個 IP 位址,因此總共需要佔用 40 個 IP 位址。規劃網路時請預留足夠的 IP 位址,避免因 IP 位址不足導致執行個體建立失敗。