[發(fā)明專利]一種分布式鎖實(shí)現(xiàn)方法、設(shè)備及存儲(chǔ)裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201610792007.0 | 申請(qǐng)日: | 2016-08-31 |
| 公開(公告)號(hào): | CN107783842B | 公開(公告)日: | 2021-09-03 |
| 發(fā)明(設(shè)計(jì))人: | 朱云鋒;陳新進(jìn);楊世泉;盧毅軍;楊斌 | 申請(qǐng)(專利權(quán))人: | 阿里巴巴集團(tuán)控股有限公司 |
| 主分類號(hào): | G06F9/52 | 分類號(hào): | G06F9/52;H04L29/08 |
| 代理公司: | 上海百一領(lǐng)御專利代理事務(wù)所(普通合伙) 31243 | 代理人: | 陳貞健;周建華 |
| 地址: | 英屬開曼群島大開*** | 國(guó)省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 分布式 實(shí)現(xiàn) 方法 設(shè)備 存儲(chǔ) 裝置 | ||
本申請(qǐng)的目的是提供一種分布式鎖實(shí)現(xiàn)方法、設(shè)備及存儲(chǔ)裝置,通過把分布式鎖的實(shí)現(xiàn)分為主節(jié)點(diǎn)和工作節(jié)點(diǎn),主節(jié)點(diǎn)向工作節(jié)點(diǎn)發(fā)送分區(qū)的調(diào)度請(qǐng)求,工作節(jié)點(diǎn)基于所述分區(qū)的調(diào)度請(qǐng)求,在服務(wù)端搶占該分區(qū)的分布式鎖的所有權(quán);并在服務(wù)端創(chuàng)建該分布式鎖所有權(quán)的鎖占有者文件后,向服務(wù)端訂閱該鎖占有者文件的刪除通知,在基于所述刪除通知釋放所述分區(qū)對(duì)應(yīng)的分布式鎖的所有權(quán)之前,提供與所述分區(qū)的調(diào)度請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)訪問服務(wù),實(shí)現(xiàn)了加載該分區(qū)以提供相應(yīng)的業(yè)務(wù)訪問服務(wù),大大提升系統(tǒng)的可用性。
技術(shù)領(lǐng)域
本申請(qǐng)涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種分布式鎖實(shí)現(xiàn)方法、設(shè)備及存儲(chǔ)裝置。
背景技術(shù)
分布式鎖服務(wù)在大規(guī)模云計(jì)算場(chǎng)景中被廣泛使用,分布在不同計(jì)算節(jié)點(diǎn)上的客戶端進(jìn)程通常依賴分布式鎖來訪問共享資源,保證數(shù)據(jù)的分布式一致性。典型的分布式鎖服務(wù)是基于分布式一致性系統(tǒng)提供的一類臨時(shí)文件Ephemeral File(Ephemeral文件,即臨時(shí)文件)操作接口設(shè)計(jì)開發(fā)的;具體地,分布式鎖的搶鎖是基于創(chuàng)建Ephemeral文件操作接口實(shí)現(xiàn)的,而分布式鎖釋放鎖則是基于刪除Ephemeral文件操作接口實(shí)現(xiàn)的。
分布式一致性系統(tǒng)中的Ephemeral文件有Owner(歸屬者)概念,這確保了分布式鎖的互斥性。Quorum Server(即分布式一致性系統(tǒng)服務(wù),其中,Quorum為分布式一致性系統(tǒng)服務(wù)端的Servers集合)端會(huì)記錄創(chuàng)建Ephemeral文件的Client(客戶端)進(jìn)程對(duì)應(yīng)的Session(會(huì)話)信息,其它Client進(jìn)程嘗試創(chuàng)建已存在Ephemeral文件,Quorum Server通過檢查該Ephemeral文件歸屬的Session與嘗試創(chuàng)建的Client進(jìn)程的Session不匹配,則告知嘗試創(chuàng)建的Client的Ephemeral文件創(chuàng)建失敗,即搶鎖失敗。
分布式一致性系統(tǒng)中的Ephemeral文件還有生命期概念,這確保了分布式鎖的可用性。Ephemeral文件歸屬Session依賴Client進(jìn)程與Quorum Server端定期心跳來更新生命期,Client進(jìn)程在本端認(rèn)定Session超時(shí)時(shí)間內(nèi)沒有收到來自任何一個(gè)Quorum Server的心跳包回復(fù),則判定該Session超時(shí),確認(rèn)自己丟失該分布式鎖;任何一個(gè)Quorum Server在本端認(rèn)定的Session超時(shí)時(shí)間內(nèi)沒有接收到來自任何一個(gè)Client進(jìn)程的心跳包,則判定該Session超時(shí),主動(dòng)刪除鎖文件(即Ephemeral文件),釋放該分布式鎖的所有權(quán)。
在大規(guī)模云計(jì)算環(huán)境場(chǎng)景中,很多應(yīng)用服務(wù)均存在如下場(chǎng)景:一個(gè)Master(主節(jié)點(diǎn))調(diào)度多個(gè)Worker(工作節(jié)點(diǎn))來協(xié)同并發(fā)提供服務(wù),每個(gè)Worker爭(zhēng)搶分布式鎖,在獲取某個(gè)分布鎖的所有權(quán)之后負(fù)責(zé)提供對(duì)應(yīng)某塊Partition(分區(qū))具體的訪問服務(wù),并通過定期心跳向Master匯報(bào)服務(wù)狀態(tài)。例如,在很多類型存儲(chǔ)系統(tǒng)中,一個(gè)Master調(diào)度多個(gè)Worker來加載不同Partition并發(fā)提供存儲(chǔ)訪問服務(wù),Master接收到來云計(jì)算服務(wù)中的業(yè)務(wù)客戶端的業(yè)務(wù)訪問請(qǐng)求,根據(jù)目標(biāo)Partition被調(diào)度到的目標(biāo)Worker,回復(fù)該業(yè)務(wù)客戶端具體應(yīng)該訪問的目標(biāo)Worker,故而將業(yè)務(wù)訪問請(qǐng)求轉(zhuǎn)發(fā)至該目標(biāo)Worker進(jìn)行處理;同時(shí),處于正常服務(wù)狀態(tài)的該目標(biāo)Worker會(huì)通過定期心跳向Master匯報(bào)自身的狀態(tài)信息。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于阿里巴巴集團(tuán)控股有限公司,未經(jīng)阿里巴巴集團(tuán)控股有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610792007.0/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種真空泵
- 下一篇:一種Al基非晶合金及其制備方法
- 互動(dòng)業(yè)務(wù)終端、實(shí)現(xiàn)系統(tǒng)及實(shí)現(xiàn)方法
- 街景地圖的實(shí)現(xiàn)方法和實(shí)現(xiàn)系統(tǒng)
- 游戲?qū)崿F(xiàn)系統(tǒng)和游戲?qū)崿F(xiàn)方法
- 圖像實(shí)現(xiàn)裝置及其圖像實(shí)現(xiàn)方法
- 增強(qiáng)現(xiàn)實(shí)的實(shí)現(xiàn)方法以及實(shí)現(xiàn)裝置
- 軟件架構(gòu)的實(shí)現(xiàn)方法和實(shí)現(xiàn)平臺(tái)
- 數(shù)值預(yù)報(bào)的實(shí)現(xiàn)方法及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其冬眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其睡眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 輸入設(shè)備實(shí)現(xiàn)方法及其實(shí)現(xiàn)裝置
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 傳感設(shè)備、檢索設(shè)備和中繼設(shè)備
- 簽名設(shè)備、檢驗(yàn)設(shè)備、驗(yàn)證設(shè)備、加密設(shè)備及解密設(shè)備
- 色彩調(diào)整設(shè)備、顯示設(shè)備、打印設(shè)備、圖像處理設(shè)備
- 驅(qū)動(dòng)設(shè)備、定影設(shè)備和成像設(shè)備
- 發(fā)送設(shè)備、中繼設(shè)備和接收設(shè)備
- 定點(diǎn)設(shè)備、接口設(shè)備和顯示設(shè)備
- 傳輸設(shè)備、DP源設(shè)備、接收設(shè)備以及DP接受設(shè)備
- 設(shè)備綁定方法、設(shè)備、終端設(shè)備以及網(wǎng)絡(luò)側(cè)設(shè)備
- 設(shè)備、主設(shè)備及從設(shè)備
- 設(shè)備向設(shè)備轉(zhuǎn)發(fā)





