防刷限流策略(redis实现)

(一)防刷策略

不能轻易的让机器刷我们的订单的接口

需要做一些人工的保障,限流防刷,
在这里插入图片描述

首先根据 /verifyCode路径请求,生成一个图片二维码(通过一个脚本的执行引擎)
Image.getResult() 得到答案,并存储到redis里。
然后在/token请求中,传入答案参数,进行校验,获得秒杀地址的令牌,注意,我们的秒杀地址是动态的

在这里插入图片描述注意路径,如果答案输入正确,那么就将token,传入到Url上(通过@pathvariable注解传入)。访问真正的秒杀地址。

(二) 限流策略

1s有10w个人去获取token,但是该接口只能抗1w的请求,因此就不应该把这10w的人全部放进来。

不用sentinal咋玩限流?
用redis咋玩?:获取token的路径,作为key,也就是getUrl作为key,并设置超时时间60s,
然后通过redis的incr 原子操作,累加。
超过10000,则return failed(访问超载)
也就是可以达到一个限流的效果(1分钟只允许10000次访问)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值