RabbitMQ:

  MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过 队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求

  jms  mq   aq对比:(大致了解就行,后期我会详细分析[kakfa  | Jafka |  MQ  |  AQ |  ZeroMQ等消息中间件])

    jms是sun公司提供的一套消息中间件的标准和Api,而MQ则是遵循了AMQP协议的具体实现和产品,aq(ActiveMQ)已经贡献给apache,原来是阿里的消息中间件

安装RabbitMQ: 

  rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rabbit MQ 是建立在Erlang OTP平台上。所以先安装erlang平台:

  准备工作:

    下载erlang 和 rabbitMQ:(我已经下载好了)

    

   1>  双击安装erlang平台,傻瓜式安装就行,尽量保证安装的文件夹不要有空格  ,最后安装完后配置环境变量:

     

   2>再安装rebbitServer,双击傻瓜式安装,安装目录不要有空格,存在空格可能会报错的哦。默认安装的RabbitMQ 监听端口是5672

   3>激活Rabbit MQ's Management Plugin,作用是为了可以通过web访问:(15762 是web管理的监控端口,5762是rabbitMQ的监控端口,不要弄混了)

    win+R    进入命令行,输入下面命令,前面是rebbitmq的安装目录,自己换成自己的即可:

    "D:\company\rabbitMq\rabbitMqServer\rabbitmq_server-3.7.7\sbin\rabbitmq-plugins.bat" enable rabbitmq_management

    

    这样,就安装好插件了,是不是能使用了呢?别急,需要重启服务才行,使用命令:

net stop RabbitMQ && net start RabbitMQ

    这时候的,也许会出现这种结果:

    

    “发生错误:发生系统错误 5。  拒绝访问。”

    问题解决方案:使用管理员打开cmd再执行此命令:

    

    创建用户,密码,绑定角色

      使用rabbitmqctl控制台命令(位于C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.5\sbin>)来创建用户,密码,绑定权限等。

      注意:安装路径不同的请看仔细啊。

        rabbitmq的用户管理包括增加用户,删除用户,查看用户列表,修改用户密码。

        查看已有用户及用户的角色:rabbitmqctl.bat list_users

        新增一个用户:rabbitmqctl.bat add_user username password

    huhy  后面没有“[administrator]”

      这个administrator是干嘛用的呢?这就涉及到用户角色问题了:rabbitmq用户角色可分为五类:超级管理员, 监控者, 策略制定者, 普通管理者以及其他。

      (1) 超级管理员(administrator)

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

      (2) 监控者(monitoring)

        可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

      (3) 策略制定者(policymaker)

        登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。

      (4) 普通管理者(management)

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

      5) 其他的

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

    

  权限设置

    用户有了角色,那也需要权限设置啊,别急,慢慢来:

    按照官方文档,用户权限指的是用户对exchange,queue的操作权限,包括配置权限,读写权限。

    我们配置权限会影响到exchange、queue的声明和删除。

    读写权限影响到从queue里取消息、向exchange发送消息以及queue和exchange的绑定(binding)操作。

      例如: 将queue绑定到某exchange上,需要具有queue的可写权限,以及exchange的可读权限;向exchange发送消息需要具有exchange的可写权限;从queue里取数据需要具有queue的可读权限

    权限相关命令为:

      (1) 设置用户权限

        rabbitmqctl  set_permissions  -p  VHostPath  User  ConfP  WriteP  ReadP

      (2) 查看(指定hostpath)所有用户的权限信息

        rabbitmqctl  list_permissions  [-p  VHostPath]

      (3) 查看指定用户的权限信息

        rabbitmqctl  list_user_permissions  User

      (4)  清除用户的权限信息

        rabbitmqctl  clear_permissions  [-p VHostPath]  User

   4>打开浏览器访问 http://localhost:15672  默认的用户名/密码是guest/guest,我自己创建了一个用户:

    

    

  到这,rabbitMQ就安装完成,并且启动了,后期我会介绍springboot整合rabbitMQ的用法,以及最后springcloud 整合bus的时候用到rabbitMQ的用法

命令汇总:

使用RabbitMQ 管理插件,可以更好的可视化方式查看Rabbit MQ 服务器实例的状态。
rabbitmq-plugins.bat enable rabbitmq_management
重启服务
net stop RabbitMQ && net start RabbitMQ
创建用户
rabbitmqctl.bat add_user huhy
赋予权限
rabbitmqctl.bat set_user_tags huhy administrator
删除默认的管理员用户
rabbitmqctl.bat delete_user guest
页面访问
http://localhost:15672

权限相关命令为:

设置用户权限

rabbitmqctl  set_permissions  -p  VHostPath  User  ConfP  WriteP  ReadP

查看(指定hostpath)所有用户的权限信息

rabbitmqctl  list_permissions  [-p  VHostPath]

查看指定用户的权限信息

rabbitmqctl  list_user_permissions  User

清除用户的权限信息

rabbitmqctl  clear_permissions  [-p VHostPath]  User

 

 

window下安装RabbitMQ的更多相关文章

  1. Window下安装使用RabbitMQ

    RabbitMQ官网 http://www.rabbitmq.com 下载地址 http://www.rabbitmq.com/download.html 一 Windows下安装RabbitMq 1 ...

  2. Windows下安装RabbitMQ

    今天正好给自己机器安装rabbitmq,总结下安装经验. 现在国内访问erlang,和 RabbitMQ 官网好像都很难连上.我已下载好了资源,需要的朋友可以下载. 链接: https://pan.b ...

  3. window下安装 node ,并搭建 vue 项目

    uname -a  命令查看到我的Linux系统位数是64位(备注:x86_64表示64位系统, i686 i386表示32位系统) window下安装node 1.在官网上选择对应的位数的msi安装 ...

  4. window下安装cross-env解决NODE_ENV ts-node 不是内部或外部命令,也不是可运行的程序 或批处理文件 问题

    window下安装cross-env解决NODE_ENV ts-node 不是内部或外部命令,也不是可运行的程序 或批处理文件 问题 在git bash上启动无法进行调试,采用cross-env后可以 ...

  5. Window 下安装

    Window 下安装 下载地址:https://github.com/MSOpenTech/redis/releases Redis 支持 32 位和 64 位.这个需要根据你系统平台的实际情况选择, ...

  6. Window 下安装 Redis

    Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. 一.Window 下安装 redis https://github.com/MicrosoftArchive/r ...

  7. window下安装redis报错: creating server tcp listening socket 127.0.0.1:6379: bind No error

    window下安装redis报错: creating server tcp listening socket 127.0.0.1:6379: bind No error 解决: 如果没有配置环境,在安 ...

  8. window下安装rsyncServer

    window下安装rsyncServer---------------------------------1. 解压cwRsyncServer_4.0.5_Installer.zip,安装. 2. 复 ...

  9. nginx(Window下安装 & 配置文件参数说明 & 实例)

    一.为什么需要对Tomcat服务器做负载均衡:  Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果有超过500的并发数便会出现Tomcat不能响应新的请求的情况,严重影响网站 ...

随机推荐

  1. springboot + mybatis +druid

    Druid Spring Boot Starter mybatis-spring-boot-autoconfigure mybatis-spring-boot-samples 新建spring boo ...

  2. IdentityServer-Setup and Overview

    设置和概述 有两种方式创建一个IdentityServer 项目: 从零开始 使用Visual Studio的ASP.NET Identity模板 如果是从零开始,我们提供一序列的帮助及内存存储,所以 ...

  3. linux下安装lnmp环境

    安装nginx   1 检查是否安装该程序: which nginx           #查看nginx是否存在 which php             #查看php是否存在 which mys ...

  4. JavaScript -- History

    -----042-History.html----- <!DOCTYPE html> <html> <head> <meta http-equiv=" ...

  5. Explain 执行计划 和 SQL优化

    Explain 介绍 在分析查询性能时,考虑EXPLAIN关键字同样很管用.EXPLAIN关键字一般放在SELECT查询语句的前面,用于描述MySQL如何执行查询操作.以及MySQL成功返回结果集需要 ...

  6. Supervisod的使用

    原文链接:http://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyth ...

  7. 进程间通信 IPC(Inter-Process Communication)

    目录 一.管道 二.FIFO 三.消息队列 四.信号量 五.共享存储 六.网络IPC:套接字   一.管道 管道是进程间通信中最古老的方式,所有UNIX都提供此种通信机制.管道有以下两种局限性: 历史 ...

  8. 【详解】ThreadPoolExecutor源码阅读(二)

    系列目录 [详解]ThreadPoolExecutor源码阅读(一) [详解]ThreadPoolExecutor源码阅读(二) [详解]ThreadPoolExecutor源码阅读(三) AQS在W ...

  9. Java NIO系列教程(十) Java NIO DatagramChannel

    Java NIO中的DatagramChannel是一个能收发UDP包的通道.因为UDP是无连接的网络协议,所以不能像其它通道那样读取和写入.它发送和接收的是数据包. 打开 DatagramChann ...

  10. Ansible工作流程详解

    1:Ansible的使用者 ------>Ansible的使用者来源于多种维度,(1):CMDB(Configuration Management Database,配置管理数据库),CMDB存 ...