接口不做频率限制,脚本一秒调200次,MySQL连接打满网站502,一分钟60次就稳
新手做接口,不做任何频率限制,写脚本一秒调你接口几百次,把数据库打满,网站直接打不开,其实接口加个简单的频率限制,就能挡住这种恶意调用。第一,同一个IP一分钟内最多调60次接口,超过的直接返回429错误,挡住脚本一秒调几百次的恶意请求;第二,登录用户按token限频,一个用户一分钟最多调100次,防止别人偷了用户token批量刷接口;第三,限频规则别写死在代码里,做成配置,后面觉得太严了改个数字就行,不用改代码;第四,被限制的IP别永久封,封10分钟就解封,防止正常用户点快了被误封。
我之前做查询接口,没做限频,被人写脚本一秒调200次,MySQL连接数打满,网站直接502,加了IP一分钟60次的限频,之后再也没出现过接口打满数据库的情况。很多新手觉得小接口没人会刷,黑产脚本24小时扫所有接口,你不做限频,人家把你接口当免费数据池,数据库被打满,正常用户也用不了。
本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。
0