【技术实现步骤摘要】
高并发业务场景处理方法、系统和存储介质
[0001]本申请涉及计算机
,尤其涉及一种高并发业务场景处理方法、系统和存储介质。
技术介绍
[0002]随着信息时代的迅速发展,拥有超大用户规模的应用和服务越来越多,作为现代电商的重要促销手段,对商品秒杀、抢红包的秒杀活动的需求越来越多。其中,秒杀活动具有瞬时高并发、库存有限不能超卖的特点。
[0003]秒杀系统处理的是大量用户瞬时对有限商品的激烈竞争,它的高并发点出在前端用户秒杀商品环节,其核心是高并发库存的高效处理。因此,在秒杀活动中,需要秒杀活动各环节之间配合,保障秒杀活动的高效进行。
[0004]而现有技术的秒杀系统,当大量用户在短时间内同时涌入对商品进行抢购时,由于秒杀系统在短时间内需要处理的任务较多,秒杀系统处理速度较慢,并且,容易出错,从而影响秒杀活动的顺利进行,降低用户体验。
技术实现思路
[0005]本申请提供一种高并发业务场景处理方法、系统和存储介质,用以支持瞬时高并发的秒杀场景,提高用户体验。
[0006]第一方面,本申请提供一种高并发业务场景处理方法,应用于高并发业务场景处理系统,所述高并发业务场景处理系统包括:
[0007]限流子系统、缓存库存查询子系统、真实库存查询子系统、订单子系统、支付子系统和真实库存量处理子系统;
[0008]所述方法包括:
[0009]所述限流子系统在接收到N个用户的下单请求时,利用nginx调用所述缓存库存查询子系统,查询redis中当前缓存的库存量, ...
【技术保护点】
【技术特征摘要】
1.一种高并发业务场景处理方法,其特征在于,应用于高并发业务场景处理系统,所述高并发业务场景处理系统包括:限流子系统、缓存库存查询子系统、真实库存查询子系统、订单子系统、支付子系统和真实库存量处理子系统;所述方法包括:所述限流子系统在接收到N个用户的下单请求时,利用nginx调用所述缓存库存查询子系统,查询redis中当前缓存的库存量,并根据当前缓存的库存量,接受M个用户的下单请求,其中,所述用户的下单请求包括用户的标识,M为小于或等于N的正整数,且N为大于或等于1的整数;所述缓存库存查询子系统在接收到用户下单请求时,查询redis中当前缓存的库存量,并向所述M个用户发送令牌,将所述令牌保存在所述redis中,使所述M个用户进入到消息队列中,其中,所述消息队列采用先进先出的规则;所述真实库存查询子系统根据所述消息队列中当前处于第一位的用户的下单请求,查询数据库中的真实库存量,在所述数据库中的库存量大于预设库存量时,调用所述订单子系统;所述订单子系统根据所述消息队列中当前处于第一位的用户的下单请求,允许所述用户下单,并获取到用户提交的订单请求,调用所述支付子系统;所述支付子系统获取所述消息队列中当前处于第一位的用户的令牌,确定在所述redis中存在所述消息队列中当前处于第一位的用户的令牌时,进入支付页面进行支付,并在所述用户支付成功后,删除所述redis中存在的所述消息队列中当前处于第一位的用户的令牌,调用所述真实库存量处理子系统;所述真实库存量处理子系统根据所述消息队列中当前处于第一位的用户的下单量,扣减所述数据库中的库存量。2.根据权利要求1所述的方法,其特征在于,所述限流子系统根据当前缓存的库存量,接受M个用户的下单请求之前,还包括:所述限流子系统根据所述下单请求对应的用户的标识判断黑名单中是否包括所述用户的标识;在所述黑名单中不包括所述用户的标识时,根据当前缓存的库存量,接受M个用户的下单请求。3.根据权利要求1所述的方法,其特征在于,所述限流子系统根据当前缓存的库存量,接受M个用户的下单请求之前,还包括:根据所述用户的标识,判断所述用户提交下单请求的频率是否小于或等于预设频次;在所述用户提交下单请求的频率小于或等于预设频次时,根据当前缓存的库存量,接受M个用户的下单请求。4.根据权利要求1
‑
3任一项所述的方法,其特征在于,所述支付子系统获取所述消息队列中当前处于第一位的用户的令牌,确定在所述redis中存在所述消息队列中当前处于第一位的用户的令牌时,根据支付逻辑进入支付页面进行支付,包括:根据所述用户的标识,判断所述用户是否为支付优先级高的用户;若所述用户为支付优先级高的用户,获取所述消息队列中当前处于第一位的用户的令牌,确定在所述redis中存在所述消息队列中当前处于第一位的用户的令牌时,直接进入所
述支付页面进行支付。5.根据权利要求1
‑
3任一项所述的方法,其特征在于,所述限流子系统根据当前缓存的库存量,接受M个用户的下单请求,包括:获取所述N个用户中的每...
【专利技术属性】
技术研发人员:傅鹏斌,梁训虎,宗超,刘琳,
申请(专利权)人:中通服科信信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。