Java高并发秒杀API
- SpringMVC + Spring + MyBatis使用与整合
- 秒杀类系统需求理解和实现
- 常用技术解决高并发问题
秒杀
- 秒杀业务场景具有典型“事务”特性
- 秒杀/红包类需求越来越常见
- 面试常问问题
课程分为四门课程

技术分析

秒杀业务分析




实现秒杀系统的难点分析

解决之道: 【事务 + 行级锁】
start transaction
update 库存数量
insert 购买明细
commit

- 秒杀的难点: 如何高效的处理竞争?
秒杀系统功能分析

- 秒杀接口暴露
- 执行秒杀
- 相关查询
🍎 DAO层
代码开发阶段
- DAO设计编码
Mapper自动实现DAO接口
MyBatis整合Spring
1. 更少的编码
只写接口,不写实现
2. 更少的配置
<mapper resource=""/> ==> 自动扫描配置文件
<bean id="ClubDao" class="....ClubDao"/> ===》 自动实现DAO接口|自动注入Spring容器
3. 足够的灵活性
定制SQL + 自由传参 ===》 结果集自动赋值
DAO层开发的思考
DAO层工作演变为: 接口设计 + SQL编写 代码和SQL的分离,方便 Review DAO层的拼接等逻辑在Service层完成









Web层



什么是Restful
- 兴起于Rails
- 一种优雅的URL表述方式
- 资源的状态和状态转移
GET /seckill/list ✔
POST /seckill/execute/{seckillid} ❌











Web层技术回顾
-
前端交互设计过程

-
Restful接口设计

-
SpringMVC使用技巧


-
Bootstrap和JS使用

秒杀优化


为什么单独获取系统事件


















系统部署架构







学而不思则罔,思而不学则殆!

浙公网安备 33010602011771号