品优购项目记录:day19

2018年08月19日 12:00:36 GodBbb 阅读数:176更多
个人分类: 个人成长 实战项目 品优购
今日目标:

(1)理解秒杀实现思路

(2)实现秒杀频道首页功能

(3)实现秒杀商品详细页功能

(4)实现秒杀下单功能

(5)实现秒杀支付功能

目录

1、秒杀实现思路

1.1 需求分析

1.2 实现思路

1.3 准备工作

2、秒杀频道首页

2.1 需求分析

2.2 后端代码

2.3 前端代码

2.4 引入缓存

3、秒杀商品详细页

3.1 需求分析

3.2 显示商品详细页数据

3.3 秒杀倒计时,$interval服务

4、秒杀商品下单

4.1 需求分析

4.2 后端代码

4.3 前端代码

5、秒杀支付

5.1 需求分析

5.2 生成支付二维码

5.3 支付成功,保存订单

5.4 订单超时处理

1、秒杀实现思路

1.1 需求分析
所谓“秒杀”,就是网络卖家发布一些超低价格的商品,所有买家在同一时间网上抢购的一种销售方式。通俗一点讲就是网络商家为促销等目的组织的网上限时抢购活动。由于商品价格低廉,往往一上架就被抢购一空,有时只用一秒钟。

秒杀商品通常有两种限制:库存限制、时间限制。

详细:

商家提交秒杀商品申请,录入秒杀商品数据,主要包括:商品标题、原价、秒杀价、商品图片、介绍等信息
运营商审核秒杀申请
秒杀频道首页列出秒杀商品(进行中的)点击秒杀商品图片跳转到秒杀商品详细页。
商品详细页显示秒杀商品信息,点击立即抢购实现秒杀下单,下单时扣减库存。当库存为0或不在活动期范围内时无法秒杀。
秒杀下单成功,直接跳转到支付页面(微信扫码),支付成功,跳转到成功页,填写收货地址、电话、收件人等信息,完成订单。
当用户秒杀下单5分钟内未支付,取消预订单,调用微信支付的关闭订单接口,恢复库存。

1.2 实现思路
秒杀技术实现核心思想是运用缓存减少数据库瞬间的访问压力!读取商品详细信息时运用缓存,当用户点击抢购时减少缓存中的库存数量,当库存数为0时或活动期结束时,同步到数据库。 产生的秒杀预订单也不会立刻写到数据库中,而是先写到缓存,当用户付款成功后再写入数据库。

1.3 准备工作
(1)创建秒杀服务接口模块 pinyougou-seckill-interface ,依赖pinyougou-pojo

(2)创建秒杀服务模块pinyougou-seckill-service (war),pom.xml引入依赖参见其它服务工程,依赖 pinyougou-seckill-interface , Tomcat7插件运行端口为9009。添加web.xml、 spring 配置文件参见其它服务工程, dubbox的端口为20889。

(3)创建秒杀频道web模块 pinyougou-seckill-web(war) pom.xml引入依赖参见cart_web工程(需添加单点登录和权限控制),依赖 pinyougou-seckill-interface ,Tomcat7插件运行端口为9109 添加web.xml、 spring 配置文件参见cart_web工程。

将秒杀相关的页面及资源拷贝到此模块。添加angularJS.

2、秒杀频道首页

2.1 需求分析
秒杀频道首页,显示正在秒杀的商品(已经开始,未结束的商品)

猜你喜欢

转载自blog.csdn.net/qq_41904213/article/details/83153326
今日推荐