Rabbitmq 之 vhost
1.vhost 介绍
每一个RabbitMQ服务器都能创建虚拟消息服务器,我们称为虚拟主机Vhost.每一个vhost 本质上是一个mini版 的RabbitMq. 拥有自己的队列 交换器 和绑定. 更重要的是, 它拥有自己的权限机制,
vhost 是AMQP 概念基础, 你必须在连接时进行制定, 由于RabbitMq 包含了开箱即用的默认vhost:"/", 因此使用起来非常方便.可以通过默认的guest 和 密码 guest 访问默认的vhost.
在Rabbit里创建一个用户时, 用户通常会被指派至少一个vhost , 并且只能访问被指派vhost内的队列,交换器和绑定. vhost 之间是绝对隔离的.
在RabbitMq 集群上创建vhost 时, 整个集群上都会创建该vhost. vhost 不仅消除了为基础架构中的每一层运行一个RabbitMq服务器的需要, 童谣避免为每一层创建不同的集群.
2.管理vhost
新增: RabbitMq 安装路径 ./sbin 目录中 的 rabbitmqctl 工具来创建.
rabbitmqctl add_vhost[vhost_name] 就可以创建一个vhost.vhost_name 就是想要创建的vhost.
删除: rabbitmqctl delete_vhost[vhost_name]
查询: 查询特定rabbit 上有哪些vhost: ./sbin/rabbitmqctl list_vhosts
注: 也可以通过制定 -n rabbit@[server_name] 分成两部分: 左边是 Erlang 应用名称, 在这里永远都是rabbit . 右边是服务器主机名和IP地址. 你需要确保
运行Rabbit节点的服务器和运行rabbitmqctl的工作站安装了相同的Erlang cookie.