RabbitMQ数据隔离

1.用户管理

点击Admin选项卡,首先会看到RabbitMQ控制台的用户管理界面:

这里的用户都是RabbitMQ的管理或运维人员。目前只有安装RabbitMQ时添加的itheima这个用户。仔细观察用户表格中的字段,如下:

  • Nameitheima,也就是用户名
  • Tagsadministrator,说明itheima用户是超级管理员,拥有所有权限
  • Can access virtual host/,可以访问的virtual host,这里的/是默认的virtual host

对于小型企业而言,出于成本考虑,我们通常只会搭建一套MQ集群,公司内的多个不同项目同时使用。这个时候为了避免互相干扰, 我们会利用virtual host的隔离特性,将不同项目隔离。一般会做两件事情:

  • 给每个项目创建独立的运维账号,将管理权限分离。
  • 给每个项目创建不同的virtual host,将每个项目的数据隔离。

比如,我们给黑马商城创建一个新的用户,命名为hmall

你会发现此时hmall用户没有任何virtual host的访问权限:

别急,接下来我们就来授权。

2.virtual host

我们先退出登录:

切换到刚刚创建的hmall用户登录,然后点击Virtual Hosts菜单,进入virtual host管理页:

可以看到目前只有一个默认的virtual host,名字为 /。 我们可以给黑马商城项目创建一个单独的virtual host,而不是使用默认的/

创建完成后如图:

由于我们是登录hmall账户后创建的virtual host,因此回到users菜单,你会发现当前用户已经具备了对/hmall这个virtual host的访问权限了:

此时,点击页面右上角的virtual host下拉菜单,切换virtual host/hmall

然后再次查看queues选项卡,会发现之前的队列已经看不到了:

这就是基于virtual host的隔离效果。

相关推荐
青云交3 小时前
Java 大视界 -- 基于 Java 的大数据分布式数据库架构设计与实践(125)
java·大数据·分布式·分布式数据库·架构设计·数据处理·高可用性
犀思云3 小时前
领先AI企业经验谈:探究AI分布式推理网络架构实践
人工智能·分布式·ai网络
MarkHD3 小时前
第二十五天 实践分布式数据管理,实现数据在多设备间的同步
分布式·wpf
种豆走天下3 小时前
用 Kafka、RabbitMQ、RocketMQ、Redis 、Nginx等组件优化
kafka·rabbitmq·rocketmq
不爱学习的小枫5 小时前
spark常见的submit参数
大数据·分布式·spark
@TangXin6 小时前
RabbitMQ容器部署
rabbitmq
种豆走天下16 小时前
Zookeeper学习
分布式·学习·zookeeper
WeiLai111217 小时前
面试基础--高并发高可用架构深度实践:降级熔断(Hystrix vs Sentinel)核心原理与源码解析
java·分布式·后端·hystrix·面试·架构·sentinel
Java码农也是农19 小时前
RabbitMQ使用延迟消息
java·rabbitmq·延迟消息
恋红尘20 小时前
RabbitMq
数据库·分布式·rabbitmq