乐观锁、悲观锁简单分析,回忆旧(新)知识...
生活随笔
收集整理的這篇文章主要介紹了
乐观锁、悲观锁简单分析,回忆旧(新)知识...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
今天被人問了下樂觀鎖和悲觀鎖,突然在腦子里好模糊,但又感覺以前很熟悉的東西竟然忘得這么干凈。所以惡補加記錄一下。
樂觀鎖和悲觀鎖是對于數據庫并發情況下產生的兩個對立的概念,所以首先確認一點 并發!并發!才存在這兩個概念,他們是對并發數據庫操作不同的處理方式。
樂觀鎖:樂觀的認為不會發生并發沖突,依賴新增字段(version,你可以起一個其它的名字)來檢驗數據的合法,舉例:查詢數據 后,對version+1操作,然后修改記錄 where 條件 version(當前)小于傳遞回來的值才修改,否則放棄修改。
悲觀鎖:悲觀的認為所有的操作都會發生并發沖突,因此只能以阿里數據庫自身的鎖才能實現,對資源的強占有。舉例:在對任意記錄進行修改前,先嘗試為該記錄加上排他鎖(exclusive locking)。
從上述簡介:能看出,很明顯的區別,可以根據自己的頁面進行選擇,但還有一點必須明白,悲觀鎖會導致性能大幅度下降。
qq技術交流群:208779755
個人公眾號:海濤聊技術
轉載于:https://my.oschina.net/haitaohu/blog/1841120
總結
以上是生活随笔為你收集整理的乐观锁、悲观锁简单分析,回忆旧(新)知识...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 455. Assign Cookies
- 下一篇: python学习day-8 迭代器 生