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

為了賬號安全,請及時綁定郵箱和手機立即綁定

將insert購買明細放在update減庫存真之前的操作能優化嗎

insert購買明細不是會獲得購買明細表的意向排他鎖嗎,該意向排它鎖需要在commit之后才能釋放,所以insert購買明細放在update減庫存之前,真的能優化嗎?

正在回答

2 回答

是的,可以優化。這樣做的目的就是降低行級鎖持有的時間。

0 回復 有任何疑惑可以回復我~
#1

槽鹵 提問者

行級鎖我知道,我想問的是意向鎖,意向鎖的持有時間增加了,哪來的優化?
2016-09-08 回復 有任何疑惑可以回復我~
#2

槽鹵 提問者

非常感謝!
2016-12-28 回復 有任何疑惑可以回復我~

行級鎖我知道,我想問的是意向鎖,意向鎖的持有時間增加了,哪來的優化?

0 回復 有任何疑惑可以回復我~
#1

Peter_Matrix

意向鎖 ??? 準確的說 是在執行 insert 會加 排他鎖, 再加排他鎖之前會加意向排他鎖, 但這并不影響多個insert操作的并行, 也即是 不會出現串行化操作。
2016-09-23 回復 有任何疑惑可以回復我~
#2

likeflower950 回復 Peter_Matrix

insert 真的可以串行插入? A事務先執行,insert 語法執行之后,進入暫停狀態, B事務再執行,B事務執行完畢后commit,A事務才執行完畢然后commit,如果他們用的是自增主鍵的話,那么請問,A事務的主鍵在前面還是B事務的主鍵在前面?如果在B事務提交后,A事務失敗回滾了,那么B是不是自增主鍵就中間斷了一個數字?
2016-11-25 回復 有任何疑惑可以回復我~
#3

qq_幸??蚠0 回復 likeflower950

你是不是打錯了,應該是并行吧。據我所知,insert是需要表級鎖的,阻塞更嚴重。
2017-02-28 回復 有任何疑惑可以回復我~
#4

大長臉 回復 qq_幸??蚠0

insert的阻塞應該會比update更少一些,畢竟直接運行在MySQL服務端的語句,執行效率是很高的,之前老師也說過對一條數據,在服務端進行updata,那么每秒的QPS大概是4w左右,按照我的邏輯,insert的執行效率會更高,所以阻塞也應該會更少。
2017-05-24 回復 有任何疑惑可以回復我~
查看1條回復

舉報

0/150
提交
取消

將insert購買明細放在update減庫存真之前的操作能優化嗎

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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