
秒杀问题:
1. 前端:
- 突然增加网络访问带宽
- 用户可能存在重复提交
2. 后端:
商品超卖: 数据库乐观锁(CAS无锁)、 Redis分布式锁、MQ异步形式修改库存(用户需要等待)
单机压力大:单独一服务形式部署+docker。可以实现快速扩容
用户操作频率块:网关限流
用户作弊:
数据库访问压力大: 分表分库、使用MQ异步实现修改库存。类似:抢票等待30s才知道抢票结果。
前端优化方案:
举个例子:如果1m带宽等于128kb/s加载一个网页640kb。需要 640kb/128kb=5s. 如果秒杀时候网页加载不出来就完蛋了。
这个就牵涉到一个带宽入口问题,服务器生产环境买的带宽。
优化方案: 动静分离

本文探讨秒杀场景下,从前端到后端的系统优化方案。包括解决前端带宽瓶颈、防止重复提交,以及后端的商品超卖、单机压力、用户操作频率等问题。提出使用数据库乐观锁、Redis分布式锁、MQ异步库存更新、服务部署优化、网关限流等策略。
3331

被折叠的 条评论
为什么被折叠?



