[TOC] > [官网](https://www.rabbitmq.com/) ## 概述 详情跳转 [消息中间键 RabbitMQ](../%E4%B9%A6%E7%B1%8D/%E5%B0%8F%E5%9B%A2%E9%98%9F%E6%9E%84%E5%BB%BA%E5%A4%A7%E7%BD%91%E7%AB%99%E4%B8%AD%E5%B0%8F%E7%A0%94%E5%8F%91%E5%9B%A2%E9%98%9F%E6%9E%B6%E6%9E%84%E5%AE%9E%E8%B7%B5/%E6%B6%88%E6%81%AF%E4%B8%AD%E9%97%B4%E9%94%AERabbitMQ.md) rabbitMq 需要启动一个服务 ### 特点 * 高可靠 * * 提供做种特性,让你在可靠性和性能之间做出权衡,包括持久化、发送应答、发布确认及高可用性。 * 高可用队列 * * 支持跨机器集群,支持队列安全镜像备份,消息的生产者与消费者不论哪一方出现问题,均不会影响消息的正常发出与接收。 * 灵活的路由 * * 内建了几个常用的路由器,并且可以通过路由器的组合及自定义路由器插件来完成复杂的路由功能。 * 支持多客户端 * * 对主流开发语言(如Python、Ruby、C#、Java、C、PHP、ActionScript等)都有客户端实现。 * 集群 * * 本地网络内的多个Server可以聚合在一起,共同组成一个逻辑上的Broker。 * 扩展性 * * 支持负载均衡,动态增减服务器,简单方便。 * 权限管理 * * 灵活的用户角色权限管理,Virtual Host是权限控制的最小粒度。 * 插件系统 * * 支持各种丰富的插件扩展,也支持自定义插件,其中最常用的插件是Web管理工具RabbitMQ_Management,其WebUI访问地址为http://139.198.13.12:6233/,登录用户名为flight,密码为yyabc123。 ### 基本用法 有6种基本用法:单对单、单对多、发布订阅模式、按路由规则发送/接收、主题和RPC(即远程存储调用) ## 安装 ## docker 安装 `docker pull rabbitmq:3.7.7-management ` > “mangement”的版本(包含web管理页面) ### 启动 ``` docker run -d --name rabbitmq3.7.7 -p 5672:5672 -p 15672:15672 -v `pwd`/data:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin rabbitmq:3.7.7-management 说明: -d 后台运行容器 --name 指定容器名 -p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号) -v 映射目录或文件 --hostname 主机名(abbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名 -e 指定环境变量; RABBITMQ_DEFAULT_VHOST:默认虚拟机名; RABBITMQ_DEFAULT_USER:默认的用户名; RABBITMQ_DEFAULT_PASS:默认用户名的密码 ``` 通过 `http://you-host:15672` 查看管理后台