什么是削峰限流
场景:
秒杀活动,一般会因为流量过大,导致应用挂掉,为了解决这个问题,一般在应用前端加入消息队列。
作用:
- 可以控制活动人数,超过此一定阀值的订单直接丢弃(我为什么秒杀一次都没有成功过呢)
- 可以缓解短时间的高流量压垮应用(应用程序按自己的最大处理能力获取订单)
什么是应用解耦
场景:
双11是购物狂节,用户下单后,订单系统需要通知库存系统,传统的做法就是订单系统调用库存系统的接口。
缺点:
当库存系统出现故障时,订单就会失败
案例分析
某购票网站:
2014年及以前由于某购票网站架构设计不好,经常出现网站并发访问量大时出现网站崩溃
小米官网抢购手机:
使用“消息队列中间件”设计,先抢先得,尽管