慕课网秒杀高并发前三个课程总结

花了三天,终于把慕课网上的前三个课程学完了,想在这里做一个小结。主要针对于接口的设计。
先介绍一下这个项目,这是一个秒杀高并发的项目,用ssm框架写的,所以要先掌握Spring,SpringMVC,Mybatis的基本知识。
先说一下整体的开发,我们把整个项目开发分为三部分,Dao层(数据库操作层),Service层(业务逻辑层),Web层。

首先我们想想对于一个秒杀网站,用户需要一些什么操作,我们对应的需要提供一些什么功能:
对于我们的秒杀,用户首先需要查看所有的秒杀列表,如果对哪一个秒杀感兴趣,会点开链接,进入到当前秒杀的详情页,详情页会有当前商品的名称和秒杀状态(秒杀未开始,秒杀进行中,秒杀结束,若是秒杀进行中,则需要显示一个倒计时,提供用户还有多长时间进行秒杀)

针对用户的这种需求,我们需要在service层里面创建一个有关秒杀操作的接口SeckillService,会有以下几个方法:
1、查询所有的秒杀商品(做成秒杀清单,显示在list.jsp页面上),返回一个List集合。
2、根据id查询单个的秒杀商品–做成秒杀商品详情页,显示在detail.jsp页面上,返回一个Seckill对象。
3、秒杀开启时获取秒杀的加密地址,秒杀未开启时获取秒杀的开启时间和当前时间–在商品详情页上显示出来,给用户直观的显示。根据这个要求,我们需要创建一个实体类Exposer,放在dto包中,dto是数据传输层,关注web与service之间的数据传递。
4、执行秒杀操作,我们要成功秒杀一个商品,我们首先需要减库存,然后添加购买记录。如果秒杀成功,我们需要返回秒杀成功记录,如果失败,我们需要返回错误信息。因此,我们还需要一个实体类SeckillExcution,来保存返回的信息,实体类应有一个状态标识,和状态信息,来区分这两个成功或失败。另外,这两者要同时成功,或者同时失败,这就需要一个事务管理器来管理。

<
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值