简介
介绍
RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应用非常广泛。RabbitMQ官方地址:http://www.rabbitmq.com
docker安装的优点
一般情况,需要先安装部署Erlang环境再安装RabbitMQ环境。不过docker中,Erlang环境已经被docker自动安装,我们只需要简单几步操作即可完成RabbitMQ环境地安装+Web页面管理。
端口介绍
如果在云服务上部署需在安全组开通一下端口:15672、5672、25672、61613、1883。
15672(UI页面通信口,浏览器界面)、5672(client端通信口,最常用到的)、25672(server间内部通信口)、61613(stomp 消息传输)、1883(MQTT消息队列遥测传输)。
部署
拉取镜像
docker pull rabbitmq
运行
本条命令包括安装Web页面管理的 rabbitmq:management组件,账号和密码都为 admin ;-p 后面参数表示公网IP地址的端口号对应容器内部的端口号。
docker run -d --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 rabbitmq
访问页面
浏览器访问ttp://IP地址:15672 即可完成访问,账号密码都为admin。
使用
新建用户
建议新增一个用户如user(自定义),后续用user来连接使用,不建议直接用admin
在Admin点击Add User,接下来需要设置该用户的虚拟机路径,点击用户名(正确设置后can access virtual hosts是/)
分别点击Set permission,Set topic permission按钮设置全选
至此,配置部分已经完成,以下内容可选择性阅读。
新建交换机和路由
使用时需要将交换机和路由绑定才能使用
1 新建交换机exchange_test
在Exchanges点击Add a new exchange,设置type=topic,name=exchange_test
2 新建队列queue_test
在Queues点击Add a new queue,设置type=classic,name=queue_test
3.1 队列绑定交换机
点击队列名,下方From Exchange=exchange_test,Routing key=queue_test,点击Bind
查看队列中的数据
如队列里有数据,则对应total就会有值,点击队列名,点击Get message可以查看队列数据