秒杀-设计流程
目录
秒杀 设计流程
秒杀是最考验程序员的一个功能,如果不能很好的做好秒杀。那个结果只能呵呵 了!
秒杀剖析:
技术角度:高可用、高并发
市场角度:用户体验、曝光度、促销
注意点:脱离原服务器进行部署
监控、监控 (监控软件)
关键点:高可用:双活
高并发:负载均衡、安全过滤
设计模型
解析:
模块1、秒杀前
使用cdn加速 不仅能够分流用户,还能减少地域造成的响应差异
以上图为例: cdn缓存秒杀未开始页面 (此时控制开秒的按钮js 名为js名+时间戳 为了cdn回源 *就是不让cdn缓存 )
定时任务器使用crontab 任务执行 远程copy 命令将 带有URL参数的路径js 覆盖到客户端(刷新秒杀页面点亮秒杀) 覆盖之前那个js 是空的为了防止有人篡改样式发起提交
模块 2、秒杀中
用户 点击秒杀 放入队列的两种方式:
1、将请求放在队列里
2、将要卖的商品放在队列里
模块3 、秒杀结束
检测商品的最大数量 – 提示活动已经结束
数据持久化
mysql 入库
每层之间要注意安全 过滤/反馈
秒杀结束