database - 用于电子商务应用程序时如何保持 mongoDB 的一致性?
问题描述
我对 DBMS 相当陌生。我目前正在使用 MongoDB 来设计电子商务应用程序。所以我有 3 个集合,称为用户、库存和订单。当我试图从购物车中签出产品时,我被卡住了。这是我的逻辑
function checkout(cart) {
if(payment_is_successful) {
// remove item from inventory if inventory contain item of desired amount
// add items to orders collection
// empty the cart
}
else { // show error }
}
所以这个实现很糟糕,因为它不能确保一致性,即如果支付成功但库存没有足够的物品或无法将物品添加到订单集合中。那么问题的可能解决方案是什么?
解决方案
推荐阅读
- leaflet - 初始化后 GeoJSON 与 Maptiler 层不匹配
- reactjs - 从 Firebase 存储中检索图像(使用 React)
- r - 格式化数据框中的列,包括带有 DT 的小部件
- git - 从远程获取分支后,我无法在 Git 中签出分支
- r - 如何创建一个不接受输入的函数。例如掷一个公平的骰子 10 次并取和?
- c# - 任务合并结果并继续
- python - 从具有两对键和值的字典创建数据框
- c++ - 这个 BMI 计算器有什么问题?
- django - 在 Django 表单中将“allow_empy_files”放在哪里?
- java - LDAP:错误代码 49 - 80090308:LdapErr:DSID-0C090446,注释:AcceptSecurityContext 错误,数据 52e,v2580 - 使用 Spring 工具