秒杀系统纲要

#1 秒杀背景

#2 秒杀业务概要 秒杀分为6步:
1.首页商品列表浏览->商品详情查看->抢购(抢到资格token)->下单->支付->消费、确认收货
2.还有取消订单,退款等操做nginx


#3 秒杀技术概要
1.关键字:限流、缓存、异步下单及订单队列、返库存、页面静态化
2.限流:机器级别(CPU)限流、应用级别限流(容器当前服务请求数)、IP攻击限流(相同IP参与秒杀次数)、H5本地缓存秒杀结果
3.缓存:使用redis做为缓存(参与秒杀商品库存缓存)、H5本地缓存(保存用户秒杀结果)
4.异步下单:用户下单请求进入队列,前台轮询下单结果(下单成功或失败)
5.订单队列:使用redis数据结构list做为队列(也可使用activemq,为了方便,使用redis的list做为队列)
6.返库存:本次秒杀抢购减缓存库存 和 采用下单减数据库库存、最后支付的方式,若是抢购后15分钟不下单,返缓存库存;若是下单后15分钟不支付,返缓存库存+数据库库存
7.页面静态化:商品列表页、详情页静态生成,放在nginx上redis


#4 秒杀上线数据库

上线后正常流程能通,可是出现了许多问题:
1.返库存问题 致使 缓存库存和数据库库存不一致
2.H5本地缓存使用不当问题 致使 抢购资格不正确缓存


#5 秒杀总结数据结构

相关文章
相关标签/搜索