【发布时间】:2010-12-08 22:21:58
【问题描述】:
将实际库存数量与购物车中显示或出售的库存数量进行协调的最佳(或者可能是最常用的)方法是什么?
提前致谢, 马特
【问题讨论】:
-
这个问题有一个重复 - 不要回答另一个问题(无论如何它应该很快关闭)。
标签: e-commerce shopping-cart stock
将实际库存数量与购物车中显示或出售的库存数量进行协调的最佳(或者可能是最常用的)方法是什么?
提前致谢, 马特
【问题讨论】:
标签: e-commerce shopping-cart stock
嗯,你有几个问题。
在基本层面上,它“简单”。只需使用经典的事务处理技术来维护库存编号和针对库存的订单输入行。如果您有 10 个可用,并且有人订购了 1 个,则在增加库存项目的“已提交”数量的同时,提交数量为 1 的行项目。发货时,请从 In Stock 中删除一件,从 Committed 中删除一件。有货 - 已承诺 = 可用。
所以:
In Stock Committed Available
Before: 10 0 10
Ordered: 10 1 9
Shipped: 9 0 9
缺点是涉及到一堆锁定,这会影响并发性。根据您的流量,这可能是也可能不是问题。然后,您将根据库存对订购的物品进行即时计数,最终会遇到竞争条件。但这实际上只是商业生活中的一个事实。
但是,无论哪种方式,无论您如何将条目提交到数据库中,这并不意味着该项目将实际发货。
库存编号可能完全是错误的。可能是输入错误,库存可能损坏,“员工缩水”等等。各种各样的事情都可能出错。因此,您对客户做出的任何承诺,即您将实际运送您所承诺的东西,都必须在其旁边加上那个小 * 作为免责声明。
然后您将处理整个延期订购、取消和履行问题。
【讨论】: