赞
踩
作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO
联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬
学习必须往深处挖,挖的越深,基础越扎实!
阶段1、深入多线程
阶段2、深入多线程设计模式
阶段3、深入juc源码解析
码哥源码部分
码哥讲源码-原理源码篇【2024年最新大厂关于线程池使用的场景题】
码哥讲源码-原理源码篇【揭秘join方法的唤醒本质上决定于jvm的底层析构函数】
码哥源码-原理源码篇【Doug Lea为什么要将成员变量赋值给局部变量后再操作?】
码哥讲源码【谁再说Spring不支持多线程事务,你给我抽他!】
打脸系列【020-3小时讲解MESI协议和volatile之间的关系,那些将x86下的验证结果当作最终结果的水货们请闭嘴】
RabbitMQ是一个多租户系统,connetions、exchange、queues、bindings、user permissions、policies和其它一些属于虚拟主机的东西;
虚拟主机(vhost)提供逻辑分组和资源分离。每一个vhost本质上是一个mini版的RabbitMQ服务器,拥有自己的connection、exchange、queue、binding等,拥有自己的权限。vhost之于RabbitMQ就像虚拟机于物理机一样,他们通过在各个实例间提供逻辑上分离,允许为不同的应用程序安全保密的运行数据。
vhost主机具有名称,当AMQP 0-9-1客户端连接到RabbitMQ时,它将指定要连接的虚拟主机名称。如果身份验证成功并且提供的用户名被授予了对虚拟主机的权限,则建立连接。
与虚拟主机的连接只能在该虚拟主机中的交换器、队列、绑定等上运行。仅当应用程序同时连接到两个虚拟主机时,才可能在不同的虚拟主机中进行队列和交换器的“互联”。例如:一个应用程序可以从一个虚拟主机中获取数据,然后发送到另外一个虚拟主机。
- rabbitmqctl list_vhosts
rabbitmqctl add_vhost <vhost_name>
rabbitmqctl delete_vhost <vhost_name>
rabbitmqctl add_user <username> <password>
rabbitmqctl set_user_tags <username> <tag>
rabbitmqctl set_permissions [-p <vhost>] <user> <conf> <write> <read>
权限设置包括:配置(队列和交换器的创建和删除)、写(发布消息)、读(有关消息的任何操作,包括清除这个队列);
- rabbitmqctl list_users
- rabbitmqctl delete_user Username
- rabbitmqctl change_password Username Newpassword
要限制vhost为vhost_name的并发客户端连接总数,请使用一下限制定义:
rabbitmqctl set_vhost_limits -p vhost_name '{"max-connections": 256}'
要禁用客户端与虚拟主机的连接,请将限制设置为零:
rabbitmqctl set_vhost_limits -p vhost_name '{"max-connections": 0}'
要取消限制,请将其设置为负值:
rabbitmqctl set_vhost_limits -p vhost_name '{"max-connections": -1}'
要限制vhost为vhost_name的队列总数,请使用以下限制:
- rabbitmqctl set_vhost_limits -p vhost_name '{"max-queues": 1024}
要取消限制,请将其设置为:
rabbitmqctl set_vhost_limits -p vhost_name '{"max-queues": -1}'
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。