Con*_*ion 2 mysql database consistency race-condition e-commerce
我有一个Product数据库表,其中包含product_id、price和 等列inventory_count。
用户点击以特定价格购买特定产品。我的程序生成一个确认页面,列出产品和价格。一切正常,用户单击“确认”。我的程序更新inventory_count该产品的 ,并向用户的信用卡收取产品 中列出的金额price。
但在确认页面生成之后、用户点击“确认”之前的这段时间里,该产品的价格已经发生了变化。因此,用户可能在确认页面中看到价格为 10 美元,但在他单击“确认”后,price产品表中的价格已更改为 11 美元,这就是他将被收取的费用。
处理这种情况的最佳方法是什么?如果相关的话,我正在使用 MySQL 和 Python。
使用您打算实际收取的价格创建一个用于待处理购买的新表,并在生成确认页面时向其中添加项目。
当您将商品添加到表中时,从Product表中扣除,如果购买未成功,您可以重新增加。inventory_countPendinginventory_count
| 归档时间: |
|
| 查看次数: |
776 次 |
| 最近记录: |