系统设计及解决方案

发送验证码

1:根据手机号从Redis中获取value(验证码_时间戳)

2:如果value不为空,并且时间戳与当前时间戳的间隔小于60秒,则返回一个错误信息

3:生成随机验证码

4:调用阿里云短信服务API给用户发送短信验证码

5:将生成的验证码保存到Redis中,key = login:code:手机号,value = 验证码_时间戳,过期时间 = 5分钟

验证码登录

1:根据手机号从Redis中获取value(验证码_时间戳)

2:value为空则返回一个错误信息

3:验证码对比(页面提交的验证码是否等于从Redis中获取的验证码)

4:登录成功后删除Redis中的验证码

相关推荐
Fency咖啡17 小时前
redis进阶 - 底层数据结构
数据结构·数据库·redis
知其然亦知其所以然17 小时前
面试官笑了:我用这套方案搞定了“2000w vs 20w”的Redis难题!
redis·后端·面试
The Sheep 202317 小时前
MicroService(Redis)
数据库·redis·c#
无心水19 小时前
【中间件:Redis】1、Redis面试核心:线程模型深度解析(6.0前后变化+工作流程)
数据库·redis·面试·redis面试·redis原理·redis线程模型·后端技术
像风一样自由202021 小时前
Redis与MinIO:两大存储利器的区别与联系
数据库·redis·缓存·minio
无心水21 小时前
【中间件:Redis】2、单线程Redis高并发原理:I/O多路复用+3大优化点(附多线程对比)
redis·中间件·php·后端面试·i/o多路复用·redis原理·redis高并发
无心水21 小时前
【中间件:Redis】4、Redis缓存实战:穿透/击穿/雪崩的5种解决方案(附代码实现)
redis·缓存·中间件·缓存穿透·缓存雪崩·分布式缓存·redis缓存问题
爱吃烤鸡翅的酸菜鱼1 天前
【Java】基于策略模式 + 工厂模式多设计模式下:重构租房系统核心之城市房源列表缓存与高性能筛选
java·redis·后端·缓存·设计模式·重构·策略模式
pipip.1 天前
Redis vs MongoDB:内存字典与文档库对决
数据库·redis·缓存