前言
在前面的文章中我們介紹過RabbitMQ的搭建:RabbitMQ的安裝過以及各大主流消息中間件的對比:,本章就主要來介紹下我們之前安裝的管控台是如何使用以及如何通過命令行進行操作。
1. 命令行操作
1.1 基礎服務的命令操作
rabbitmqctl stop_app:關閉應用
rabbitmqctl start_app:啟動應用
rabbtmqctl status:節點狀態
rabbitmqctl add_user username password:添加用戶
rabbitmqctl list_users:列出所有用戶
rabbitmqctl delete_user username:刪除用戶
rabbitmqctl clear_permissions - p vhostpath username: 清除用戶權限
rabbitmqctl list_user_permissions_username: 列出用戶權限
rabbitmqctl change_password username newpassword:修改密碼
rabbitmqctl set_permissions -p vhostpath username "." "." ".*" :設置用戶權限
涉及的用戶命令還有許多,這里就不一一列舉了。
1.2 對rabbitmq 具體組件的命令
1.2.1 對虛擬主機操作
rabbitmqctl add_vhost vhostpath:創建虛擬主機
rabbitmqctl list_vhosts:列出所有虛擬主機
rabbitmqctl list_permissions -p vhostpath:列出虛擬主機上所有權限
rabbitmqctl delete_vhost vhostpath:刪除虛擬主機
1.2.2 隊列操作
rabbitmqctl list_queues:查看所有隊列信息
rabbitmqctl -p vhostpath purge_queue bule:清除隊列里的消息
1.3 高級操作
rabbitmqctl reset:移除所有數據,要在rabbitmqctl stop_app之后使用
rabbitmqctl join_clust
rabbitmqctl clustr_status:查看集群狀態
rabbitmqctl change_cluster_node_type disc|ram 修改集群節點的存儲形式
rabbitmqctl forget_cluster_node [--offline] 忘記節點(摘除節點)
rabbitmqctl rename_cluster_node oldnode1 newnode1 [oldnode2] [newnode2..] (修改節點名稱)
2. 管控台介紹
登錄RabbitMQ web管理界面:http://localhost:15672/
默認的初始用戶名和密碼為:guest
注意:RabbitMQ的管理后台的端口是15672,RabbitMQ監聽的端口是5672,要連接RabbitMQ為5672端口!
2.1 Overview(總覽)界面介紹
從圖中可以看到:
- RabbitMQ以及Erlang安裝的版本號:RabbitMQ xxx、Erlang xxx。
- 右上角可以設置頁面"刷新時間"(5秒、10秒、30秒、不刷新幾個選項)。選擇監聽的"虛擬主機"。節點的名稱。登錄的用戶
2.1.1 Overview -> Totals
- 如果有消息的話就會有相應的圖形展示情況。
- Ready:待消費的消息總數
- Unacked:待應答的消息總數
- Total:總數 Ready+Unacked
- Disk read:queue從磁盤讀取消息的速率
- Disk write:queue從磁盤寫入消息的速率
- Global counts
- Connections:client的tcp連接的總數
- Channels:通道的總數
- Exchanges: 交換器的總數
- Queues:隊列的總數
- Consumers:消費者的總數
2.1.1 Overview -> Node
Broker的屬性
- Name:broker名稱
- File descriptors:broker打開的文件描述符和限制。
- Socket descriptors:broker管理的網絡套接字數量和限制。當限制被耗盡時,RabbitMQ將停止接受新的網絡連接。
- Erlang processes:erlang啟動的進程數。
- Memory:當前broker占用的內存。
- Disk space:當前broker占用的硬盤。
- Uptime:當前broker持續運行的時長。
- Info:集群的信息。
- Reset stats:重啟單節點或整個集群。
2.1.3 Overview -> Ports and contexts
- amqp:與應用通信端口:5672
- clustering:與集群通信端口:25672
- web contexts:管控台端口號:15672
2.1.4 Overview -> Export definitions
定義由用戶,虛擬主機,權限,參數,交換,隊列和綁定組成。 它們不包括隊列的內容或集群名稱。 獨占隊列不會被導出。
2.1.5 Overview -> Import definitions
導入的定義將與當前定義合並。 如果在導入過程中發生錯誤,則所做的任何更改都不會回滾。
2.2 Connections(連接)界面介紹
連接的屬性
- Virtual host:所屬的虛擬主機
- Name:名稱
- User name:使用的用戶名
- State:當前的狀態,running:運行中;idle:空閑
- SSL/TLS:是否使用ssl進行連接
- Protocol:使用的協議
- Channels:創建的channel的總數
- From client:每秒發出的數據包
- To client:每秒收到的數據包
- Channels當前連接所有創建的通道
2.3 Channels(信道)界面介紹
通道的屬性
- channel:名稱
- Node:節點名稱
- Virtual host:所屬的虛擬主機
- User name:使用的用戶名
- Mode:渠道保證模式。 可以是以下之一,或者不是:C: confirm。T:transactional(事務)
- State :當前的狀態,running:運行中;idle:空閑
- Unconfirmed:待confirm的消息總數
- Prefetch:設置的prefetch的個數
- Unacker:待ack的消息總數
- publish:producter pub消息的速率
- confirm:producter confirm消息的速率
- deliver/get:consumer 獲取消息的速率
- ack:consumer ack消息的速率
2.4 Exchanges(交換機)界面介紹
交換器屬性
- Virtual host:所屬的虛擬主機
- Name:名稱
- Type:exchange type
- Features:功能。 可以是以下之一,或者不是:D: 持久化。T:Internal,存在改功能表示這個exchange不可以被client用來推送消息,僅用來進行exchange和exchange之間的綁定,否則可以推送消息也可以綁定。
- Message rate in:消息進入的速率
- Message rate out:消息出去的速率
2.5 Queues(隊列)界面介紹
隊列的屬性
- Virtual host:所屬的虛擬主機。
- Name:名稱。
- Features:功能。 可以是以下之一,或者不是:D: 持久化。
- State:當前的狀態,running:運行中;idle:空閑。
- Ready:待消費的消息總數。
- Unacked:待應答的消息總數。
- Total:總數 Ready+Unacked。
- incoming:消息進入的速率。
- deliver/get:消息獲取的速率。
- ack:消息應答的速率。
2.6 Admin(用戶管理)界面介紹
在Admin界面可以添加用戶或者虛擬主機等操作。
文末
歡迎關注個人微信公眾號:Coder編程
獲取最新原創技術文章和免費學習資料,更有大量精品思維導圖、面試資料、PMP備考資料等你來領,方便你隨時隨地學習技術知識!
新建了一個qq群:315211365,歡迎大家進群交流一起學習。謝謝了!也可以介紹給身邊有需要的朋友。
文章收錄至
Github: https://github.com/CoderMerlin/coder-programming
Gitee: https://gitee.com/573059382/coder-programming
歡迎關注並star~
參考文章:
https://www.cnblogs.com/theRhyme/p/10069611.html
https://baijiahao.baidu.com/s?id=1608453370506467252&wfr=spider&for=pc
https://blog.csdn.net/weixin_34413802/article/details/91529866
推薦文章:
消息中間件——RabbitMQ(一)Windws/Linux環境搭建(完整版)