1:抢购活动录入(包括:活动名称,活动描述,活动图片,活动开始时间,结束时间)。
2:抢购商品录入(包括:商品名,图片,描述,价格,库存数量(100))。
3:抢购服务架构:nignx(2台)--》4台tomcat--》2台redis和2台mysql
4:抢购前,把活动和商品数据加载到redis 里面。
5:抢购前,可以访问活动情况页面和接口,但购买接口会判断是否到抢购时间,如果没到则返回提取抢错误码。
6:活动开始后,把每个抢购都要验证身份,如果身份不合法直接拒掉。如果合法,则返回一个抢购验证码,要求客户填写验证码(图形验证码)。
7:把每个身份合法和验证码也合法的用户的抢购消息放到一个消息队列(redis 队列)中(并返回抢购中结果),最大500,如果队列超过500,后续用户直接拒掉。
8:后台活动处理进程(活动开始前就启动,只监控活动消息队列)处理消息,生成抢购订单,减库存,减到0为止,并生成抢购成功消息。如果库存为0,则后续生成抢购失败消息(消息队列)。
9:客户端如果收到请购中,则每2s 请求是否抢购成功,如果得到成功消息,则转成功页面,并显示订单。否则显示抢购失败。
验证码主要是防机器人
10:另外,还要按用户id 去重
抢购流程
最新推荐文章于 2024-06-06 20:07:24 发布