论双11天猫、淘宝网的超卖问题产生原因
作者:网络转载 发布时间:[ 2013/1/10 9:38:36 ] 推荐标签:
这会导致淘宝的双11活动卖出的金额191亿元很水啊
情况是这样的吗?而且大多发生在零点10分以内的?
当商家的存货趋近于0的时候,大量买家共同买入,当其中交易完成时,存货减1。如果这时存货数量到达0了,可还是有大量买家没有完成付款,从而生成超卖的订单了?
子柳,淘宝打杂的 码农
有一个CAP理论,扩展性、一致性、可用性和成本之间形成了相互制约的关系,可以理解成下图的三角形边长是收益、面积是成本,如果三个边都很长的话,成本是大的。
在双十一这种极端的场景下,要满足三个条件,成本更是高到无法承受。那我们缩小哪一条边长呢?可用性不能缺(不能宕机)、扩展性不能缺(要支持大规模的并发访问),只能牺牲一部分一致性了。这里采用异步通知、分布式事务等操作,来保证数据尽可能多的“终一致”,但不可避免的会产生少量数据的不一致,这是在计划中可以容忍的。
另外还有一个业务方面的逻辑问题,这可能比技术方面出现超卖的概率更加大一些。
需要解释一下交易减库存的两种方式:
一,拍下减库存
描述:下单之后,商品的库存减一,减库存失败 下单失败,然后再去付款
问题:恶拍,恶人会把卖家的商品都拍光,商品下架了,然后不付款
二,付款减库存
描述:下单之后不立即减库存,跳转到支付宝付款,淘宝接收到付款成功消息后,才去减商品库存
问题:超卖,热销商品尤其是商品,同时会有n多人同时付款成功,然后去减库存时,发现库存不够减了
后,也不排除个别卖家借这个机会来推卸责任的可能性。
岳天,互联网从业者,挨踢农民工,半码农
技术方面上面@子柳已经说的很明确了,超卖再交易量很大的情况下,出于对可用性和扩展性的需要,严格控制一致性成本无法满足,所以超卖还是有小部分。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11