系统设计 - 亚马逊产品结帐流程

问题描述 投票:0回答:1

我正在设计一个系统,该系统具有与亚马逊产品结帐相同的逻辑。让我来参考亚马逊来解释这个问题。

一款新发布的产品,比如手机,在亚马逊的库存有限,比如1000个。它将于今天上午9点发布。现在,要在亚马逊购买任何产品,当您在产品页面中时,可以单击“立即购买”按钮。这将带您进入结帐页面(其中包含收据以及详细列出的送货地址和付款方式)。结帐页面具有“立即付款”按钮,点击该按钮将调用支付网关以开始支付过程。现在我只想要支付1000个单位而不是更多。这也应该记住,点击“立即购买”的前1000人不会最终付款,即使他们中的许多人开始付款流程,他们的付款可能会失败并且必须重新进行。如何设计这样的系统,以便在不保证库存可用性的情况下不启动付款。假设它是一个销售,并且在产品的第一分钟内有100X人正在访问该网站。 (X =可用单位数)

architecture
1个回答
0
投票
  1. 交易创建订单,一旦点击“立即购买”按钮,就会减少可用库存
  2. 有一个过程可以解决所有从未完成的过程。比如说,点击“立即购买”按钮五分钟后,将产品释放回池中,取消订单并增加可用库存。

这将导致潜在的销售损失。另一种方法是选择后续步骤来减少可用库存,减少销售损失,但更多可能无法完成订单的潜在愤怒客户。

© www.soinside.com 2019 - 2024. All rights reserved.