一、RabbitMQ 使用场景
RabbitMQ 是一个消息中间件,最主要的作用:信息的缓冲区,应用场景如下:
1、系统集成与分布式系统的设计
各种子系统通过消息来对接,这种解决方案也逐步发展成一种架构风格,即“通过消息传递的架构”。
例:现在医院有两个科“看病科”和“住院科”在之前他们之间是没有任何关系的,如果你在“看病课”看完病后注册的信息和资料,到住院科后还得重新注册一遍?那现在要改革,你看完病后可以直接去住院科那两个系统之间需要打通怎么办?这里就可以使用我们的消息中间件了。
2、异步任务处理结果回调的设计
例:记录日志,假如需要记录系统中所有的用户行为日志,如果通过同步的方式记录日志势必会影响系统的响应速度,当我们将日志消息发送到消息队列,记录日志的子系统就会通过异步的方式去消费日志消息。这样不需要同步的写入日志了。
3、并发请求的压力高可用性设计
例:比如电商的秒杀场景。当某一时刻应用服务器或数据库服务器收到大量请求,将会出现系统宕机。如果能够将请求转发到消息队列,再由服务器去消费这些消息将会使得请求变得平稳,提高系统的可用性。
参考:https://www.cnblogs.com/luotianshuai/p/7469365.html
二、RabbitMQ 安装
由于 RabbitMQ是建立在 Erlang OTP 平台上的,所以我们需要安装 Erlang 和 RabbitMQ。
2.1 安装 Erlang
1)下载 Erlang
64位:http://erlang.org/download/otp_win64_20.3.exe
32位:http://erlang.org/download/otp_win32_20.3.exe
2)安装,点击 exe 文件进行安装。
3)配置环境变量
添加完成后,将 %ERLANG_HOME%\bin 添加到 Path 中。
4)检查是否安装成功,打开 cmd,输入 erl,如下