为什么我总是不能抢买到“秒杀商品”?

为什么我总是不能抢买到“秒杀商品”?

以下回答不特指任何一家电商,为什么要这么说呢?

因为我怕律师函。

先说结论,有可能你从一开始就注定抢不到,原因可能只是你的ID(可能是你的用户名,也可能是注册时系统内部给你分配的一个数字)

对任何一个做开发的人来说,以下内容都可以不看,老生长谈了。

我会用尽可能通俗的方法,给非技术人员解释其中的原理。

对电商来说,尤其是大型电商,每一次秒杀活动,都会有大量用户参与,一瞬间访问量会增大成百上千倍,后端服务器就算再扩容,也没办法轻松搞定。

于是,工程师们对秒杀这个业务做了分析。

首先,秒杀的商品,要么价格便宜,要么商品紧俏,因此,超售是绝对不可接受的。

你想想,你是商家,你在电商挂了个商品,开了个秒杀活动,备货100件。

然后电商平台给你卖出去了102件,你怎么办?

你不发货,人家投诉你,你很无辜。你发货,多出来的2件从哪儿来?

超售不行,但是少卖是可以的,100件商品,我只卖出去95件,多出来的5件我可以等这波秒杀流量过去,再慢慢卖嘛。

于是,工程师会在秒杀开始前,先让你预约,有5000人预约。

预约完成后,秒杀开始前,就会在缓存里给你们随机或者按规则打标签。

5000人中,去掉有可能是刷单的高风险用户,去掉已经参加过活动的,去掉各种其他被认为不合适的人,剩下的人随机选200人,凡是没被选中的,从这一刻就已经注定没希望了,无关你的手速。

秒杀开始时,只有选定的200人可以进入后面的逻辑,剩下的人,一开始就被缓存拦住了,前端页面直接返回没抢到,后台服务器压力大大减小。

你可能会问,怎么保证这200人都会来抢?其实没法保证。

但是,因为你都预约了,200个人里,总不会100个人都没有吧。

就算100人都没有,大不了出现有些商品没卖出去,等秒杀过后,流量没那么大了,我再放出来,给剩下的人捡漏呗。

几乎所有的电商都是这么做的,标准操作。

所以,知道了原理,我一般会这么做。

秒杀开始时,去试一下,大概率你抢不到。

我会等,等一会儿去捡那些没卖出去的漏,一般在秒杀结束后的半个小时左右。

如果前一个步骤有没卖出去的或者没付款的,后面可能就会放出来。

不过,随着电商平台越来越有钱,服务器资源也越来越多,第一轮选中的人也越来越多,这种漏就慢慢变少了。

之前,我甚至靠这个经验,在闲鱼上倒卖这些秒杀来的东西,一个月能入个几千块吧。