Queue是指訊息佇列,雲訊息佇列 RabbitMQ 版的訊息都會被投入到一個或多個Queue中。本文介紹如何在雲訊息佇列 RabbitMQ 版控制台建立訊息的儲存資源Queue、查看Dashboard大盤、被Exchange綁定、向指定Queue發送訊息、查看Consumer Tag、清空Queue和刪除Queue。
背景資訊
Consumer Tag是Consumer用戶端的標識符。您可以在雲訊息佇列 RabbitMQ 版的Consumer用戶端設定Consumer Tag。如果您沒有在雲訊息佇列 RabbitMQ 版的Consumer用戶端設定Consumer Tag,雲訊息佇列 RabbitMQ 版服務端會為您自動產生一個唯一的Consumer Tag。建議使用系統預設Consumer Tag,不自訂設定Consumer Tag。
Consumer Tag必須保持唯一,即已被某個Consumer使用的Consumer Tag不可同時被另一個Consumer使用。
用戶端使用的SDK在記錄串連上有哪些消費者時,採用Map<String, Consumer>進行記錄,其中Key為Consumer Tag。如果一個串連上存在多個消費者具有相同的Consumer Tag,在串連自動重連後,該串連下的相同Consumer Tag僅會有一個消費者恢複消費,其他消費者將不會自動回復。
建立Queue
登入雲訊息佇列 RabbitMQ 版控制台,然後在左側導覽列選擇实例列表。
在实例列表頁面的頂部功能表列選擇地區,然後在執行個體列表中,單擊目標執行個體名稱。
在左側導覽列,單擊Queue 列表。
在Queue 列表頁面,在当前 Vhost右側的切换下拉式清單中,選擇Vhost,單擊创建 Queue。
在创建 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。更多資訊,請參見訊息存活時間。
查看統計資料
您可以查看各種指標資料,協助您及時發現和定位問題。
查看Consumer Tag
雲訊息佇列 RabbitMQ 版僅支援查看線上Consumer用戶端的Consumer Tag,不支援查看離線Consumer用戶端的Consumer Tag,您需要確保要查看Consumer Tag的Consumer用戶端處於線上狀態。
在Queue 列表頁面,選擇指定Queue,在其操作列,選擇。
被Exchange綁定
在Queue 列表頁面,選擇指定Queue,在其操作列單擊详情。
在Queue 详情頁面單擊被绑定信息頁簽,單擊添加被绑定。
在添加被绑定面板,選擇源Exchange,在Routing Key文字框輸入Routing Key,然後單擊确定。
說明若被綁定的Exchange的類型為x-consistent-hash時,Routing Key表示綁定的Queue的權重,只能設定為整數,取值範圍為[1~20]。
發送訊息
Queue添加被綁定關係後,可直接在控制台發送訊息,將訊息從源Exchange發送到指定的Queue中。
在Queue 列表頁面,選擇指定Queue,在其操作列單擊详情。
在Queue 详情頁面,選擇被绑定信息頁簽。
在被綁定關係列表中,選擇指定的綁定關係,在其操作列單擊发送消息。
在彈出的发送消息面板中輸入messageId和messageBody,然後單擊确定。
清空Queue
在Queue 列表頁面,選擇指定Queue,在其操作列,選擇。
刪除Queue
刪除Queue時,Queue中未被消費的訊息會被同時刪除,且不可恢複。請您謹慎操作。
在Queue 列表頁面,根據需要選擇如下任意一種方式刪除Queue。
刪除單個Queue:找到要刪除的Queue,在其右側操作列,選擇。
您也可以單擊目標Queue,或在其右側操作列,單擊详情,在Queue 详情頁面右上方單擊删除。
刪除多個Queue:選中要刪除的Queue,單擊Queue列表下方的批量删除。
在提示對話方塊,認真閱讀提示資訊,單擊確認。