系统设计及解决方案

发送验证码

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

相关推荐
晚染烟19 小时前
每日八股day17
redis
xqqxqxxq1 天前
Redis 五大常用数据类型 + 通用命令笔记
数据库·redis·笔记
LCG元1 天前
ESP32-IDF 远程固件升级实战:HTTPS OTA + 双分区切换 + 自动回滚
数据库·redis·https
万亿少女的梦1681 天前
基于Spring Boot、Java与MySQL的同城宠物服务系统设计与实现
java·spring boot·mysql·系统设计·协同过滤
MC皮蛋侠客1 天前
Redis 系列(十一):高可用(二)——Redis Cluster 集群
数据库·redis·bootstrap
祈禾2 天前
Redis三大缓存问题与分布式锁
运维·数据库·redis·笔记·分布式·缓存
福大大架构师每日一题2 天前
Redis 8.10.0 正式发布:紧凑哈希、批量导入、备份恢复、流与时序能力全面升级
数据库·redis·哈希算法
祈禾2 天前
Redis三大特殊数据类型
运维·服务器·数据库·redis·笔记·缓存
y = xⁿ2 天前
一文掌握Redis常见八股
数据库·redis·缓存
MC皮蛋侠客2 天前
Redis 系列(五):持久化——RDB、AOF 与混合持久化
数据库·redis·bootstrap