基于ZooKeeper的分布式鎖 

源碼分享:http://pan.baidu.com/s/1miQCDKk

ZooKeeper 里實現(xiàn)分布式鎖的基本邏輯:

   1.zookeeper中創(chuàng)建一個根節(jié)點(Locks),用于后續(xù)各個客戶端的鎖操作。

   2.想要獲取鎖的client都在Locks中創(chuàng)建一個自增序的子節(jié)點,每個client得到一個序號,如果自己的序號是最小的則獲得鎖。

   3.如果沒有得到鎖,就監(jiān)控排在自己前面的序號節(jié)點,并且設置默認時間,等待它的釋放。

   4.業(yè)務操作后釋放鎖,然后監(jiān)控自己的節(jié)點的client就被喚醒得到鎖。(例如client A需要釋放鎖,只需要把對應的節(jié)點1刪除掉,因為client B已經(jīng)關注了節(jié)點1,那么當節(jié)點1被刪除后,zookeeper就會通知client B:你是序號最小的了,可以獲取鎖了)

釋放鎖的過程相對比較簡單,就是刪除自己創(chuàng)建的那個子節(jié)點即可。

移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓

移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓

解決方案目錄:

      Demo1 Demo2為測試場景  

      ZooKeepr_Lock為鎖操作代碼

     移動開發(fā)培訓,Android培訓,安卓培訓,手機
        
        	<div   id=

延伸閱讀

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