先过注册页
无论何种客户端注册,一定要先进入注册页,才能看到验证码按钮。
所以可以在页面打开时请求固定的前置接口,为这个设备开启允许发送验证码的窗口,之后的请求发送验证码才算合法请求。
这可以拦截绕过固定流程,直接通过接口调用验证码的请求。
控制同一手机号的发送次数、间隔
除非是没收到短信,否则用户不太会请求了验证码后不点击注册,还重新请求。
所以,可以限制同一手机号每天的最大请求次数。还要控制好发送的时间间隔,常见的至少间隔1min。
增加前置操作。
短信轰炸平台会收集很多免费短信接口,而且一个接口它们也只会给一个用户发一次短信,不会触发上一条规则。
对于这种情况,可以将图形验证码作为前置条件。技术🐂🍺的还可使用滑块、验证码文字点击、人机检测。
限量
对优惠券这种虚拟资产,平台方必须确保其使用界限。
对于商家,可能只是收到一个用户支付的订单,并不知道用户使用了平台的优惠券。
大部分平台和商家都是事后对账结算,所以下单了就会马上安排发货,事后造成大量资金损失。大量跟风网络主播被薅羊毛的店铺就是这么没的。
优惠券应该需要提前申请:用于何种活动、谁申请的。
幂等
考虑如下:
- 幂等依据
每次交互生成的token、客户端的序列号、有意义的业务订单号等
- 根据幂等依据进行幂等处理:
-
限制:比如锁、状态机控制
-
去重
先有订单,再操作资金。任何资金操作都要在平台侧生成业务属性订单,可以是优惠券发放订单,可以是返现订单,也可以是借款订单。
订单的产生必须要有业务属性:
比如,返现发放订单必须关联到原先的商品订单、借款订单必须关联到那个借款合同。
幂等处理必须是全链路的,从开始到最后都贯穿使用相同业务订单号,才能实现最终的支付幂等。
支付操作一般是调用三方支付接口。这些接口都会有商户订单号,相同商户订单号不会重复处理,所以三方公司的接口可实现唯一订单号的幂等。
防刷、幂等其实都是事前手段,若系统正在被攻击或利用,如何发现问题呢?
监控是较好的手段,难点是报警阈值的设置,可以对比昨天同时,上周同时的量,发现差异达到百分比阈值就报警。此外,对于活动可以申请单独的活动监控标签,单独呈现曲线,做好量的预估,超量报警,有的时候大盘很大的话活动给整个大盘带来的变化不明显。
可通过监控实现类似熔断机制,比如数据监控某个功能在被刷,触发报警,同时熔断,暂时把该功能禁掉,减少损失。
任何第三方资源的使用一般都会定期对账,若对账发现:
我方系统记录的调用量 < 对方系统记录的使用量
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
总结
至此,文章终于到了尾声。总结一下,我们谈论了简历制作过程中需要注意的以下三个部分,并分别给出了一些建议:
- 技术能力:先写岗位所需能力,再写加分能力,不要写无关能力;
- 项目经历:只写明星项目,描述遵循 STAR 法则;
- 简历印象:简历遵循三大原则:清晰,简短,必要,要有的放矢,不要海投;
以及最后为大家准备的福利时间:简历模板+Java面试题+热门技术系列教程视频
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
图片转存中…(img-PgsY01im-1713682708833)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!