內(nèi)容目錄:


工作中經(jīng)常會遇到爭搶共享資源的場景,比如用戶搶購秒殺商品,如果不對商品庫存進行保護,可能會造成超賣的情況。超賣現(xiàn)象在售賣火車票的場景下更加明顯,兩個人購買到同一天同一輛列車,相同座位的情況是不允許出現(xiàn)的。交易系統(tǒng)中的退款同樣如此,由于網(wǎng)絡(luò)延遲和重復(fù)提交極端時間差的情況下,可能會造成同一個用戶重復(fù)的退款請求。以上無論是超賣,還是重復(fù)退款,都是沒有對需要保護的資源或業(yè)務(wù)進行完善的保護而造成的,從設(shè)計方面一定要避免這種情況的發(fā)生。

本文以退款交易場景入手,引入分布式鎖,嘗試分析分布式鎖需要考慮關(guān)注點,包括以下內(nèi)容:

  • 鎖的引入和局限性

  • 分布式鎖的三要素

  • 分布式鎖進階

    • 獲取鎖操作的原子性

    • 鎖與保護共享資源的數(shù)據(jù)一致性

    • 分布式鎖的性能

    • 可重入

    • 公平鎖和非公平鎖

  • 分布式鎖的容錯,使用分布式鎖時注意考慮哪些問題

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運,軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式