百万级别秒杀逻辑思路

Posted yangxiaohui227

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百万级别秒杀逻辑思路相关的知识,希望对你有一定的参考价值。

秒杀逻辑:
1.前端调用秒杀下单接口,该接口将用户信息,秒杀商品信息,以及生产的秒杀Id,发送给Mq,然后立刻将秒杀Id返回给前端
2.前端拿到响应后,跳转到支付结果页,然后在该结果页查询(通过秒杀Id)查询用户秒杀结果,每隔几秒查询一次,查询不到结果就显示一个抢购正在排队中.............
3.秒杀Mq消费者接收到秒杀业务消息,使用分布式锁进行库存扣减,成功后,存到数据库,不成功也存一条秒杀结果到数据库,这样就可以前端查询结果就可以返回了
4.可以将秒杀结果存到redis,userId加一个是否成功的状态,这样用户查询结果,可以很快判断是否秒杀成功了,强购成功的用户也存redis,但没库存时,直接判断用户在不在redis中,不在立刻返回失败,这样用户不用等太久就知道结果了

 

 

在第一步时:可以先从redis中取出库存,没库存,立刻返回失败,有库存就转发到Mq,前端加个防重机制,用户点击后,就只能5秒后再点击

以上是关于百万级别秒杀逻辑思路的主要内容,如果未能解决你的问题,请参考以下文章

618 技术特辑几百万人同时下单的秒杀,为什么越来越容易抢到了?

618 技术特辑几百万人同时下单的秒杀,为什么越来越容易抢到了?

Java千万级别数据生成文件思路和优化

我要手把手教你搭建一套抗瞬时百万流量的秒杀系统

项目管理小结(如何做好一个百万级项目甚至千万级别的项目)

高并发场景下,百万级订单量系统的分库分表重构经历