一、RabbitMQ简介
消息中间件(message broker)最主要的作用是解耦,中间件最标准的用法是生产者生产消息传送到队列,消费者从队列中拿取消息并处理,生产者不用关心是谁来消费,消费者不用关心谁在生产消息,从而达到解耦的目的。在分布式的系统中,消息队列也会被用在很多其它的方面,比如:分布式事务的支持,RPC的调用等等。
RabbitMQ是使用最广泛、最流行的消息中间件、是实现AMQP(高级消息队列协议)的消息中间件的一种,它搭建简单、支持多种消息传输协议、且支持分布式集群,是现在许多企业的高并发解决方案之一,当然官方也提供了许多插件供我们使用,也支持多种编程语言。
官网:http://www.rabbitmq.com
RabbitMQ又称兔子消息队列,是最流行的消息中间件。 |
二、安装说明
- RabbitMQ是基于Erlang语言的中间件,所以要安装它必须要安装Erlang。
- 安装Erlang后再安装RabbitMQ服务器
- 二者都需要配置环境变量
Erlang又称OTP,是一种通用的面向并发的编程语言,目的是创造一种可以应对大规模并发活动的编程语言和运行环境,目前主要用来开发并发式应用。 |
三、安装步骤
1. 安装Erlang |
下载地址:http://www.erlang.org/downloads
如有浏览速度过慢,建议自行百度下载找资源就可以了。傻瓜式的安装,安装完之后需要立即配置环境变量,后面才可以安装RabbitMQ。
新建ERLANG_HOME变量,配置安装目录;
在已有的Path中添加:%ERLANG_HOME%\bin;安装好后,可以用cmd输入erl测试:
2. 安装RabbitMQ |
下载地址:http://www.rabbitmq.com/install-windows.html
二者任意一个,第一个速度可能会快一点,安装好够同样需要配置环境变量。
新建RABBITMQ_SERVER变量并配置安装目录(带版本号的目录,注意不要配错了)。
在已有的Path中添加:%RABBITMQ_SERVER%\sbin;
四、启动RabbitMQ
启动的方式有:以程序形式启动、以服务形式启动。另外,还可以启动一些插件。
建议以服务的形式启动!
1. 使用cmd,启动RabbitMQ服务:rabbitmq-service start |
若出现无法启动,尝试以管理员身份运行cmd
2. 启动RabbitMQ监控管理器插件:rabbitmq-plugins enable rabbitmq_management |
打开浏览器输入:http://localhost:15672
账号和密码均为:guest,可以进入监控管理器
五、参考命令
启动:
rabbitmq-service start
关闭:
rabbitmq-service stop
启动监控管理器:
rabbitmq-plugins enable rabbitmq_management
关闭监控管理器:
rabbitmq-plugins disable rabbitmq_management
启动应用:
rabbitmqctl start_app
关闭应用:
rabbitmqctl stop_app
查看所有队列:
rabbitmqctl list_queues
清除所有队列
rabbitmqctl reset
添加用户:
rabbitmqctl add_user username password
分配角色:
rabbitmqctl set_user_tags username administrator
新增虚拟主机:
rabbitmqctl add_vhost vhost_name
将新虚拟主机授权给新用户:
rabbitmqctl set_permissions -p vhost_name username '.*' '.*' '.*'
角色说明:
none 最小权限角色
management 管理员角色
policymaker 决策者
monitoring 监控
administrator 超级管理员
在后面的博客中,我们将一起探索Rabbit的使用方法。