本次秒杀项目是根据慕课网的秒杀视频项目做的,算是学完SSM后的一个实战。
秒杀简介:
电商平台经常做一些低价促销活动,吸引了许多顾客进行抢购。在同一时间开放购买页面,大量用户同时点击购买商品。
秒杀业务特点:
1.同一时间网站的访问流量瞬间激增;
2.秒杀的商品库存一般远远低于访问购买的用户数量;
3.秒杀逻辑一般就是减库存下订单,这是一个原子操作。
秒杀系统设计思路:
1.数据库读写是秒杀业务最大的瓶颈,相当于磁盘I/O,速度相比内存访问慢。尽量将需要频繁访问的数据库中数据加载到内存中;
2.瞬间激增的流量访问会增大服务器的压力,而秒杀商品只有少部分人能够购买到。将未能购买到的用户流量直接拦截掉,不再进行秒杀业务逻辑的处理;
3.增加异步处理功能,将可购买用户的请求放入消息队列中,服务端根据自己的业务处理能力去处理消息队列中的用户请求。
项目相关的技术:
Bootstrap、JQuery、Spring、SpringMVC、Mybatis、Redis、Rabbitmq、Mysql
项目中的技术运用:
Bootstrap构建前端登录页面、秒杀商品展示页面、秒杀商品抢购页面、订单页面;
JQuery构建登录模块中的表单提交及提交及处理表单后服务端响应的内容(跳转商品列表页面)、构建秒杀抢购页面倒计时的业务逻辑及点击提交抢购按钮后服务端响应的内容(接收秒杀失败及服务端处理错误信息、跳转订单页面);