全部產品
Search
文件中心

ApsaraMQ for RabbitMQ:步骤二:创建资源

更新時間:Jul 10, 2026

一個新的應用接入雲訊息佇列 RabbitMQ 版服務端,您需要提前建立雲訊息佇列 RabbitMQ 版的相關資源,包括建立雲訊息佇列 RabbitMQ 版執行個體、建立Vhost、建立Exchange、建立Queue、綁定Exchange和Queue、建立使用者名稱密碼以及擷取執行個體存取點。調用訊息收發SDK時,您需要將這些資源資訊填寫到SDK參數中。

前提條件

若您使用RAM使用者建立資源,需要先為其授權,具體請參見步驟一:(可選)RAM使用者授權

重要

使用子帳號(RAM 使用者)建立雲訊息佇列 RabbitMQ 版執行個體時,還需滿足以下網路設定要求:配置網路時必須選擇交換器(vSwitch),且至少需要選擇 2 個交換器,否則會導致執行個體建立失敗並報錯。

建立執行個體

執行個體是一個獨立的雲訊息佇列 RabbitMQ 版資源實體,包含Vhost、Exchange、Queue等基本的資源要素。

  1. 登入雲訊息佇列 RabbitMQ 版控制台,然後在左側導覽列選擇实例列表

  2. 在頂部功能表列選擇地區,然後在实例列表頁面,單擊创建实例

  3. 在購買頁完成基本配置並勾選服務合約,然後單擊立即購買

  4. 根據提示完成支付。

    实例列表頁面的頂部功能表列,選擇地區,您可以看到建立的執行個體。

    說明
    • 專業版執行個體和企業版執行個體購買後,立即進入服务中狀態。

    • 鉑金版執行個體購買後,首先進入部署中狀態,待叢集分配後,再進入服务中狀態。

資源配置

1.建立Vhost

Vhost是指虛擬機器主機,用作邏輯隔離,分別管理各自的Exchange、Queue和Binding,使得應用安全地運行在不同的Vhost上,相互之間不會干擾。一個執行個體下可以有多個Vhost,一個Vhost裡面可以有若干個Exchange和Queue。Producer和Consumer串連雲訊息佇列 RabbitMQ 版需要指定一個Vhost。

  1. 登入雲訊息佇列 RabbitMQ 版控制台,然後在左側導覽列選擇实例列表

  2. 实例列表頁面的頂部功能表列選擇地區,然後在執行個體列表中,單擊目標執行個體名稱。

  3. 在左側導覽列,單擊Vhost 列表

  4. Vhost 列表頁面,單擊创建 Vhost

  5. 创建 Vhost面板的Vhost名称文字框,輸入Vhost名稱,然後單擊确定

2.建立Exchange

Producer將訊息發送到Exchange,由Exchange將訊息路由到一個或多個Queue中(或者丟棄)。Exchange根據Routing Key將訊息路由到Queue。不同類型的Exchange的路由規則不同。更多資訊,請參見Exchange

  1. 在該執行個體的左側導覽列,單擊Exchange 列表

  2. Exchange 列表頁面,在当前 Vhost右側的切换下拉式清單中,選擇Vhost,然後單擊创建 Exchange

  3. 创建 Exchange面板,輸入Exchange名稱,選擇Exchange类型,設定是否為Internal類型,然後單擊确定

    參數

    描述

    Exchange 名称

    Exchange名稱只能包含字母、數字、短劃線(-)、底線(_)、英文句號(.)、 井號 (#) 、斜線 (/)、at符號(@),長度限制1~255字元

    Exchange建立後,名稱不支援修改,只能刪除後重建。

    以 amq. 開頭的為保留欄位,因此不能使用。例如:amq.test。

    如果帳號已開通擴充命名支援,名稱中還允許使用冒號(:)和逗號(,)。Exchange名稱只能包含字母、數字、短劃線(-)、底線(_)、英文句號(.)、井號(#)、斜線(/)、at符號(@)、冒號(:)、逗號(,),長度限制1~255字元。

    类型

    Exchange類型。取值:

    • direct:該類型的路由規則會將訊息路由到Routing Key完全符合的Queue中。

    • topic:該類型與direct類型相似。Topic Exchange路由規則沒有Direct Exchange那麼嚴格,支援模糊比對和多條件匹配,即該類型Exchange使用Routing Key模式比對和字串比較的方式將訊息路由至綁定的Queue中。

    • fanout:該類型的路由規則非常簡單,會把所有發送到該Exchange的訊息路由到所有與它綁定的Queue中,相當於廣播功能。

    • headers:該類型與direct類型相似。Headers Exchange使用Headers屬性代替Routing Key進行路由匹配,在綁定Headers Exchange和Queue時,設定綁定屬性的索引值對;在向Headers Exchange發送訊息時,設定訊息的Headers屬性索引值對,使用訊息Headers屬性索引值對和綁定屬性索引值對比較的方式將訊息路由至綁定的Queue。

    • x-delayed-message:通過聲明該類 Exchange,您可以自訂訊息的 Header 屬性 x-delay 來指定訊息延時投遞的時間段,單位為毫秒。訊息將在 x-delay 中定義的時間段後,根據路由規則被投遞到對應的 Queue。路由規則取決於 x-delayed-type 中指定的 Exchange 路由類型。x-delayed-type 可選值:topic、fanout、headers、x-jms-topic、direct。

    • x-consistent-hash:x-consistent-hash Exchange 支援將 Routing Key 或 Header 值進行 Hash 計算,使用一致性雜湊演算法將訊息路由到不同的 Queue 上。需要指定 RoutingKey 模式或 HeaderValue 模式。

    x-delayed-type

    當Exchange類型為x-delayed-message時,需要配置此參數,以指定Exchange的路由類型。

    哈希取值

    當Exchange類型為x-consistent-hash時,需要配置此參數,以指定Hash計算的輸入值為哪種類型。取值如下:

    • RoutingKey

    • Header 值:使用Header方式作為Hash計算輸入值時,您需要定義hash-header參數的取值。

    hash-header

    當Exchange類型為x-consistent-hash哈希取值Header 值時,需要配置此參數,作為指定Hash計算的輸入值。

    Internal

    是否為Internal類型,預設值為。取值:

    • :內建類型,用於Exchange和Exchange之間的綁定。

    • :非內建類型,用於Exchange和Queue之間的綁定。

3.建立Queue

Queue是指隊列,雲訊息佇列 RabbitMQ 版的訊息都會被投入到一個或多個Queue中。

  1. 在該執行個體的左側導覽列,單擊Queue 列表

  2. Queue 列表頁面,在当前 Vhost右側的切换下拉式清單中,選擇Vhost,單擊创建 Queue

  3. 创建 Queue面板,配置以下參數,然後單擊确定

    參數

    描述

    說明

    Queue 名称

    Queue的名稱

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

    • 長度限制在1~255字元。

    • 建立後無法修改,只能刪除重建。

    • 以amq.開頭的為保留欄位,因此不能使用。例如:amq.test。

    Auto Delete

    最後一個Consumer取消訂閱後,Queue是否自動刪除。

    • true:在訂閱該Queue訊息的最後一個Consumer取消訂閱該Queue的訊息後,自動刪除該Queue。

    • false:在訂閱該Queue訊息的最後一個Consumer取消訂閱該Queue的訊息後,不自動刪除該Queue。

    重试策略

    配置Queue重試策略。各執行個體策略參數取值,請參見執行個體重試策略參數說明

    • 是否繼承執行個體配置

      • :繼承執行個體預設配置。

      • :自訂配置。

    • 最大投遞次數:系統將一條訊息嘗試投遞給消費者的最大次數限制。單位:次。

    • 消費逾時時間:消費者在接收和處理訊息時允許的最大時間限制。單位:秒。

    死信策略

    Queue的參數設定,可用於設定死信Exchange、死信Routing Key和訊息存活時間。

    • DeadLetterExchange:指定死信訊息發送的目標Exchange。

    • DeadLetterRoutingKey:指定死信訊息的Routing Key,即死信Exchange會將訊息發送至匹配該死信Routing Key所對應的Queue。

    • MessageTTL:訊息存活時間,單位毫秒(ms)。在指定時間內未被成功消費的訊息會變成死信訊息,該訊息將會被發送到死信Exchange。更多資訊,請參見訊息存活時間

4.建立綁定關係

  1. Queue 列表頁面,選擇指定Queue,在其操作列單擊详情

  2. Queue 详情頁面單擊被绑定信息頁簽,單擊添加被绑定

  3. 添加被绑定面板,選擇源Exchange,在Routing Key文字框輸入Routing Key,然後單擊确定

    說明

    若被綁定的Exchange的類型為x-consistent-hash時,Routing Key表示綁定的Queue的權重,只能設定為整數,取值範圍為[1~20]。

後續步驟

步驟三:調用SDK收發訊息

相關文檔

除了控制台,您還可以通過雲訊息佇列 RabbitMQ 版的API建立相關資源。

常見問題

Q:建立雲訊息佇列 RabbitMQ 版執行個體失敗或報錯怎麼辦?

若建立執行個體時遇到失敗或報錯,可按以下步驟逐一排查:

  1. 檢查安全性群組配置:確認所在 VPC 的安全性群組已正確配置,並允許存取以下連接埠,否則執行個體建立後可能無法正常串連:

    • 5672 連接埠(AMQP 協議)

    • 5671 連接埠(AMQPS 協議)

  2. 擷取詳細報錯資訊:在瀏覽器中按 F12 鍵開啟開發人員工具,切換至網路(Network)選項卡後重新觸發建立操作,查看請求返回的具體錯誤碼或錯誤提示,以便定位問題根因。

  3. 檢查子帳號(RAM 使用者)許可權和配置:若使用子帳號操作,請同時確認以下兩點:

    • 已按照本文檔前提條件章節的要求完成 RAM 授權。

    • 建立執行個體時已在網路設定中選擇了至少 2 個交換器(vSwitch);若選擇數量不足,會導致建立失敗報錯。