Redis秒杀系统架构设计-微信抢红包
导读 前二天 我 写 了一篇, Redis高级项目实战 ( 点我直达 ), SpringBoot整合Redis附源码 ( 点我直达 ), 今天 我们来 做 一下 Redis秒杀 系统的设计。当然啦, Redis基础 知识 还不过关的 , 先去加强下自身内功 ,然后在回来看这篇, Redis基础知识 (点我直达 )。为啥写这个微信抢红包项目呢,公司0202年08月22日,公司周年庆,抢了100多红包🧧,O(∩_∩)O哈哈~ 微信抢红包 实现原理 业务流程分析 功能拆解 新建红包 在DB 、 Redis 分别 新增一条记录 抢红包( 并发 ) 请求Redis , 红包剩余个数 , 大于0 才可以 拆 , 等会0 时,提示用户, 红包已抢完 拆红包( 并发 ) 用到技术 Redis 中数据类型的 String特性 的 原子递减 ( DECR key ) 和 减少指定值 ( DECRBY key decrement ) 业务 请求Redis ,当 剩余红包个数大于0 , 红包个数 原子 递减 ,随机 获取红包 计算金额 ,当最后一个红包时,最后一个红包金额=总金额-总已抢红包金额 更新数据库 查看红包记录 查询DB 即可 数据库表设计 红包流水表 CREATE TABLE `red_packet_info` ( `id` int ( 11 ) NOT NULL