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的隔离效果。

相关推荐
言小乔.1 小时前
202536 | KafKa生产者分区写入策略+消费者分区分配策略
分布式·kafka·linq
predisw1 小时前
kafka leader traffic 重平衡
分布式·kafka
Leaf吧2 小时前
Spring Cloud Stream集成RocketMQ(kafka/rabbitMQ通用)
kafka·rabbitmq·rocketmq
胡尔摩斯.5 小时前
RabbitMQ--基础篇
rabbitmq
Absinthe_苦艾酒9 小时前
SpringCloud之Eureka基础认识-服务注册中心
分布式·微服务·eureka
giser@201110 小时前
ZooKeeper工作机制与应用场景
分布式·zookeeper·云原生
玄武后端技术栈11 小时前
RabbitMQ消息的重复消费问题如何解决?
分布式·rabbitmq
小杜-coding13 小时前
黑马点评day04(分布式锁-setnx)
java·spring boot·redis·分布式·spring·java-ee·mybatis
小猪写代码15 小时前
分布式处理架构
分布式·架构
吴爃19 小时前
了解Hadoop
大数据·hadoop·分布式