大家好,欢迎来到IT知识分享网。
系列文章目录
准备篇 RabbitMQ安装文档
第一章 RabbitMQ快速入门篇
第二章 RabbitMQ的Web管理界面详解
第三章 RabbitMQ进阶篇之死信队列
第四章 RabbitMQ进阶篇之通过插件实现延迟队列
文章目录
前言
恭喜所有看到本篇文章的小伙伴,成功解锁了RabbitMQ系列之
Web管理界面详解的内容🎁通过本文,你将快速了解到RabbitMQ的Web管理界面(rabbitmq_management)是如何操作的、以及对
RabbitMQ的RoutingKey通配符有一个更深刻的印象😄接下来,小名通过较为复杂的
Topic模式作为例子,带大家操作一遍吧😁
一、http://IP:15672 进入登陆界面
二、概要界面
三、连接界面
Virtual host: 所属的虚拟主机。
Name: 名称。
User name: 使用的用户名。
State: 当前的状态,running:运行中;idle:空闲。
SSL/TLS: 是否使用ssl进行连接。
Protocol: 使用的协议。
Channels: 创建的channel的总数。
From client: 每秒发出的数据包。
To client: 每秒收到的数据包。
点击Connection Name 查看连接中的通道
四、通道界面
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消息的速率。
五、交换机页面
其中:
features的几个参数
D: 是 durable 的缩写,代表这个队列中的消息支持持久化
I: 是 internal 的缩写,表示这个exchange不可以被client用来推送消息,仅用来进行exchange之间的绑定。
Args: 是 arguments 的缩写。代表该队列配置了 arguments 参数。
TTL: 是 x-message-ttl 的缩写。设置队列中的所有消息的生存周期(统一为整个队列的所有消息设置生命周期), 也可以在发布消息的时候单独为某个消息指定剩余生存时间,单位毫秒。
DLX: 说明该队列配置了 x-dead-letter-exchange。当队列消息长度大于最大长度、或者过期的等,将从队列中删除的消息推送到指定的交换机中去而不是丢弃掉。
DLK: x-dead-letter-routing-key 的缩写,将删除的消息推送到指定交换机的指定路由键的队列中去。
六、队列界面
队列的属性
Virtual host: 所属的虚拟主机。
Name: 名称。
Features: 功能。(参数参考上述交换机页面)
State: 当前的状态,running:运行中;idle:空闲。
Ready: 待消费的消息总数。
Unacked: 待应答的消息总数。
Total: 总数 Ready+Unacked。
incoming: 消息进入的速率。
deliver/get: 消息获取的速率。
ack: 消息应答的速率。
随机点击一个队列
滑动页面到下面,会看到Get messages,点击”Ack Mode“下拉框我们会看到处理消息的4中模式,这里小名觉得是个很重要的部分,您需要继续向下看,小名会在”八、Topic模式实例实操“中给您讲解清楚。
七、Admin界面
用户属性
Name: 名称。
Tags: 角色标签,只能选取一个。
Can access virtual hosts: 允许进入的vhost。
Has password: 设置了密码。
八、Topic模式实例实操(直观理解RabbitMQ通配符!)
小名在 “RabbitMQ快速入门篇” 中提到过多次Topic模式的通配符,可能大家还没有理解透彻,这部分小名将通过Topic帮大家梳理通配符以及RabbitMq管理界面中的实操。
8.1 交换机
-
通过界面,创建好点击
topicExchange
交换机,并点击进去。
-
创建三个队列
topic.queue.a
、topic.queue.b
、topic.queue.c
捆绑topicExchange
交换机,且RoutingKey分别设置为eamon.#
、.dailyTesting.
、#.IT.#
8.2 队列
-
我们进入Queues界面,查看创建好的三个队列
-
依次查看绑定信息
8.3 开始测试(重点)
我们来重温一下前面文章说过的,RabbitMQ中通配符的规则:
通配符 | 规则 |
---|---|
.# |
0或1级又或多级 |
.* |
有且只能有1级 |
8.3.1 情景一
猜测:应该只有 queue.a 收到消息,b和c收不到消息!
看结果:
8.3.2 情景二
猜测:应该只有 queue.a 收到消息,b和c收不到消息!
看结果:
8.3.3 情景三
猜测:应该只有 queue.a收到消息,b和c收不到消息!
看结果:
我们来看下 a 收到的消息
8.3.4 情景四
猜测:应该只有 queue.a、b收到消息,c收不到消息!
看结果:
猜测正确!a、b都接到消息了!这是因为: “.# : 0或1级又或多级 ”
8.3.5 情景五
猜测:应该只有 queue.a、b、c都收到消息!
看结果:
猜测正确!a、b、c都接到消息了!
8.4 查看所有的结果
-
topic.queue.a
-
topic.queue.b
-
topic.queue.c
九、拓展应用
例如:
- c队列使用
Nack
那种方式不会消费队列中消息,所以队列中有一条消息
- c队列使用
Ack
那种方式会消费队列中消息,
所以c队列中的那一条消息被消费掉了!
如若您在文章中发现任何错误的地方,希望您可以在评论区给予小名批评指正🤝 如果觉得小名的文章帮助到了您,请关注小名的专栏【RabbitMQ】,支持一下小名😄,给小名的文章点赞👍、评论✍、收藏🤞谢谢大家啦~♥♥♥
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/7129.html