RabbitMQ小记(四)
1、RabbitMQ管理
(1)权限管理
物理服务器和虚拟主机都各自有独立的权限管理,用户访问需要设置权限。
授权命令:rabbitmqctl set permissions [-p vhost] {user) {conf) {write) { read)
vhost:授予用户可以访问的vohost名称。
user:访问指定vohost的用户名称。
conf:用户在那些资源有配置权限的正则表达式
write:用户在哪些资源上有写权限的正则表达式
read:用户在那些资源上有读权限的正则表达式
例如:rabbitmqctl set_permissions -p vhost1 root " .* " " .* " " .* "
(2)用户管理
单个用户可以访问多个RabbitMQ服务,根据创建用户时赋予的权限执行不同的操作。
添加用户命令:rabbitmqctl add_user {username} {password}
修改用户密码:rabbitmqctl change_password {username} {newpassword}
清除用户密码:rabbitmqctl clear_password {uesrname}
通过密码验证用户:rabbitmqctl authenticate_user {username} {password}
删除用户:rabbitmqctl delete_user {username}
查询所有用户:rabbitmqctl list_user
设置用户角色:rabbitmqctl set _user_tags {user} {tags}
(3)Web管理
访问http://127.0.0.1:15672,默认用户名/密码:guest/guest
远程RabbitMQ服务guest访问不了。
2、RabbitMQ配置
rabbitmq.config中MQ服务配置信息
tcp_listeners 监听
num_tcp_acceptors 处理TCP连接Eelang进程数,默认为0.
{
{
rabbit,{
{tcp_listeners ,[5673]}//修改监听端口
}
}
}.
3、RabbitMQ集群
rabbotMQ集群允许消费者和生产者在rabbitmq单个节点崩溃的情况下继续运行,还可以通过集群添加更多的节点来线性的扩展吞吐量,当集群中的某个节点崩溃时,该节点上的所有队列中的消息也会丢失。
rabbitMQ集群的元数据:队列元数据、交换器、绑定关系元数据、vhost元数据
多机节点配置:(1)配置各个节点的hosts文件,让各个节点可以互相识别
(2)编辑每个节点的cookie文件,保证每个节点的cookie值一样
(3)配置集群,可以通过rabbitmqctl配置或通过rabbitmq.config配置文件配置或通过rabbitmq-autocluster插件配置
将节点加入到指定集群中:rabbitmqctl joio_cluster {cluster_node} [--ram]
显示集群状态:rabbitmqctl cluster_status
修改集群节点类型:rabbitmqctl forget_cluster _ node [-- offiine]
将节点从集群中删除:rabbitmqctl update _ cluster_nodes {clusternode}
4、RabbitMQ存储
rabbitMQ队列通常由rabbit_amqqueue_process和backing_queue两部分组成,rabbit_amqqueue_process负责处理协议相关的消息,如接收生产者发送的消息、先消费者交付消息、处理消息确认等。backing_queue是消息存储的具体形式,并向rabbit_amqqueue_process提供相关的接口以供调用。
RabbitMQ小记(四)的更多相关文章
- RabbitMQ(四) -- Routing
RabbitMQ(四) -- Routing `rabbitmq`可以通过路由选择订阅者来发布消息. Bindings 通过下面的函数绑定Exchange与消息队列: channel.queue_bi ...
- 快速掌握RabbitMQ(二)——四种Exchange介绍及代码演示
在上一篇的最后,编写了一个C#驱动RabbitMQ的简单栗子,了解了C#驱动RabbitMQ的基本用法.本章介绍RabbitMQ的四种Exchange及各种Exchange的使用场景. 1 direc ...
- RabbitMQ第四篇:Spring集成RabbitMQ
前面几篇讲解了如何使用rabbitMq,这一篇主要讲解spring集成rabbitmq. 首先引入配置文件org.springframework.amqp,如下 <dependency> ...
- RabbitMQ的四种ExChange
在message到达Exchange后,Exchange会根据route规则进入对应的Queue中,message可能进入一个Queue也可能进入对应多个Queue,至于进入哪个Queue或者是说哪个 ...
- RabbitMQ小记(二)
1.RabbitMQ相关介绍 (1)RabbitMQ整体上是一个生产者和消费者模型,主要负责接收.存储.转发消息.RabbitMQ整体结构图如下: (2)生产者:发送消息的一方,生产者创建一条消息,发 ...
- RabbitMQ(四)
RabbitMQ 配置 一.RabbitMQ 配置修改方式 1.修改环境变量 2.修改配置文件(只介绍这个) 3.修改运行时参数和政策 locate rabbitmq vi /var/log/rabb ...
- rabbitMQ第四篇:远程调用
前言:前面我们讲解的都是本地服务器,现在如果需要远程计算机上运行一个函数,等待结果.这就是一个不同的故事了,这种模式通常被称为远程过程调用或者RPC. 本章教程我们使用RabbitMQ搭建一个RPC系 ...
- RabbitMQ (四) 路由选择 (Routing) -摘自网络
本篇博客我们准备给日志系统添加新的特性,让日志接收者能够订阅部分消息.例如,我们可以仅仅将致命的错误写入日志文件,然而仍然在控制面板上打印出所有的其他类型的日志消息. 1.绑定(Bindings) 在 ...
- RabbitMQ (四) 路由选择 (Routing)
上一篇博客我们建立了一个简单的日志系统,我们能够广播日志消息给所有你的接收者,如果你不了解,请查看:RabbitMQ (三) 发布/订阅.本篇博客我们准备给日志系统添加新的特性,让日志接收者能够订阅部 ...
随机推荐
- Java中抽象类和接口的介绍及二者间的区别
接口(Interface)和抽象类(Abstract Class)是支持抽象类定义的两种机制. 一.抽象类 在Java中被abstract关键字修饰的类称为抽象类,被abstract关键字修饰的方法称 ...
- Java二进制和位运算,这一万字准能喂饱你
基础不牢,地动山摇.本文已被 https://www.yourbatman.cn 收录,里面一并有Spring技术栈.MyBatis.JVM.中间件等小而美的专栏供以免费学习.关注公众号[BAT的乌托 ...
- 没想到吧!关于Dubbo的『消费端线程池模型』官网也写错了。
这是why的第 63 篇原创文章 荒腔走板 大家好,我是 why,欢迎来到我连续周更优质原创文章的第 63 篇.老规矩,先荒腔走板聊聊其他的. 上面这张图片是我前几天整理相册的时候看到的.拍摄于 20 ...
- oeasy教您玩转linux010203显示logo
我们来回顾一下 上一部分我们都讲了什么?
- MPI Maelstrom (Dijstra+atoi函数转换整数)
BIT has recently taken delivery of their new supercomputer, a 32 processor Apollo Odyssey distribute ...
- Codeforces Round #560 (Div. 3)A-E
A. Remainder output standard output You are given a huge decimal number consisting of nn digits. It ...
- JS中写继承的方式
有父子两个函数,代表两个类: var parent = function(){} var child = function(){} 一.直接继承 child.prototype = new paren ...
- 剑指 Offer 45. 把数组排成最小的数
题目描述 输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个. 示例 1: 输入: [10,2] 输出: "102" 示例 2: 输入: ...
- Kubernetes 服务部署最佳实践(一) ——如何更好地设置 Request 与 Limit
如何为容器配置 Request 与 Limit? 这是一个即常见又棘手的问题,这个根据服务类型,需求与场景的不同而不同,没有固定的答案,这里结合生产经验总结了一些最佳实践,可以作为参考. 所有容器都应 ...
- springboot +jsp项目打包部署到华为云服务器
注:打包之前先保证你的项目本地运行没问题. 一.打包 打包有两种方式,打成jar包和打成war包.因为springboot有内置的服务器,所以选择打成jar包,这样云服务器就不用装tomcat了. 打 ...