简介:
RabbitMQ是由erlang语言开发的一个基于AMQP(Advanced Message Queuing Protocol)协议的企业级消息队列中间件。可实现队列,订阅/发布,路由,通配符等工作模式。
作用:
- 异步处理:比如发送邮件,发送短信等不需要等待处理结果的操作
- 应用解耦:比如下单成功后,通知仓库发货,不需要等待仓库回应,通过消息队列去通知仓库,降低应用间耦合程序,可并行开发两个功能模块
- 流量削锋:在抢购或者其他的活动页,服务处于爆发式请求状态,如果直连数据库,数据库容易被拖垮。抢购商品也容易出现库存超卖的情况。通过队列可有效解决该问题。
- 日志处理:在单机中,日志直接写入到文件目录中,但是在分布式应用中,日志需要有统一的处理机制,可通过消息队列统一由某个消费端做处理。
- 消息通信:如生产端和消费端可通过队列进行异步通信
环境搭建:
- window 环境
- 安装erlang语言运行环境。下载地址:https://erlang.org/download/otp_win64_23.2.exe
- 安装RabbitMQ。下载地址:https://www.rabbitmq.com/install-windows.html
- 安装RabbitMQ的Web管理平台,RabbitMQ的管理平台是通过插件的形式使用,需要手动启用管理平台
RabbitMQ默认被安装到C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.14 下
打开cmd执行
rabbitmq-plugins.bat enable rabbitmq_management
安装完成后,浏览器打开 http://localhost:15672/ 即可看到RabbitMQ的管理界面。输入默认账号密码 guest 成功登录。
- Linux环境
1.Ubuntu:https://www.rabbitmq.com/install-debian.html
2.Centos:https://www.rabbitmq.com/install-rpm.html