深度剖析RabbitMQ:从基础组件到管理页面详解

server/2025/1/19 4:55:32/

文章目录

  • 一、简介
  • 二、Overview
    • 2.1 Overview->Totals
    • 2.2 Overview->Nodes
    • broker的属性
    • 2.3 Overview->Churn statistics
    • 2.4 Overview->Ports and contexts
    • 2.5 Overview->Export definitions
    • 2.6 Overview->Import definitions
  • 三、Connections
    • 连接的属性
  • 四、Channels
    • 通道的属性
  • 五、Exchanges
    • 交换器属性
  • 六、Queues
    • 队列的属性
  • 七、Admin
    • 用户属性

一、简介

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

  1. Overview:这⾥可以概览 RabbitMQ 的整体情况,如果是集群,也可以查看集群中各个节点的情况。包括 RabbitMQ 的端⼝映射信息等,都可以在这个选项卡中查看。
  2. Connections:这个选项卡中是连接上 RabbitMQ 的⽣产者和消费者的情况。
  3. Channels:这⾥展⽰的是“通道”信息,关于“通道”和“连接”的关系
  4. Exchange:这⾥展⽰所有的交换机信息。
  5. Queue:这⾥展⽰所有的队列信息。
  6. Admin:这⾥展⽰所有用户信息

二、Overview

在这里插入图片描述

2.1 Overview->Totals

在这里插入图片描述
第一块,所有队列的阻塞情况
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。
在这里插入图片描述

broker的属性

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

2.3 Overview->Churn statistics

展示的是 Connection、Channel 以及 Queue 的创建/关闭速率。
在这里插入图片描述

2.4 Overview->Ports and contexts

在这里插入图片描述
5672 是 RabbitMQ 通信端口。
15672 是 Web 管理页面端口。
25672 是集群通信端口。

2.5 Overview->Export definitions

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

2.6 Overview->Import definitions

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

三、Connections

当前所有客户端活动的连接。包括生成者和消费者。
在这里插入图片描述

连接的属性

Virtual host:所属的虚拟主机。
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:producter pub消息的速率。
confirm:producter confirm消息的速率。
deliver/get:consumer 获取消息的速率。
ack:consumer ack消息的速率。

五、Exchanges

在这里插入图片描述

交换器属性

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中的参数进行匹配。

六、Queues

在这里插入图片描述

队列的属性

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

七、Admin

在这里插入图片描述

用户属性

Name:名称。
Tags:角色标签,只能选取一个。
Can access virtual hosts:允许进入的vhost。
Has password:设置了密码。
administrator (超级管理员)
可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。
monitoring(监控者)
可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
policymaker(策略制定者)
可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。
management(普通管理者)
仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。
none(其他)
无法登陆管理控制台,通常就是普通的生产者和消费者。


http://www.ppmy.cn/server/159544.html

相关文章

如何在亚马逊云科技上消除无服务器网页应用冷启动时间(下篇)

背景 我们在云端搭建无服务器(serverless)开发架构时,经常会被冷启动(cold start)带来的应用延迟所困扰。冷启动是指当无服务器资源在一段时间内未被调用,或需要扩展以处理新请求时,系统需要初…

阀井可燃气体监测仪,开启地下管网安全新篇章-旭华智能

在城市的脉络中,地下管网犹如隐秘的动脉,支撑着现代生活的运转。而在这庞大网络的关键节点上,阀井扮演着不可或缺的角色。然而,由于其密闭性和复杂性,阀井内部一旦发生可燃气体泄漏,将对公共安全构成严重威…

C 语言的void*到底是什么?

一、void* 的类型任意性 void* 是一种通用指针类型。它可以指向任意类型的数据。例如,它可以指向一个整数(int)、一个浮点数(float)、一个字符(char)或者一个结构体等。在C语言中,当…

求两个矩阵的乘积

求两个矩阵的乘积 分数 15 全屏浏览 切换布局 作者 C课程组-hwr-zy 单位 浙江大学 输入三个正整数m&#xff0c;l&#xff0c;n(0<m&#xff0c;n&#xff0c;l<10)&#xff0c;再输入两个的矩阵a&#xff08;mxl&#xff09;和b&#xff08;lxn&#xff09;。要求把a和…

CES 2025:XEO 展出双眼8K VR头显,售价2000美元

在2025年国际消费类电子产品展览会(CES)上,XEO公司凭借其最新的VR头显设备吸引了众多目光。这款标榜双眼8K分辨率的高端VR头显不仅展示了当前虚拟现实技术的顶尖水平,同时也设定了新的行业标杆。本文将详细介绍这款产品的特点、技术和市场定位。 XEO 双眼8K VR头显:极致视…

新型智慧园区解决方案:AI赋能场景,核心架构全解析

新型智慧园区解决方案通过集成物联网、大数据、云计算等前沿技术&#xff0c;并结合AI的深度应用&#xff0c;为园区的管理、运营和服务带来了前所未有的变革。 一、AI赋能智慧园区的应用场景 1、智能安防监控 AI技术使园区监控系统具备了超乎寻常的洞察力。通过高精度的物体…

idea创建SpringBoot自动创建Lombok无效果(解决)

问题&#xff1a;可以正常引用&#xff0c;而且也有提示&#xff0c;但是就是没有效果出来 首先按照网上的教程设置了这个地方发现还是没用&#xff0c;而且之前手动引入依赖都不用的&#xff0c;但是设置总之没错 最后发现&#xff1a;是POM.xml自动生成的配置文件的时候&…

minio https配置

minio启动时候指定数据目录,配置文件&#xff0c;密钥文件目录&#xff0c;环境文件 1.创建minio用户,专门用于服务启动的 groupadd -r minio-user useradd -M -r -g minio-user minio-user 2.在当前用户目录下创建minio目录&#xff0c;存储minio相关文件 mkdir minio 在mini…