介紹
rabbitmq-management是RabbitMq web管理端,用的是erlang的cowboy框架進行開發。node
web頁面包括web
- Overview(概述)
- Connections(鏈接)
- Channels(通道)
- Exchanges(交換器)
- Queues(隊列)
- Admin(用戶管理)。
Overview
Totals
Queued messages(全部隊列的消息狀況)網絡
- Ready:待消費的消息總數。
- Unacked:待應答的消息總數。
- Total:總數 Ready+Unacked。
Queued messages(全部隊列的消費狀況)框架
速率=(num1-num0)/(s1-s0) num1:s1時刻的個數。num0:s0時刻的個數。fetch
- Publish:producter pub消息的速率。
- Publisher confirm:broker確認pub消息的速率。
- Deliver(manual ack):customer手動確認的速率。
- Deliver(auto ack):customer自動確認的速率。
- Consumer ack:customer正在確認的速率。
- Redelivered:正在傳遞'redelivered'標誌集的消息的速率。
- Get (manual ack):響應basic.get而要求確認的消息的傳輸速率。
- Get (auto ack):響應於basic.get而發送不須要確認的消息的速率。
- Return:將basic.return發送給producter的速率。
- Disk read:queue從磁盤讀取消息的速率。
- Disk write:queue從磁盤寫入消息的速率。
全局鏈接spa
- Connections:客戶端鏈接總數。
- Channels:通道總數。
- Exchange:交換器總數。
- Queues:隊列總數。
- Consumers:消費者總數。
Nodes
每個 RabbitMQ 的實例(broker) 都是一個node節點3d
broker的屬性代理
- Name:broker名稱
- File descriptors:broker打開的文件描述符和限制。
- Socket descriptors:broker管理的網絡套接字數量和限制。當限制被耗盡時,RabbitMQ將中止接受新的網絡鏈接。
- Erlang processes:erlang啓動的進程數。
- Memory:當前broker佔用的內存。
- Disk space:當前broker佔用的硬盤。
- Uptime:當前broker持續運行的時長。
- Info:
- Reset stats:
Ports and contexts
Export definitions
定義由用戶,虛擬主機,權限,參數,交換,隊列和綁定組成。 它們不包括隊列的內容或集羣名稱。 獨佔隊列不會被導出。cdn
Import definitions
導入的定義將與當前定義合併。 若是在導入過程當中發生錯誤,則所作的任何更改都不會回滾。blog
Connections
當前全部客戶端活動的鏈接。包括生成者和消費者。
鏈接的屬性
- Name:名稱和地址。
- User name:使用的用戶名。
- State:當前的狀態,running:運行中;idle:空閒。
- SSL/TLS:是否使用ssl進行鏈接。
- Protocol:使用的協議。
- Channels:建立的channel的總數。
- From client:每秒發出的數據包。
- To client:每秒收到的數據包。
channels
當前鏈接全部建立的通道。
通道的屬性
- channel:名稱。
- Virtual host:所屬的虛擬主機。
- User name:使用的用戶名。
- Mode:渠道保證模式。 能夠是如下之一,或者不是:C: confirm。T:transactional(事務)。
- State :當前的狀態,running:運行中;idle:空閒。
- Unconfirmed:待confirm的消息總數。
- Prefetch:設置的prefetch的個數。
- Unacker:待ack的消息總數。
- publish:生產端 pub消息的速率。
- confirm:生產端確認消息的速率。
- deliver/get:消費端獲取消息的速率。
- ack:消費端 ack消息的速率
Exchanges
Exchanges
交換機屬性
- Name:名稱。
- Type:exchange type,具體的type能夠查看RabbitMq系列之一:基礎概念。
- Features:持久化,D:持久化 T:內存。
- Message rate in:消息輸入速率。
- Message rate out:消息輸出速率
Add a new exchange
- Virtual host:屬於哪一個Virtual host,我這裏只有一個因此不顯示
- Name:名字,同一個Virtual host裏面的Name不能重複。
- Durability: 是否持久化,Durable:持久化。Transient:不持久化。
- Auto delete:當最後一個綁定(隊列或者exchange)被unbind以後,該exchange自動被刪除。
- Internal: 是不是內部專用exchange,是的話,就意味着咱們不能往該exchange裏面發消息。
- Arguments: 參數,是AMQP協議留給AMQP實現作擴展使用的
Queues
Queues
- Virtual host:所屬的虛擬主機。
- Name:隊列名稱。
- Features:持久化,D:持久化 T:內存。
- State:當前的狀態,running:運行中;idle:空閒。
- Ready:待消費的消息
- Unacked:待應答的消息
- Total:總數, Ready+Unacked
Add a new queue
- Virtual host:屬於哪一個Virtual host,我這裏只有一個因此不顯示
- Name:名字,同一個Virtual host裏面的Name不能重複。
- Durability: 是否持久化,Durable:持久化。Transient:不持久化。
- Auto delete:當最後一個綁定(隊列或者exchange)被unbind以後,該 queue 自動被刪除。
- Arguments: 參數,是AMQP協議留給AMQP實現作擴展使用的
admin
管理界面包含
Users
Virtual Host
Policies
策略配置
策略分爲「用戶策略」和「系統策略」
策略使用的是正則表達匹配規則,按名稱匹配一個或多個隊列,並將其定義的一些規則(參數)到匹配隊列中。換句話說,能夠使用策略一次爲多個隊列配置參數。還記得上節咱們講的添加「分發器」和「隊列」中的「Arguments」參數麼?策略能夠理解爲給「隊列」和「分發器」設置額外的「Arguments」參數。每一個「分發器」和「隊列」只能生效一個「策略」,而且是是當即生效的。
參數
- Apply to:指定策略是隻匹配隊列、仍是隻匹配交換,或兩則二者都匹配。
- Priority:表示的是策略的優先級、值越大,優先級越高。
- Definition:纔是真正的規則。有四大類,分別是HA(高可用性)、federation(聯合)、Queues(隊列)、Exchanges(備用分發器)
- HA(高可用性):表示將隊列怎麼鏡像到節點的策略。
- ha-mode:選項有三個,分別是「all「(表示同步到全部節點),"exactly","nodes"。"exactly"和"nodes"須要結合ha-params才能決定同步策略
- ha-params:爲數值、表示個數
- ha-sync-mode:(手動(manual)/自動(automatic)同步)
舉個例子:ha-mode=exactly、ha-params=二、ha-sync-mode=automatic這個策略表示隊列將鏡像到羣集中的任意兩個節點,並自動同步。
- ha-promote-on-failure:策略默認是不容許將不一樣步(跟主鏡像內容不相同)的鏡像提高爲主鏡像
- ha-promote-on-shutdown:若是設置爲「always」則表示全部狀況均可以提高不一樣步的鏡像爲主鏡像
- ha-promote-on-failurez:爲when-synced、不管ha-promote-on-shutdown的值爲何、也不會提高不一樣步的鏡像爲主鏡像
- Federation(聯合):聯合能夠從一個或多個上游(其餘代理上的遠程分發器和隊列)接收消息,並將其路由到本地隊列。
- federation-upstream-set:與「聯合」一塊兒使用的一組「上游」的名稱;或「all」參數,表示使用全部上游
- federation-upstream:用於聯邦的特定上游集合, federation-upstream-set和federation-upstream不兼容(不可同時用)
- Queues:看名字就知道意思了、好比Message TTL(消息TTL),Auto expire(自來處理動失效)等等。就不講了
- Exchanges(備用分發器):若是沒法路由指定的分發器,則就會交由這個「備用分發器」。
咱們添加一個「testUserPolicies」策略。添加完後點擊策略名,可看到策略詳情。在詳情頁能夠刪除此策略。
Limits
cluster