一、RabbitMQ
RabbitMQ是基于AMQP协议的消息队列中间件。
AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP,支持ajax。用于分布式系统中存储转发消息,在易用性、扩展性、高可用性方面表现不俗。
二、安装RabbitMQ
RabbitMQ是由Erlang开发的,Erlang(['ə:læŋ])是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab 开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。
如果使用传统rpm安装,需要先安装erlang,过程繁琐,不推荐,直接使用yum安装RabbitMQ就行了。
yum install erlang
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm
yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm
启动、查看,关闭服务:
systemctl start/status/stop rabbitmq-server
开启web管理界面
rabbitmq-plugins enable rabbitmq_management
创建一个rabbitmq账户用于web控制台远程登录,(本机可直接使用guest/guest登录)
rabbitmqctl add_user rabbit rabbit
rabbitmqctl set_user_tags rabbit administrator
查看添加的user
rabbitmqctl list_users
在浏览器输入 serverip:15672 即可访问web版控制台。
三、RabbitMQ的作用