面试题:商品秒杀
特点:
- 秒杀业务,商品有限,流量在短时间内急剧升高,大部分用户陪跑
- 售卖价格相对便宜,有黑产获利情况,安全手段
方案:
- 前端缓存过滤流量:
- 商品活动页面,进行静态化,CDN前端缓存;
- 商品活动页面,秒杀开始时间到来前,前端页面置灰商品抢购按钮,不可提交
- 服务端过滤流量:
- 用户重复提交限制
- 用户来源IP频率限制
- 用户访问权限限制
- 按商品数量,取一定比例放进来,其余用户直接进中间页,“秒杀结束”
- 如何避免超卖?
- redis分布式缓存管理库存扣减,异步消息落地mysql,用于事后追溯和回滚
- 如何避免重复下单?
- redis分布式锁、mysql唯一索引
- 如何防止刷单?
- ip限流
- 用户验证码
- 用户限制、设备限流
整体方案(示意图)
浙公网安备 33010602011771号