項目分布式部署那些事(3):一個簡單的分布式鎖


什么是鎖,它用來解決什么問題?

    分布式鎖是控制分布式系統之間同步訪問共享資源的一種方式。在分布式系統中,常常需要協調他們的動作。如果不同的系統或是同一個系統的不同主機之間共享了一個或一組資源,那么訪問這些資源的時候,往往需要互斥來防止彼此干擾來保證一致性,在這種情況下,便需要使用到分布式鎖。

    在分布式系統中,常常需要協調他們的動作。如果不同的系統或是同一個系統的不同主機之間共享了一個或一組資源,那么訪問這些資源的時候,往往需要互斥來防止彼此干擾來保證一致性,這個時候,便需要使用到分布式鎖。

    簡單的來說,在一個程序內部使用多線程時大家都離不開鎖,鎖的類型有很多,為的就是在操作一組資源時不被其它任務干擾而達到錯誤的結果。分布式鎖的意義是一樣的,只不過作用域提升到了不同程序、操作系統、服務器之上。

而今天我就分享一個基於Memcached(阿里雲OCS)的分布式鎖實現。

Demo

Code:

image

效果:

demo

使用方式

需要在appSettings中配置MemcachedServerAddress

image

如何得到它

在GitHub

分布式相關開源地址:https://github.com/RabbitTeam/Distributed

開源地址:https://github.com/RabbitTeam/Distributed/tree/master/Distributed/Distributed.Utility

在NuGet

地址:https://www.nuget.org/packages/Distributed.Utility/

安裝命令:Install-Package Distributed.Utility –Pre

寫在最后

QQ群:384413261(RabbitHub)

Email:majian159@live.com


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM