优秀的编程知识分享平台

网站首页 > 技术文章 正文

简单聊一下秒杀系统的理解和设计(秒杀系统流程)

nanyue 2024-07-30 03:25:11 技术文章 13 ℃

废话不多说了,直接上表和DAO层,service层的设计吧

一、定义两张表,一张是秒杀产品表:

秒杀产品表

一张秒杀信息表:用于存放秒杀成功后的信息

当然这里都是简化过后的,秒杀成功表只是记录了一下秒杀成功的产品id和用户的手机号,注意这里重点在于主键是一个联合主键,seckiilId和userPhone是联合主键,这样的好处是对于同一个产品同一个用户不会插入两条,防止并发导致的一个用户抢同一个产品多次。

二、接下来就是对数据库的操作

减库存

秒杀的时候,首先要在秒杀产品表中减去一条库存,针对相应的seckillId,然后在成功表里面插入一条成功的信息

向秒杀哦成功表插入数据

这里就是对数据的操作,当然service层的事务是非常重要的,service中方法如下

这样的话,除了controller没有写,主要思路基本上就完成了,大伙有什么觉得不好的地方,可以关注,进行讨论

最近发表
标签列表