电商平台
文章平均质量分 89
电商平台
zhifeng687
这个作者很懒,什么都没留下…
展开
-
订单系统设计 —— 重复下单
一、重复原因 造成重复下单的原因有很多,比如用户重复提交、网络超时导致的重试(网关超时重试、RPC超时重试,以及前端超时重试等),下单请求的整个链路都可能造成重复,大致可以分成如下三类:用户重复提交;恶意刷单;网络原因导致的超时重试;二、产品方案 如何防止用户重复下单,并不只是技术的事情,因为技术并不一定能百分百的考虑到所有可能重复的场景,必须依靠产品+技术共同的努力,以及运营、客服等订单重复时的事后处理。用户点击”提交订单“按钮后,对按钮置灰,禁止再次提交;对于涉及金额比较大的订..转载 2016-05-10 00:15:38 · 26881 阅读 · 1 评论 -
某生鲜电商平台的库存扣减方案
目录一、 问题二、 下单的步骤三、 什么时候进行预占库存?四、 分析五、 重复下单问题六、 解决办法一、 问题一件商品只有100个库存,现在有1000或者更多的用户来购买,每个用户计划同时购买1个到几个不等商品。如何保证库存在高并发的场景下是安全的?(1)不多发(2)不少发二、 下单的步骤(1)下单(2)下单同时预占库存(3)支付(4)支付成功真正减扣库存(5)取消订单(6)回退预占库存三、 什么时候进行预占库存?(1)转载 2017-01-18 00:34:45 · 585 阅读 · 0 评论 -
秒杀业务中不超卖的实现方案汇总
数据库方案以下的方案重点在于防止超卖,库存信息不加载到缓存Redis,而是直接同DB交互,实际场景下通常不会如此,但是其中用到的细节还是值得学习的。FOR UPDATE该方案是在MySQL层面进行加锁,行锁Or表锁,要根据Where条件来判定。该方案通过事务+for update进行保证,伪代码如下所示:begin transcationalcount = SELECT number FROM seckill WHERE seckill_id=? FOR UPDATEif cou转载 2020-10-26 09:39:58 · 1199 阅读 · 0 评论