网站秒杀设计

1.秒杀系统独立部署

    避免拖垮整个网站独立部署,可以使用独立的域名,使其完全隔离

2.秒杀商品页面静态化

    重新设计秒杀商品页面,将商品描述、商品参数、成交记录和用户评价全部写入一个静态页面,秒杀商品服务不需要部署动态的Web服务器和数据库服务器。

3.租借秒杀活动网络带宽

    为了减轻网站服务器的压力,需要将秒杀商品页面缓存在CDN,同样需要和CDN服务商临时租借新增的出口宽带

4.动态生成随机下单页面URL

    避免用户直接访问下单页面URL,需要将URL动态化。办法是在下单页面URL加入由服务器端生成随机数作为参数,在秒杀开始的时候才能得到。

细节:

    秒杀活动未开始下单按钮一直都是灰色不可点击,只有活动开始的时候才点亮,下单页面也尽可能简单,购买数量只能是一个且不可用修改,送货地址和付款方式都是用户默认的,没有默认也可以不填,允许等订单提交后修改,只有第一个提交的订单发送给网站的订单子系统,其余提交订单后看到秒杀结束页面

一。架构图

                          

JavaScript脚本控制,在秒杀商品静态页面中加入一个JavaScript文件引用,改JavaScript文件中加入秒杀是否开始的标志和下单页面URL的随机数参数,当秒杀开始的时候生成一个新的JavaScript文件并被用户浏览器加载,控制秒杀商品的展示。这个JavaScript文件使用随机版本号,并且不被浏览器、CDN和反向代理服务器缓存。这个JavaScript文件非常小,不会对服务器集群和网络带宽造成太大压力。

二。下单流程

                          

由于最终能够成功秒杀到商品的用户只有一个,因此需要在用户提交订单时,检查是否已经有订单提交。事实上,由于最终能够成功提交订单的用户只有一个,为了减轻下单页面服务器的负载压力,可以控制进入下单页面的入口,只有少数用户能进入下单页面,使其用户访问直接进入结束页面。假设下单服务器集群有10台服务器,每台服务器只接受最多10个下单请求。也可以在页面添加随机数,随机进入下单页面,随机本事就是一种负载。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值