一、Rabbitmq简介

        RabbitMQ(Rabbit Message Queue)的简写,但不能仅仅理解其为消息队列,消息代理更合适。RabbitMQ 是一个由 Erlang 语言开发的 AMQP(Advanced Message Queuing Protocol)(高级消息队列协议)的开源实现。

        支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX,最重要的是也支持 OC 和 swift。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不错。

        消息队列中间件是分布式系统中重要的组件,主要解决应用耦合异步消息流量削锋等问题。实现高性能高可用可伸缩最终一致性架构。是大型分布式系统不可缺少的中间件。

        RabbitMQ 提供了可靠的消息机制、跟踪机制和灵活的消息路由,支持消息集群和分布式部署。适用于排队算法、秒杀活动、消息分发、异步处理、数据同步、处理耗时任务、CQRS 等应用场景。

        消息系统允许软件应用相互连接和扩展.这些应用可以相互链接起来组成一个更大的应用,或者将用户设备和数据进行连接.消息系统通过将消息的发送和接收分离来实现应用程序的异步和解偶。

        RabbitMQ 是一个消息代理,一个消息系统的媒介。它可以为你的应用提供一个通用的消息发送和接收平台,并且保证消息再传输过程中的安全。

        RabbitMQ 是一个消息代理。它的核心原理非常简单:接收和发送消息。你可以把它想像成一个邮局:你把信件放入邮箱,邮递员就会把信件投递到你的收件人处。在这个比喻中,RabbitMQ 就扮演着邮箱、邮局以及邮递员的角色。

        RabbitMQ 和邮局的主要区别是,它不是用来处理纸张的,它是用来接收、存储和发送消息(message)这种二进制数据的。

二、安装前环境准备

1、第一步:下载并安装erlang

        原因:RabbitMQ服务端代码是使用并发式语言Erlang编写的,安装Rabbit MQ的前提是安装Erlang。

        下载地址:http://www.erlang.org/downloads

        下载完成后,直接双击.exe文件,然后下一步。

           

        选择安装路径,然后next、finish就可以。

           

        安装完事儿后要记得配置一下系统的环境变量。此电脑-->鼠标右键“属性”-->高级系统设置-->环境变量-->双击“系统环境变量”下的Path-->新建-->填上你的安装路径D:\erl-24.0\bin

        最后windows键+R键,输入cmd,再输入erl,看到版本号就说明erlang安装成功了。

 三、Rabbitmq下载安装

        1、下载rabbitmq(http://www.rabbitmq.com/download.html)

       2、安装rabbitmq

        (1)双击下载后的rabbitmq-server-3.9.1.exe文件,安装过程与erlang的安装过程相同。

直接点击next,选择安装路径,点击完成。

        (2)RabbitMQ安装好后接下来安装RabbitMQ-Plugins。打开命令行cd,输入RabbitMQ的sbin目录。我的目录是:D:\rabbitmq\rabbitmq_server-3.9.1\sbin

        (3)然后在后面输入rabbitmq-plugins enable rabbitmq_management命令进行安装

        (4)打开sbin目录,双击rabbitmq-server.bat

        (5)等几秒钟看到这个界面后,访问http://localhost:15672,默认用户名和密码都是guest登陆即可。

        3、修改增加删除用户

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

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

        (3)给用户配置角色:rabbitmq用户角色可分为五类:超级管理员, 监控者, 策略制定者, 普通管理者以及其他。

        超级管理员(administrator)

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

        监控者(monitoring)

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

         策略制定者(policymaker)

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

        普通管理者(management)

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

        其他的

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

        (4)给root 用户配置超级管理员角色

        rabbitmqctl.bat set_user_tags root administrator

        (5)现在总觉得guest 这个不安全(它的默认密码是guest,想更改密码,好办:        

                rabbitmqctl change_password guest newPassword

            (6) 删除用户

        rabbitmqctl.bat delete_user username

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐