首先,秒杀的瓶颈在于db,db扛不住几万甚至几十万的并发的。
然后,秒杀开始的时候,如果有几十万的用户并发访问网站怎么办?如果这些请求直接透传到后面的db中,毫无疑问db就会宕机了。那么我们就要想办法,不让这么多的请求去访问db。在秒杀的场景里面,每一种商品的数量是有限的,比如是10个,也就是说,最多只有10个用户会秒杀成功,剩下的几十万的用户是肯定秒杀不到的,那么这几十万的用户实际上是不需要去访问db的。预减库存就是为了只让少部分用户的请求去访问db,大部分用户的请求直接失败就不用去访问db了。