标签:bsp 封装 顺序串 资源 业务逻辑 发送 程序 重复 res
一、抢购业务分析
(1) 低廉的价格
(2) 大幅推广
(3) 瞬间售空
(4) 定时上架,定时结束
(5) 并发量高
(1) 对现有业务的冲击
(2) 高并发的环境下,数据库负担
(3) 高并发情况下网络的波动
(4) 前端对数据显示的处理
(5) 产品定时上架的处理
(6) 库存的“超卖”现象
(7) 秒杀器的应对
减轻后端数据层,数据读取的压力,防止服务器轻易挂掉
减少数据库的读取次数
采用前后端分离的模式,后端只提供数据的操作,不负责前端页面的处理。采用RESTful API为前端提供数据,或者修改数据。前端采用react技术开发SPA单页应用,分离前后端,解耦系统,提高系统的稳定性和健壮性。采用nginx作为前端也后端交接的中转站,实现代理和负载均衡,减轻后台的请求静态资源,提高系统整体的稳定性。
(1) 采用nginx和CDN做反向代理,快速响应来自于全国各地的请求,从而解决网络带宽的瓶颈。
(2) 倒计时的问题,由于客服端时间和服务器时间不一致,会导致抢购失败或者提前抢购。所以采用每隔一段时间,进行前后端时钟的同步。
(3) 当时间未到的时候,前端进行请求的拦截,采用节流的方式禁止前端在未开始时发送无效的请求。
(1) 在请购的API接口,实现一个抢购队列,放在“插队”行为。
(2) 采用mysql进行数据的存储,采用redis进行数据的缓存,在抢购开始的时,从mysql数据库中读取一次数据,把读取到的商品信息保存在redis缓存中,当每次执行抢购的时,从redis中读取商品信息,并修改相应库存,减轻mysql数据库的频繁读写。
(3) 在抢购成功过以后,如果用户在20分钟之内为付款则,商品重新进入抢购队列中进行抢购。
添加抢购商品流程:
前端抢购流程
后端处理数据流程
标签:bsp 封装 顺序串 资源 业务逻辑 发送 程序 重复 res
原文地址:https://www.cnblogs.com/ouuoliuxing/p/11033018.html