什么是消息队列
理解 MQ 的本质与核心作用
区分同步调用与异步调用的差异
掌握 MQ 四大核心应用场景
核心讲解
MQ(Message Queue 消息队列):是一款异步、解耦、削峰、限流、流量缓冲的中间件,用于服务之间的消息通信。
核心模型:生产者生产消息 → 队列存储 → 消费者消费消息
同步调用缺点(传统接口调用)
接口链式调用,耦合度极高
接口超时、阻塞,响应慢
突发流量瞬间打垮后端服务
主流程需要等待所有副流程执行完毕
MQ 四大核心价值(企业面试必考)
业务解耦
服务之间不再直接调用,通过 MQ 通信
新增业务无需改主代码,低耦合、易扩展
例:下单成功后:发短信、发邮件、积分、日志,全部异步解耦
异步提速
主流程无需等待耗时操作,直接返回结果
大幅提升接口吞吐量、响应速度
削峰填谷(流量缓冲)
秒杀、活动突发流量,全部压入 MQ 排队
消费者匀速消费,避免瞬间打垮数据库
流量削峰、任务积压、流量平滑
高峰期积压消息,低峰期慢慢消费
适用业务场景
秒杀、抢购、高并发活动
订单异步通知、物流、短信、消息推送
日志收集、大数据流式计算(Kafka)
分布式事务、最终一致性场景
定时任务、延迟任务
常见误区
MQ 不是越快越好,是为了稳定性和解耦
MQ 不适合强一致性、实时返回的业务
不要滥用 MQ,简单业务直接调用即可
课后作业
手写 MQ 四大作用,并举例业务场景
对比同步调用和异步 MQ 调用的优缺点
