950 - 消息队列深度解析:异步解耦的终极武器
煎饼摊出餐太慢,顾客排长队。解决方案:顾客点单后拿个号(消息),后厨按单做餐(消费),做好了叫号(回调)。中间的"号码系统"就是消息队列——解耦点餐和出餐,让两边各忙各的。
一、消息队列核心模型
1.1 点对点(Queue)
生产者 → [队列] → 消费者A (一条消息只被消费一次)1.2 发布订阅(Topic)
生产者 → [主题] → 消费者A(各自消费) → 消费者B → 消费者C二、三大MQ对比
| 维度 | RabbitMQ | Kafka | RocketMQ |
|---|---|---|---|
| 定位 | 消息代理 | 流处理平台 | 金融级消息 |
| 吞吐量 | 万级 | 百万级 | 十万级 |