1、什么是消息队列
主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用。消息中间件最主要的作用是解耦,中间件最标准的用法是生产者生产消息传送到队列,消费者从队列中拿取消息并处理,生产者不用关心是谁来消费,消费者不用关心谁在生产消息,从而达到解耦的目的。主要有ActiveMQ,RabbitMQ,Kafka,RocketMQ。
2、应用场景
- 异步处理:用户注册,发送短信、邮件。
- 应用解耦:用户下单,减库存,让订单系统和库存系统实现解耦。
- 流量削锋:用户的请求,服务器接收后,首先写入消息队列。假如消息队列长度超过最大数量,则直接抛弃用户请求或跳转到错误页面。
- 延时队列:订单过期取消订单、支付通知等。
3、实战
RabbitMQ安装部署:https://www.jianshu.com/p/f33127534f7a
Spring Boot整合RabbitMQ:https://www.jianshu.com/p/3a3cc080c28c
网友评论