亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

分布式鎖服務(wù)的方法和裝置的制造方法_2

文檔序號(hào):9865747閱讀:來源:國(guó)知局
的分布式鎖服務(wù)方法的示意性流程圖。
[0024]圖2是本發(fā)明實(shí)施例的分布式鎖服務(wù)方法的示意性流程圖
[0025]圖3是本發(fā)明實(shí)施例的應(yīng)用節(jié)點(diǎn)的示意性框圖。
[0026]圖4是本發(fā)明實(shí)施例的分布式鎖管理裝置的示意性框圖。
[0027]圖5是本發(fā)明實(shí)施例的應(yīng)用節(jié)點(diǎn)的示意性框圖。
[0028]圖6是本發(fā)明實(shí)施例的分布式鎖管理裝置的示意性框圖。
【具體實(shí)施方式】
[0029]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0030]圖1示出了本發(fā)明實(shí)施例的分布式鎖服務(wù)方法的示意性流程圖。應(yīng)理解,該方法應(yīng)用在分布式系統(tǒng)中,該方法可以由分布式系統(tǒng)中應(yīng)用節(jié)點(diǎn)或者設(shè)備等執(zhí)行。該方法包括:
[0031]110、接收數(shù)據(jù)操作請(qǐng)求。
[0032]上述數(shù)據(jù)操作可以是數(shù)據(jù)修改操作,如寫操作,刪除操作等。應(yīng)用或者設(shè)備接收到數(shù)據(jù)操作請(qǐng)求后,需要從系統(tǒng)的共享數(shù)據(jù)獲取數(shù)據(jù)后才能對(duì)數(shù)據(jù)進(jìn)行操作,在包含IP盤的分布式系統(tǒng)中,應(yīng)用或者設(shè)備可以從IP盤中獲取要操作的數(shù)據(jù),但是為了防止不同的應(yīng)用同時(shí)獲取數(shù)據(jù)或者對(duì)數(shù)據(jù)進(jìn)行操作,應(yīng)用需要先獲取與該數(shù)據(jù)操作請(qǐng)求對(duì)應(yīng)的分布式鎖。
[0033]120、確定與該數(shù)據(jù)操作請(qǐng)求對(duì)應(yīng)的目標(biāo)互聯(lián)網(wǎng)協(xié)議IP盤。
[0034]130、從該目標(biāo)IP盤中的鎖管理服務(wù)端DLMS獲取與該數(shù)據(jù)操作請(qǐng)求對(duì)應(yīng)的目標(biāo)分布式鎖。
[0035]應(yīng)理解,在含有IP盤的分布式系統(tǒng)中,IP盤既可以存儲(chǔ)數(shù)據(jù)又可以保存與存儲(chǔ)的數(shù)據(jù)對(duì)應(yīng)的分布式鎖。具體來說,IP盤中可以設(shè)置有DLMS,由DLMS來管理相應(yīng)的分布式鎖,應(yīng)理解,DLMS管理的分布式鎖與IP盤中存儲(chǔ)的數(shù)據(jù)可以是對(duì)應(yīng)的,也就是說對(duì)IP盤中的相應(yīng)數(shù)據(jù)進(jìn)行操作的相關(guān)分布式鎖就保存在該IP盤中的DLMS中,這樣,應(yīng)用就可以從IP盤中既能獲取分布式鎖又能獲取要處理的數(shù)據(jù)。具體而言,IP盤中存儲(chǔ)的數(shù)據(jù)與IP盤中DLMS中的分布式鎖是互相匹配的,例如,IP盤中存儲(chǔ)了 10個(gè)數(shù)據(jù),那么IP盤中的DLMS中就會(huì)保存獲取或者操作這10個(gè)數(shù)據(jù)的分布式鎖。這樣,在同一個(gè)IP盤里不僅可以找到目標(biāo)分布式鎖,也可以找到目標(biāo)數(shù)據(jù)。這樣就減少了數(shù)據(jù)流程
[0036]還應(yīng)理解,當(dāng)該分布式鎖服務(wù)的方法的執(zhí)行主體是應(yīng)用時(shí),應(yīng)用可以通過所在節(jié)點(diǎn)的分布式鎖管理客戶端DLMC向目標(biāo)IP盤中的DLMS申請(qǐng)目標(biāo)分布式鎖。
[0037]140、從該目標(biāo)IP盤中獲取目標(biāo)數(shù)據(jù),以便于在該目標(biāo)分布式鎖的租約期限內(nèi)對(duì)該目標(biāo)數(shù)據(jù)進(jìn)行處理。
[0038]本發(fā)明實(shí)施例中,通過將DLMS直接部署在IP盤中,而不用再設(shè)置單獨(dú)的分布式節(jié)點(diǎn)來部署DLMS,減少了物理部署,降低了系統(tǒng)的復(fù)雜度,使得應(yīng)用可以從IP盤中既能獲取分布式鎖又能獲取要處理的數(shù)據(jù),而不用像現(xiàn)有技術(shù)那樣要分別從不同的分布式節(jié)點(diǎn)獲取分布式鎖和數(shù)據(jù),簡(jiǎn)化了服務(wù)的流程。
[0039]可選地,作為一個(gè)實(shí)施例,當(dāng)該方法的執(zhí)行主體為應(yīng)用時(shí),該應(yīng)用可以保存有第一映射關(guān)系表,該第一映射關(guān)系表保存有鍵值與IP盤的映射關(guān)系,當(dāng)應(yīng)用從數(shù)據(jù)操作請(qǐng)求中獲取目標(biāo)鍵值后,就可以根據(jù)目標(biāo)鍵查詢第一映射關(guān)系表,從而確定與目標(biāo)鍵值對(duì)應(yīng)的目標(biāo)IP盤。在確定了目標(biāo)IP盤之后,就可以根據(jù)目標(biāo)鍵值查詢DLMS中的第二映射關(guān)系表,確定與所述目標(biāo)鍵值對(duì)應(yīng)的目標(biāo)分布式鎖,上述第二映射關(guān)系表保存了分布式鎖與鍵值的映射關(guān)系。
[0040]可選地,作為一個(gè)實(shí)施例,當(dāng)該分布式鎖服務(wù)的方法的執(zhí)行主體是應(yīng)用時(shí),應(yīng)用可以先向所在節(jié)點(diǎn)的DLMC申請(qǐng)目標(biāo)分布式鎖,如果DLMC中保存有目標(biāo)分布式鎖,那么應(yīng)用就可以直接從DLMC的本地緩存中獲取目標(biāo)分布式鎖。
[0041 ]可選地,作為一個(gè)實(shí)施例,如果應(yīng)用所在節(jié)點(diǎn)的DLMC中不存在上述目標(biāo)分布式鎖,那么應(yīng)用從DLMS獲取目標(biāo)分布式鎖之后,可以將該目標(biāo)分布式鎖保存在DLMC的本地緩存中,以便于應(yīng)用下次申請(qǐng)目標(biāo)分布式鎖時(shí)可以直接從DLMC的本地緩存中獲取。
[0042]上述IP盤可以利用鍵值(key-value)存儲(chǔ)技術(shù)來存儲(chǔ)數(shù)據(jù),也就是說IP盤中可以保存有鍵值與數(shù)據(jù)的第三映射關(guān)系表,根據(jù)數(shù)據(jù)操作請(qǐng)求攜帶的目標(biāo)鍵值并查詢?cè)摰谌成潢P(guān)系表就可以獲取要操作的目標(biāo)數(shù)據(jù)。
[0043]以上結(jié)合圖1從應(yīng)用或者設(shè)備的角度對(duì)本發(fā)明實(shí)施例的分布式鎖服務(wù)的方法進(jìn)行了詳細(xì)的描述,下面從DLMS的角度對(duì)本發(fā)明實(shí)施例的分布式鎖服務(wù)的方法進(jìn)行詳細(xì)的描述。
[0044]DLMS為應(yīng)用或者設(shè)備提供鎖服務(wù)的流程如下:鎖管理服務(wù)端DLMS接收應(yīng)用APP的鎖服務(wù)請(qǐng)求,該DLMS位于互聯(lián)網(wǎng)協(xié)議IP盤中;該DLMS確定與該鎖服務(wù)請(qǐng)求對(duì)應(yīng)的目標(biāo)分布式鎖;該DLMS將該目標(biāo)分布式鎖分配給該APP,以便于該APP從該目標(biāo)IP盤獲取目標(biāo)數(shù)據(jù)后對(duì)該目標(biāo)數(shù)據(jù)進(jìn)行處理。
[0045]本發(fā)明實(shí)施例中,通過將DLMS直接部署在IP盤中,而不用再設(shè)置單獨(dú)的分布式節(jié)點(diǎn)來部署DLMS,減少了物理部署,降低了系統(tǒng)的復(fù)雜度,使得應(yīng)用可以從IP盤中既能獲取分布式鎖又能獲取要處理的數(shù)據(jù),而不用像現(xiàn)有技術(shù)那樣要分別從不同的分布式節(jié)點(diǎn)獲取分布式鎖和數(shù)據(jù),簡(jiǎn)化了服務(wù)的流程。
[0046]下面結(jié)合圖2對(duì)本發(fā)明實(shí)施例的分布式鎖服務(wù)方法的整體過程進(jìn)行描述。
[0047]201、應(yīng)用接收數(shù)據(jù)操作請(qǐng)求,該數(shù)據(jù)操作請(qǐng)求中攜帶有要處理的目標(biāo)數(shù)據(jù)的目標(biāo)鍵值。
[0048]應(yīng)理解,應(yīng)用可以通過其數(shù)據(jù)分發(fā)層接收數(shù)據(jù)操作請(qǐng)求,數(shù)據(jù)分發(fā)層可以對(duì)數(shù)據(jù)操作請(qǐng)求進(jìn)行解析,獲得其中攜帶的目標(biāo)鍵值。
[0049]202、應(yīng)用向所在節(jié)點(diǎn)的DLMC申請(qǐng)分布式鎖,如果DLMC的本地緩存中保存有與目標(biāo)鍵值對(duì)應(yīng)的目標(biāo)分布式鎖,那么就可以直接從DLMC的本地緩存中獲取目標(biāo)分布式鎖,并且應(yīng)用在獲取目標(biāo)分布式鎖之后向相應(yīng)IP盤中的DLMS更新目標(biāo)分布式鎖的租約;
[0050]203、如果DLMC的本地緩存中不存在目標(biāo)分布式鎖,那么應(yīng)用就根據(jù)鍵值與IP盤的映射關(guān)系確定與目標(biāo)鍵值對(duì)應(yīng)的目標(biāo)IP盤;
[0051 ] 204、應(yīng)用向目標(biāo)IP盤中的DLMS發(fā)送鎖服務(wù)請(qǐng)求,以申請(qǐng)目標(biāo)分布式鎖;
[0052]205、DLMS在接收到鎖服務(wù)請(qǐng)求之后,根據(jù)其保存的鍵值與分布式鎖的映射關(guān)系,確定DLMS中是否存在目標(biāo)分布式鎖;
[0053]206、如果DLMC中存在目標(biāo)分布式鎖,那么DLMS就向應(yīng)用授予目標(biāo)分布式鎖以及該目標(biāo)分布式鎖的租約;
[0054]207、如果DLMC中不存在目標(biāo)分布式鎖,根據(jù)鍵值與分布式鎖的映射關(guān)系確定目標(biāo)分布式鎖是否被其它應(yīng)用節(jié)點(diǎn)申請(qǐng);
[0055]208、如果目標(biāo)分布式鎖被其它應(yīng)用節(jié)點(diǎn)申請(qǐng),且該目標(biāo)分布式鎖在應(yīng)用節(jié)點(diǎn)中處于鎖定狀態(tài),那么DLMS等待目標(biāo)分布式鎖的租約到期后召回該目標(biāo)分布式鎖;
[0056]209、如果目標(biāo)分布式鎖被其它應(yīng)用節(jié)點(diǎn)申請(qǐng),且該目標(biāo)分布式鎖在應(yīng)用節(jié)點(diǎn)中處于空閑狀態(tài),那么DLMS不用等待目標(biāo)分布式鎖的租約到期就召回該目標(biāo)分布式鎖;
[0057]210、DLMS召回目標(biāo)分布式鎖之后,向應(yīng)用授予目標(biāo)分布式鎖以及該目標(biāo)分布式鎖的租約;
[0058]211、應(yīng)用獲取到目標(biāo)分布式鎖以及目標(biāo)分布式鎖的租約后將其保存在所在節(jié)點(diǎn)的DLMC的本地緩存中。
[0059]應(yīng)理解,應(yīng)用在獲取分布式鎖和相應(yīng)的租約信息后,會(huì)將分布式鎖以及租約信息保存在所在節(jié)點(diǎn)的DLMC的本地緩存中,在租約期限內(nèi),該應(yīng)用可以從IP盤中獲取相應(yīng)的數(shù)據(jù)并對(duì)該數(shù)據(jù)進(jìn)行相應(yīng)的處理。如果對(duì)數(shù)據(jù)處理完之后,分布式鎖的租約還沒有到期,這時(shí)分布式鎖在應(yīng)用中處于空閑狀態(tài),這時(shí)可以根據(jù)DLMS的指令將DLMC中緩存的該分布式鎖的信息刪除,以便于DLMS提前召回該分布式鎖,分配給其它應(yīng)用節(jié)點(diǎn)使用。如果分布式鎖的租約期限已到,那么DLMS會(huì)主動(dòng)從應(yīng)用中召回該分布式鎖,同時(shí)DLMC也
當(dāng)前第2頁(yè)1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1