- 秒杀按钮
验证码错峰,如何防止盗刷. 动态验证码
- 页面静态化(CDN+页面静态化)
- 秒杀前答题
- redis预扣库存
- 扣完后快速通知nginx层 秒杀已经结束
- 下单请求存入MQ进行削峰
- MQ通知下游服务
预扣减,如果没有库存可以提前结束
![](https://img.haomeiwen.com/i4464433/54bccd39c96dad8f.png)
- 思考:
秒杀的时候需要很多机器,但是很多时候是没有那么多的请求的,资源闲置的很厉害。 所以需要虚拟化+云计算 进行弹性伸缩。
这些中间件本身也是存在效率低下,容易挂的特点。 怎么样去解决.
限流,降级,拒绝服务.
- 限流:
容量达到瓶颈时,限制一部分流量来保护系统。
qps和线程维度都行.
nginx限流
limit_conn_zone limit_conn 针对的是服务器流量异常,大流量的恶意攻击。
可以进行并发数限制.
针对特定ip的请求速率限流.
Sentinel限流
nacos 推送.
![](https://img.haomeiwen.com/i4464433/4648bf99b0f1f36c.png)
热点参数限流
热点key发现技术
维护热点key列表
下游三个服务,其中给一个一直耗时久,触发降级服务.
-
sentinel一些专有名词解释
image.png
拒绝服务
![](https://img.haomeiwen.com/i4464433/a7e01a1753e4f91a.png)
降级策略 ,以后回过头来看
![](https://img.haomeiwen.com/i4464433/f4e150421a164c69.png)
网友评论