什么是秒杀
秒杀场景一般会在电商网站举行的一些活动,例如:对于一些特价商品,在约定时间对其限量销售,因为商品的特殊性,会吸引大量用户前来抢购。
秒杀的特点:
- 大量用户在同一时间同时进行抢购,网站瞬间访问流量激增。
- 秒杀一般是访问请求数量远远大于库存数量,只有少部分用户能够秒杀成功。
可能会出现的问题
数据库安全
最主要的是数据库问题,数据库不能承受一瞬间的访问
- 每秒几万的QPS直接打到数据库,基本上会把数据库打挂掉 ;
- 数据库挂了之后,秒杀服务还可能涉及其他的业务,导致别的服务一起挂。
数据安全
- 超卖现象:卖出的商品多余库存
被薅羊毛
- 链接暴露:在秒杀活动前暴露秒杀的链接,可能会开发或者其他专业人士,利用脚本进行请求。
- 恶意请求:被其他用户利用脚本模拟多个用户进行请求
解决办法
设计思路
- 将请求拦截在系统上游,降低下游压力: