亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

ThinkPHP 事務鎖

ThinkPHP 事務鎖

PHP
慕無忌1623718 2019-03-06 11:19:11
ThinkPHP 的 事務鎖 該怎么樣使用在并發請求時,生成的訂單會超過庫存該怎怎么辦 function { ... // 查詢庫存 ... // 用戶積分是否足夠 ... // 生成訂單并扣除庫存 ... }
查看完整描述

3 回答

?
收到一只叮咚

TA貢獻1821條經驗 獲得超5個贊

扣除庫存 和 生成訂單 都放在事務操作里面

function {
            ...
            // 查詢庫存
            ...
            // 用戶積分是否足夠
            //開始事務
            ...
            // 生成訂單并
            
            //除庫存
             //提交事務,失敗則回滾
            ...
   }
查看完整回答
反對 回復 2019-03-18
?
慕雪6442864

TA貢獻1812條經驗 獲得超5個贊

function {
1.開啟事務

 // 查詢庫存(2.使用表鎖或者行鎖(防止高並發出現數據錯誤,但性能消耗會高,推薦行鎖) 假如你這裡考慮到性能問題,建議考慮使用nosql或者使用樂觀鎖。)
 // 用戶積分是否足夠(3.不夠就rollback)
 // 生成訂單并扣除庫存

4.提交事務
}

查看完整回答
反對 回復 2019-03-18
  • 3 回答
  • 0 關注
  • 956 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號