文档章节

RabbitMQ(4)-管理篇

你我他有个梦
 你我他有个梦
发布于 2015/12/20 14:10
字数 1291
阅读 420
收藏 2
点赞 0
评论 0

一.用户管理

针对用户管理,第一种很方面的就是通过web管理界面进行增删改用户以及权限 的管理,第二种就是命令行方式

下面是windows方式,如果使用linux方式,只需将相关bat命令替换为sh即可

rabbitmqctl是管理rabbitmq的命令

1.增加用户

rabbitmqctl.bat add_user rabbitmq rq1

增加一个rabbitmq用户,密码为rq1

2.更改用户角色

rabbitmqctl.bat set_user_tags rabbitmq administrator

 设置其为超级管理员

3.更改用户权限

rabbitmqctl.bat set_permissions -p / rabbitmq ".*" ".*" ".*"

后面三个分别代表配置权限、写权限、读权限

4.其他命令

删除用户:rabbitmqctl  delete_user  Username

修改用户密码:rabbitmqctl  change_password  username  newpassword

二.用户角色

用户角色可分为五类

Administrator | Monitoring | Policymaker | Management | None

1.超级管理员(Administrator)

可登录管理控制台(启用management plugin的情况),可查看所有信息,并且可对用户、策略等进行操作

2.监控者(Monitoring)

可查看rabbitmq节点的相关信息(进程数,内存使用、磁盘使用等),但是不可管理用户

3.策略制定者(Policymaker)

可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。但无法查看节点的相关信息

4.普通管理者

仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。

5.其他

无法登陆管理控制台,通常就是普通的生产者和消费者。

三.服务器管理

1.关闭和重启应用程序的区别

rabbitmqctl stop,会将RabbitMQ应用程序和erlang节点同时关闭,如果在同一个节点运行RabbitMQ和其他erlang应用程序,而只想停止RabbitMQ,则使用rabbitmqctl stop_app

2.检查服务器

列出队列与消息数目

rabbitmqctl list_queues

更多队列消息:

rabbitmqctl list_queues name messages consumers memory

队列属性

rabbitmqctl list_queues name durable auto_delete

查看交换器

rabbitmqctl list_exchanges

交换器属性

rabbitmqctl list_exchanges name type durable auto_delete

绑定信息

rabbitmqctl  list_bindings

web端管理RabbitMQ

1.在overview视图下方你可以下载配置信息,格式为json,还可以针对json配置文件作修改上传,刷新页面即可看到更改的配置

2.另一种是CLI管理方式

HTTP API: 访问  http://主机名/IP:15672/api/     这里讲解很清楚

另一种是Command Line方式:

centos6.5下自带python2.6,如需升级可查看http://www.cnblogs.com/dudu/p/4294238.html

假设已经安装python,通过一下命令即可安装rabbitmqadmin管理脚本,默认是安装到你的当前目录,为了方便管理将他移到rabbitmq相关命令的目录

wget http://主机名/IP:15672/cli/

mv /rabbitmqadmin /usr/rabbitmq/sbin

chmod +x rabbitmqadmin

下面即可使用rabbitmqadmin,输出的内容是格式化之后的



五.属性讲解

1.QUEUE

一旦创建了队列和交换机就不能修改,如要修改需重新创建

持久化(Durability )与exchange是相同的,未持久化的队列会在服务器重启的时候销毁;

自动删除(Auto delete):当没有消费者连接该队列时自动销毁;

私有性(Exclusive ):使队列称为私有队列,只有当前应用程序可用,只有一个消费者;

Message TTL:当一个消息推送至该队列时存在的时间,单位ms

Auto expire: 在队列自动删除之前可以保留多长时间;

Max length :一个队列可以容纳的已准备消息的数量;

2.Message

2.1    Ready

此状态的消息存在于队列中待处理。

2.2    Unacknowledged

此状态的消息表示已经在处理未确认

2.3    Ack

Consumer接收到消息、处理任务完成之后,会发送带有这个消息标示符的ack,来告诉server这个消息接收到并处理完成。RabbitMQ会一直等到处理某个消息的Consumer的链接失去之后,才确定这个消息没有正确处理,从而RabbitMQ重发这个消息。

3.Binding

声明一个队列时,服务会将其绑定到默认的exchange上,而默认的exchange名称是空。而对于持久化的队列和持久化的交换机,如果删除其中一个,与其绑定的也会删除

4.发布订阅

发布者把消息发送给exchangeexchange根据其类型,决定将消息处理到哪个队列,例如通过广播的方式去处理消息,所有的队列都会收到相应的消息

5.WorkQueue

可用于消费者集群,如果一个队列积压太多的消息,如何让消费者均匀的去承担,是它所做的事情。

例如,可以通过控制一个队列单次消费的数量

void BasicQos(uint prefetchSize, ushort prefetchCount, bool global)

假如是一个生产者,3个消费者,发送九条消息,会通过轮询的方式去发送,每个消费者均收到三条消息,并且是按顺序去发送


© 著作权归作者所有

共有 人打赏支持
你我他有个梦

你我他有个梦

粉丝 92
博文 110
码字总数 98858
作品 0
昌平
程序员
RabbitMQ管理插件的安装

先安装rabbitmq-server这里就不写了,之前有篇文章里有相关步骤:RabbitMQ的安装与配置 如果/etc/rabbitmq不存在会报如下错误: Error: {cannotwriteenabledpluginsfile,”/etc/rabbitmq/ena...

openthings
2015/05/21
0
0
Docker下RabbitMQ三部曲之一:极速体验(单机和集群)

从本章开始,我们一起在Docker环境实战RabbitMQ环境部署和对应的Java开发,当前是《Docker下RabbitMQ三部曲》系列的第一篇,整个三部曲由以下三篇文章组成: 1. 第一篇,即本章,我们用最快的...

boling_cavalry
05/12
0
0
RabbitMQ 内存控制 硬盘控制

一、内存控制: vmmemoryhigh_watermark 该值为内存阈值,默认为0.4。意思为物理内存的40%。40%的内存并不是内存的最大的限制,它是一个发布的节制,当达到40%时Erlang会做GC。最坏的情况是使...

andrewniu
05/10
0
0
Docker下RabbitMQ四部曲之四:高可用实战

本章是《Docker下RabbitMQ四部曲》系列的终篇,今天的我们一起来体验Rabbit’MQ集群的高可用能力,看看RabbitMQ集群中的部分节点宕机时,是否还能生产和消费消息; 原文地址:https://blog....

boling_cavalry
05/19
0
0
ubuntu16.04 安装rabbitmq

1、apt-get install rabbitmq-server 2、新增管理员用户 rabbitmqctl adduser admin admin rabbitmqctl setusertags admin administrator 3、安装RabbitMQ监控管理插件进行RabbitMQ的管理,插......

诗和_远方
06/29
0
0
安装 RabbitMQ 消息队列

1、安装运行环境 yum install erlang 2、安装RabbitMQ wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.5/rabbitmq-server-3.3.5-1.noarch.rpm yum install rabbitmq-server-3.......

李伟铭k
07/09
0
0
rabbitmq-server 安装

一,安装rabbitmq-server 1.安装erlang wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm rpm -Uvh erlang-solutions-1.0-1.noarch.rpm rpm --import https:/......

丿小贰丶
05/08
0
0
RabbitMQ系列(一):Windows下RabbitMQ安装及入门

1.Windows下安装RabbitMQ需要以下几个步骤 (1):下载erlang,原因在于RabbitMQ服务端代码是使用并发式语言erlang编写的,下载地址:http://www.erlang.org/downloads,双击.exe文件进行安装就...

xiaomin0322
05/09
0
0
RabbitMQ学习系列 : RabbitMQ安装与配置

1.安装     Rabbit MQ 是建立在强大的Erlang OTP平台上,因此安装RabbitMQ之前要先安装Erlang。     erlang:http://www.erlang.org/download.html     rabbitmq:http://www....

andrewniu
05/09
0
0
openstack 最简单的 RabbitMQ 监控方法

先来看张图: 这是 Nova 的架构图,我们可以看到有两个组件处于架构的中心位置:数据库和Queue。数据库保存状态信息,而几乎所有的 nova-* 服务都直接依赖于 Queue 实现服务之间的通信和调用...

zhongbeida_xue
05/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

JPA @MappedSuperclass 注解说明

基于代码复用和模型分离的思想,在项目开发中使用JPA的@MappedSuperclass注解将实体类的多个属性分别封装到不同的非实体类中。 1.@MappedSuperclass注解只能标准在类上:@Target({java.lang....

海博1600
16分钟前
0
0
Scala Configuration 相关API

Play使用了 Typesafe config library,但是也提供了一个有着更多Scala高级特性的的 Configuration 封装。不熟悉Typesafe配置的开发者可以移步 configuration文件的语法和特性文档。 读取配置...

Landas
今天
1
0
使用cookie技术 记住账号

1. 效果 2. 实现过程 2.1 前端 将用户的选中传递给后台 这个参数的获取是 参考:https://my.oschina.net/springMVCAndspring/blog/1860498 // var rememberLogin = $("#rememberLoginId").i...

Lucky_Me
今天
1
0
《趣谈网络协议》02之网络分层的真实含义

一、提出问题 1.提出问题 当你听到什么二层设备、三层设备、四层 LB 和七层 LB 中层的时候,是否有点一头雾水,不知道这些所谓的层,对应的各种协议具体要做什么“工作”? 2.这四个问题你弄...

aibinxiao
今天
2
0
Python3学习日志二 Python中的集合set和字典dict

1.集合set 定义一个集合set 我们可以看到定义集合set有两种不同的形式,如果要定义一个空的集合set不能用{}而是要用set();另外,集合是无序的,而且set中的元素是不可重复的,如果你定义了一...

Mr_bullshit
今天
0
0
adb 操作指令详解

ADB,即 Android Debug Bridge,它是 Android 开发/测试人员不可替代的强大工具,也是 Android 设备玩家的好玩具。 注:有部分命令的支持情况可能与 Android 系统版本及定制 ROM 的实现有关。...

孟飞阳
今天
0
0
nodejs安装以及环境配置(很好的node安装和配置文章,少走很多弯路)

一、安装环境 1、本机系统:Windows 10 Pro(64位) 2、Node.js:v6.9.2LTS(64位) 二、安装Node.js步骤 1、下载对应你系统的Node.js版本:https://nodejs.org/en/download/ 2、选安装目录进...

sprouting
今天
1
0
Redisson

了解了Redisson,发现使用挺简单的,接下来准备深入学习一下。 Redisson介绍 Redisson是架设于Redis基础之上的一个Java驻内存数据网格(In-Memory Data Grid) Redisson在基于NIO的Netty框架上...

to_ln
今天
0
0
python有哪些好玩的应用实现,用python爬虫做一个二维码生成器

python爬虫不止可以批量下载数据,还可以有很多有趣的应用,之前也发过很多,比如天气预报实时查询、cmd版的实时翻译、快速浏览论坛热门帖等等,这些都可以算是爬虫的另一个应用方向! 今天给...

python玩家
今天
0
0
python爬虫日志(3)-爬去异步加载网页

在浏览器检查元素页面中,选取Network中的XHR选项即可观察每次加载页面,网页发出的请求,观察url的规律即可利用封装的函数对每一页进行爬取。

茫羽行
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部