U盘PE| w764位旗舰版下载 | U盘装win7系统 | U盘启动 |win7pe | win10下载 |加入收藏土豆PE官网U盘PE,U盘装win7系统,win7pe,U盘启动,U盘装系统,w764位旗舰版下载站!
当前位置:主页 > 帮助中心 > 帮助中心 >

最新阿里需求挑战-十分钟内连续登录5次失败,需要等待30分钟才能登录【附图

来源:http://www.tudoupe.com时间:2022-03-05

前言

今天看到一个文章,‘阿里面试官问我:十分钟内连续登录5次失败,需要等待30分钟才能登录’,觉得很有意思,虽然是一个普遍需求,但是解决方案非常多,于是自己半个小时画了个图,写了几行伪代码,来解一下这个需求,毕竟天天CRUD也挺无聊的,非最佳解决方案,仅供互相讨论学习,希望各位轻喷。

直接上图

图解

  • 登录请求
  • 验证锁定缓存,锁定直接返回登录次数过多已锁定
  • 未锁定 验证账号密码
  • 验证失败 最近10分钟失败次数计数 次数>=5,设置锁定缓存,返回失败
  • 验证成功 删除计数缓存,返回成功

代码实现

失败计数器(更新setCheckFailCounter方法)

第一版本代码

第一版本计数器的问题

时间滑动性的问题,比如10分钟内只失败了4次 然后又可以进行请求了,又来了一次验证失败的请求,这个请求与前面的后三次失败也在10分钟内,但是这时候失败总次数只是1,其实相对于最新的一次登录失败,十分钟内的失败次数也是4

新版本的解决思路

每分钟的操作失败进行单独的统计,每次用系统时间向前检查10分钟总共失败次数,大于5就进行锁定,做到了,解决了第一版本的问题,新版本的代码已经在上面更新了

总结

核心点在于每次都是最近10分钟的总失败次数,而不是失败了一次开始10分钟过期做自增,这也是自己再初版代码出现的问题,已经解决了

Copyright © 2012-2014 Www.tudoupe.Com. 土豆启动 版权所有 意见建议:tdsky@tudoupe.com

土豆系统,土豆PE,win7系统下载,win7 64位旗舰版下载,u盘启动,u盘装系统,win10下载,win10正式版下载,win10 RTM正式版下载,win8下载,电脑蓝屏,IE11修复,网络受限,4K对齐,双系统,隐藏分区,系统安装不了,U盘装系统,笔记本装系统,台式机装系统,diskgenius运用,GHSOT装系统,U盘修复,U盘技巧,U盘速度,U盘不能格式化,U盘复制发生错误,U盘加密,U盘选购,开机黑屏,蓝屏,进不了系统,上不了网,打不开程序,点击无反应,系统设置,PE个性化,PE添加网络,PE维护系统

点击这里给我发消息