RabbitMQ(控制台模拟收发消息与数据隔离)

1.RabbitMQ架构图

  • publisher:生产者,也就是发送消息的一方

  • consumer:消费者,也就是消费消息的一方

  • queue:队列,存储消息。生产者投递的消息会暂存在消息队列中,等待消费者处理

  • exchange:交换机,负责消息路由。生产者发送的消息由交换机决定投递到哪个队列。

  • virtual host:虚拟主机,起到数据隔离的作用。每个虚拟主机相互独立,有各自的exchange、queue

2.模拟收发消息

一.交换机

1.进去任意一个交换机,模拟生产者发送消息

2.由于没有消费者存在,最终消息丢失了,这样说明交换机没有存储消息的能力。

二.队列

1.添加两个队列:hello.queue1与hello.queue2

2.交换机与消息队列绑定

3.交换机再次发送消息

此时若有消费者监听了MQ的hello.queue1hello.queue2队列,就会消费该消息。

3.数据隔离

1.用户管理:

这里的用户都是RabbitMQ的管理或运维人员。

  • Nameitheima,也就是用户名

  • Tagsadministrator,说明itheima用户是超级管理员,拥有所有权限

  • Can access virtual host/,可以访问的virtual host,这里的/是默认的virtual host

当多个项目同时使用时,为了避免互相干扰,可以利用virtual host的隔离特性,将不同的项目隔离

2.virtual host

1.添加一个用户(此时没有设置virtual host)

2.切换用户为新建的用户

3.添加一个单独的virtual host

4.切换virtual host路径(此时便将/的消息队列隔离了)

相关推荐
Logintern091 天前
遇到RabbitMQ 的 `channel_max` 限制报错
rabbitmq
ICollection1 天前
RabbitMQ的安装集群、仲裁队列配置
rabbitmq·集群·银河麒麟
Z_z在努力1 天前
【rabbitmq】RabbitMQ 全面详解:从核心概念到高级应用
分布式·rabbitmq
漫谈网络2 天前
RabbitMQ核心机制解析
分布式·rabbitmq
ApachePulsar2 天前
Apache Pulsar vs. RabbitMQ:差异与比较
分布式·rabbitmq·apache
Z_z在努力3 天前
【rabbitmq 高级特性】RabbitMQ 延迟队列全面解析
分布式·rabbitmq
sg_knight3 天前
Spring Cloud与RabbitMQ深度集成:从入门到生产级实战
java·spring boot·spring·spring cloud·消息队列·rabbitmq·stream
IT机器猫3 天前
RabbitMQ
java·rabbitmq·java-rabbitmq
熊文豪4 天前
Windows安装RabbitMQ保姆级教程
windows·分布式·rabbitmq·安装rabbitmq
勇往直前plus4 天前
CentOS 7 环境下 RabbitMQ 的部署与 Web 管理界面基本使用指南
前端·docker·centos·rabbitmq