1 简介

rabbitmq-management是RabbitMq web管理端,用的是erlang的cowboy框架进行开发。web页面包括Overview(概述)、Connections(连接)、Channels(通道)、Exchanges(交换器)、Queues(队列)、Admin(用户管理)。

2 Overview

rabbitmqTemplate开启confirm rabbitmq页面_虚拟主机

2.1 overview->Totals

rabbitmqTemplate开启confirm rabbitmq页面_Routing_02

第一块,所有队列的阻塞情况

Ready:待消费的消息总数。
Unacked:待应答的消息总数。
Total:总数 Ready+Unacked。

第二块,所有队列的消费情况。速率=(num1-num0)/(s1-s0) num1:s1时刻的个数。num0:s0时刻的个数。

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从磁盘写入消息的速率。

整体角色的个数

Connections:client的tcp连接的总数。
Channels:通道的总数。
Exchange:交换器的总数。
Queues:队列的总数。
Consumers:消费者的总数。

2.2 Overview->Nodes

启动一个broker都会产生一个node。

rabbitmqTemplate开启confirm rabbitmq页面_虚拟主机_03

broker的属性

Name:broker名称
File descriptors:broker打开的文件描述符和限制。
Socket descriptors:broker管理的网络套接字数量和限制。当限制被耗尽时,RabbitMQ将停止接受新的网络连接。
Erlang processes:erlang启动的进程数。
Memory:当前broker占用的内存。
Disk space:当前broker占用的硬盘。
Uptime:当前broker持续运行的时长。
Info:未知。
Reset stats:未知。

2.3 Overview->Ports and contexts

rabbitmqTemplate开启confirm rabbitmq页面_管理控制_04

2.4 Overview->Export definitions
定义由用户,虚拟主机,权限,参数,交换,队列和绑定组成。 它们不包括队列的内容或集群名称。 独占队列不会被导出。

2.5 Overview->Import definitions
导入的定义将与当前定义合并。 如果在导入过程中发生错误,则所做的任何更改都不会回滚。

3 Connections

当前所有客户端活动的连接。包括生成者和消费者。

rabbitmqTemplate开启confirm rabbitmq页面_虚拟主机_05

连接的属性

Virtual host:所属的虚拟主机。
Name:名称。
User name:使用的用户名。
State:当前的状态,running:运行中;idle:空闲。
SSL/TLS:是否使用ssl进行连接。
Protocol:使用的协议。
Channels:创建的channel的总数。
From client:每秒发出的数据包。
To client:每秒收到的数据包。

4 Channels

当前连接所有创建的通道。

rabbitmqTemplate开启confirm rabbitmq页面_rabbitMQ_06

通道的属性

channel:名称。
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消息的速率。

5 Exchanges

rabbitmqTemplate开启confirm rabbitmq页面_虚拟主机_07

交换器属性

Virtual host:所属的虚拟主机。
Name:名称。
Type:exchange type,具体的type可以查看RabbitMq系列之一:基础概念。
Features:功能。 可以是以下之一,或者不是:D: 持久化。T:Internal,存在改功能表示这个exchange不可以被client用来推送消息,仅用来进行exchange和exchange之间的绑定,否则可以推送消息也可以绑定。
Message rate in:消息进入的速率。
Message rate out:消息出去的速率。

Exchange 有四种类型:direct、topic、fanout、headers
Direct :交换机会将消息中的Routing key与该Exchange所有Binding中的Routing key进行匹配,如果相等,就发送到该Binding对应的Queue中。

Fanout :交换机会将接收到的消息发送给所有与之绑定的队列。

Topic :将消息中的Routing key与该Exchange所有Binding中的Routing key进行匹配,匹配成功发送到该Binding对应的Queue中。routingKey必须是由点隔开的一系列的标识符组成(根据消息的特性以.隔开)。

*匹配一个标识符

  #匹配0个或多个标识符

Headers :分发消息不依赖路由键,使用发送消息basicProperties对象中的headers来匹配的,将消息中的headers与该交换机中所有Binding中的参数进行匹配。

6 Queues

rabbitmqTemplate开启confirm rabbitmq页面_管理控制_08

队列的属性

Virtual host:所属的虚拟主机。
Name:名称。
Features:功能。 可以是以下之一,或者不是:D: 持久化。
State:当前的状态,running:运行中;idle:空闲。
Ready:待消费的消息总数。
Unacked:待应答的消息总数。
Total:总数 Ready+Unacked。
incoming:消息进入的速率。
deliver/get:消息获取的速率。
ack:消息应答的速率。

7 Admin

rabbitmqTemplate开启confirm rabbitmq页面_虚拟主机_09

用户属性

Name:名称。
Tags:角色标签,只能选取一个。
Can access virtual hosts:允许进入的vhost。
Has password:设置了密码。

tags(原链接:)

administrator (超级管理员)
可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。
monitoring(监控者)
可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
policymaker(策略制定者)
可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。
management(普通管理者)
仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。
none(其他)
无法登陆管理控制台,通常就是普通的生产者和消费者。