MQ 中间件是什么
MQ 中间件 = Message Queue 消息队列 ,是一种异步通信、流量削峰、系统解耦的中间件,用来在不同服务 / 应用之间传递消息。
简单理解:就像一个快递中转站。A 系统把消息发过去就不用等,B 系统有空了自己去取,互不阻塞。
核心作用
-
系统解耦两个系统不直接调用,只通过消息通信,一方挂了不影响另一方。
-
异步处理不用同步等待结果,提高响应速度。例:下单成功后,发短信、发通知、更新积分都丢 MQ 慢慢处理。
-
流量削峰 / 限流高并发请求先堆在队列里,后端按自己能力慢慢消费,防止系统被冲垮。例:秒杀、双十一流量缓冲。
-
消息广播、最终一致性一条消息可以被多个系统消费,实现分布式事务 / 数据同步。
常见 MQ 产品
- RabbitMQ:轻量、易用、社区成熟
- RocketMQ:阿里开源,高吞吐、适合电商
- Kafka:超高吞吐量,适合日志、流处理
- ActiveMQ:老牌 Java 消息队列
简单工作流程
- 生产者(Producer)发消息到 MQ
- MQ 暂存消息
- 消费者(Consumer)从 MQ 拉取 / 接收消息并处理
整个过程异步、可靠、可缓冲。