Django入門之開發環境搭建1.1
933
2025-03-31
文章目錄
1. rabbitmqadmin
2. rabbitmqadmin 的功能
3.列出各種信息
4. 一個完整的例子
5. 命令一覽
6. 小結
RabbitMQ 管理頁面該如何使用
除了通過 Web 管理頁面來進行管理之外,我們也可以通過命令行來進行管理,之前松哥在RabbitMQ 中的 VirtualHost 該如何理解一文中介紹過幾個 RabbitMQ 管理命令。
也在另類玩法!使用 REST API 操作 RabbitMQ一文中介紹過一些相關的 REST API,在方便發送 HTTP 請求的地方調用這些 REST API,還是非常方便的。但是,在一些不方便發送 HTTP 請求的地方,這些 REST API 用著并不太方便,那么今天松哥就給大家再來介紹 RabbitMQ 的另一種玩法—rabbitmqadmin。
1. rabbitmqadmin
我們自己平時做練習,一般都會開啟 RabbitMQ 的 Web 管理頁面,然而在生產環境下,經常是沒有 Web 管理頁面的,只能通過 CLI 命令去管理 MQ。
其實呀,Web 管理頁面雖然友好,但是很多時候沒有 CLI 快捷,而且通過 CLI 命令行的操作,我們可以做更多的定制,例如將關鍵信息查出來后提供給集中的監控系統以觸發報警。
直接操作 CLI 命令行有點麻煩,RabbitMQ 提供了 CLI 管理工具 rabbitmqadmin ,其實就是基于 RabbitMQ 的 HTTP API,用 Python 寫的一個腳本。因為 REST API 手動寫請求還是挺麻煩的,這些腳本剛好替我們簡化了這個操作,讓這個事情變得更加簡單了。
使用 rabbitmqadmin 要先會安裝它。
如果我們創建 RabbitMQ 容器的時候使用的是 rabbitmq:3-management 鏡像,那么默認情況下,rabbitmqadmin 就是安裝好的。
否則可能需要我們自己安裝 rabbitmqadmin,安裝方式很簡單,
首先確認你的設備上安裝了 Python,這是最基本的,因為 rabbitmqadmin 這個工具就是 Python 腳本。
然后開啟 RabbitMQ 的 Web 管理頁面,然后輸入如下地址(我的管理頁面度那口映射為 25672):
http://localhost:25672/cli/index.html
1
在打開的頁面中就可以看到 rabbitmqadmin 的下載鏈接。將 rabbitmqadmin 下載下來后,然后賦予其可執行權限即可:
chmod +x rabbitmqadmin
1
下載后的 rabbitmqadmin 我們可以直接用記事本打開,里邊其實就是一堆 Python 腳本。
這套流程操作下來還是挺麻煩的,所以,我建議大家直接使用 rabbitmq:3-management 鏡像,一步到位。
2. rabbitmqadmin 的功能
列出 exchanges, queues, bindings, vhosts, users, permissions, connections and channels。
創建和刪除 exchanges, queues, bindings, vhosts, users and permissions。
發布和獲取消息,以及消息詳情。
關閉連接和清空隊列。
導入導出配置。
接下來松哥就這些功能逐一和小伙伴們進行介紹。
3.列出各種信息
查看所有交換機:
rabbitmqadmin list exchanges
1
查看所有隊列:
rabbitmqadmin list queues
1
查看所有 Binding:
rabbitmqadmin list bindings
1
查看所有虛擬主機:
rabbitmqadmin list vhosts
1
查看所有用戶信息:
rabbitmqadmin list users
1
查看所有權限信息:
rabbitmqadmin list permissions
1
查看所有連接信息:
rabbitmqadmin list connections
1
查看所有通道信息:
rabbitmqadmin list channels
1
4. 一個完整的例子
接下來我們用 rabbitmqadmin 來寫一個完整的消息收發例子看看。
首先創建一個名為 javaboy-exchange 的交換機:
rabbitmqadmin declare exchange name=javaboy-exchange durable=true auto_delete=false type=direct
1
這里各種參數都好理解,我就不多說了。
接下來創建一個名為 javaboy-queue 的隊列:
rabbitmqadmin declare queue name=javaboy-queue durable=true auto_delete=false
1
接下來再創建一個 Binding,將交換機和消息隊列綁定起來:
rabbitmqadmin declare binding source=javaboy-exchange destination=javaboy-queue routing_key=javaboy-routing
1
這里涉及到到三個概念:
source:源,其實就是指交換機。
destination:目標,其實就是指消息隊列。
routing_key:這個就是路由的 key。
接下來發布一條消息:
rabbitmqadmin publish routing_key=javaboy-queue payload="hello javaboy"
1
這里參數都很簡單,沒啥好說的。
查看隊列中的消息(只查看,不消費,看完之后消息還在):
rabbitmqadmin get queue=javaboy-queue
1
清空一個隊列中的消息:
rabbitmqadmin purge queue name=javaboy-queue
1
5. 命令一覽
表格字體有點小,大家在公眾號【江南一點雨】后臺回復 rabbitmqadmin 獲取 Excel 文檔鏈接。
6. 小結
好啦,今天就和小伙伴們簡單介紹了一下 rabbitmqadmin,一個簡單的 Python 腳本,感興趣的小伙伴可以去試試哦~
RabbitMQ
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。