系统设计及解决方案

发送验证码

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中的验证码

相关推荐
Jabes.yang44 分钟前
Java面试大作战:从缓存技术到音视频场景的探讨
java·spring boot·redis·缓存·kafka·spring security·oauth2
朝九晚五ฺ2 小时前
【Redis学习】持久化机制(RDB/AOF)
数据库·redis·学习
怪兽201411 小时前
什么是 Redis?
java·数据库·redis·缓存·面试
wangmengxxw11 小时前
Redis概述
数据库·redis·缓存
摇滚侠13 小时前
Spring Boot 3零基础教程,Spring Boot 日志的归档与切割,笔记22
spring boot·redis·笔记
爬山算法14 小时前
Redis(64)Redis的Lua脚本有哪些常见场景?
数据库·redis·lua
❀͜͡傀儡师15 小时前
OpenResty + Lua + Redis 鉴权案例,适用于 x86 和 ARM 架构的 Docker 环境。
redis·lua·openresty
Knight_AL16 小时前
Redis 限流解决方案:结合 Lua 脚本、AOP 和自定义注解的实现
redis·spring
Mr Aokey17 小时前
解决Redis数据丢失难题:深入理解RDB与AOF持久化机制
数据库·redis·缓存
柳贯一(逆流河版)18 小时前
Redis 分布式锁实战:解决马拉松报名并发冲突与 Lua 原子性优化
redis·分布式·lua