RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。
AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。
官网下载安装地址:
rabbitmq - Repositories · packagecloudPackage repositories owned by rabbitmq.https://packagecloud.io/rabbitmq/
RabbitMQ是Erlang语言编写的,所以在安装RabbitMQ之前,需要先安装Erlang。但是在搭建RabbitMQ环境过程中,需要注意RabbitMQ 和 Erlang的版本对应,如果不一致会导致环境一直搭建不起来。
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
yum install -y erlang
检查Erlang是否安装成功
erl -v
如果想卸载Erlang
yum -y remove erlang-*
2、安装rabbitmq
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
yum install -y rabbitmq-server
获取配置文件
rabbitmq-server/rabbitmq.conf.example at master · rabbitmq/rabbitmq-server · GitHubOpen source RabbitMQ: core server and tier 1 (built-in) plugins - rabbitmq-server/rabbitmq.conf.example at master · rabbitmq/rabbitmq-serverhttps://github.com/rabbitmq/rabbitmq-server/blob/master/deps/rabbit/docs/rabbitmq.conf.example修改后放到 /etc/rabbitmq 目录下
/etc/rabbitmq/rabbitmq.conf
开启rabbitmq的可视化界面
rabbitmq-plugins enable rabbitmq_management
rabbitmq命令:
systemctl start rabbitmq-server
systemctl stop rabbitmq-server
systemctl status rabbitmq-server
开启远程登录
vi /etc/rabbitmq/rabbitmq.conf
添加配置
loopback_users.guest = false
在浏览器中输入 http://IP:15672/,如果正常打开,说明安装成功
使用guest账号登录,添加管理员账号
创建完成后可以发现,新建的用户的权限是No access ,. 我们可以点击admin,然后点击Set permission
安装rabbitMQ镜像
docker pull rabbitmq
运行rabbitMQ
docker run -d --hostname my-rabbit --name rabbit -p 15672:15672 -p 5673:5672 rabbitmq
查看部署的rabbitMQ容器id
docker ps
进入容器
docker exec -it 容器id /bin/bash
开启rabbitmq的可视化界面
rabbitmq-plugins enable rabbitmq_management