本申請(qǐng)涉及操作請(qǐng)求恢復(fù),特別是涉及一種操作請(qǐng)求恢復(fù)方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)。
背景技術(shù):
1、在整個(gè)讀寫操作處理過(guò)程中,隨時(shí)都有可能出現(xiàn)節(jié)點(diǎn)故障、站點(diǎn)故障、鏈路故障等情況,導(dǎo)致讀寫操作無(wú)法正常處理完成,未處理完成的讀寫操作將會(huì)導(dǎo)致遠(yuǎn)程復(fù)制的本端和遠(yuǎn)端不同步,造成數(shù)據(jù)不一致問(wèn)題,嚴(yán)重的影響系統(tǒng)性能。
技術(shù)實(shí)現(xiàn)思路
1、基于此,有必要針對(duì)上述技術(shù)問(wèn)題,提供一種能夠提高系統(tǒng)性能的操作請(qǐng)求恢復(fù)方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)。
2、為了解決上述技術(shù)問(wèn)題,第一方面,提供操作請(qǐng)求恢復(fù)方法,方法包括:
3、響應(yīng)于主節(jié)點(diǎn)接收到讀寫操作請(qǐng)求,對(duì)主節(jié)點(diǎn)進(jìn)行加鎖;
4、對(duì)讀寫操做請(qǐng)求進(jìn)行解析,獲取讀寫操作請(qǐng)求的關(guān)鍵數(shù)據(jù),將關(guān)鍵數(shù)據(jù)存儲(chǔ)至主節(jié)點(diǎn)預(yù)設(shè)空間中,同時(shí)生成控制指令;
5、響應(yīng)于從節(jié)點(diǎn)接收到控制指令,對(duì)從節(jié)點(diǎn)進(jìn)行加鎖,獲取讀寫操作請(qǐng)求的關(guān)鍵數(shù)據(jù),將關(guān)鍵數(shù)據(jù)存儲(chǔ)至從節(jié)點(diǎn)預(yù)設(shè)空間中;
6、響應(yīng)于從節(jié)點(diǎn)進(jìn)行加鎖,主節(jié)點(diǎn)根據(jù)讀寫操作請(qǐng)求執(zhí)行讀寫操作任務(wù),并將讀寫操作任務(wù)發(fā)送至遠(yuǎn)端集群存儲(chǔ);
7、響應(yīng)于檢測(cè)到主節(jié)點(diǎn)執(zhí)行讀寫操作任務(wù)時(shí)發(fā)生故障,觸發(fā)故障通知,將故障通知發(fā)送至從節(jié)點(diǎn);
8、響應(yīng)于從節(jié)點(diǎn)接收到故障通知,從節(jié)點(diǎn)從從節(jié)點(diǎn)預(yù)設(shè)空間中獲取關(guān)鍵數(shù)據(jù),并根據(jù)關(guān)鍵數(shù)據(jù)恢復(fù)讀寫操作請(qǐng)求,將恢復(fù)的讀寫操作請(qǐng)求發(fā)送至遠(yuǎn)端集群執(zhí)行。
9、在其中一個(gè)實(shí)施例中,將恢復(fù)的讀寫操作請(qǐng)求發(fā)送至遠(yuǎn)端集群執(zhí)行之后包括:
10、響應(yīng)于遠(yuǎn)端集群接收到恢復(fù)的讀寫操作請(qǐng)求,遠(yuǎn)端集群根據(jù)恢復(fù)的讀寫操作請(qǐng)求執(zhí)行恢復(fù)的讀寫操作任務(wù);
11、響應(yīng)于恢復(fù)的讀寫操作任務(wù)完成,遠(yuǎn)端集群生成結(jié)束指令,并將結(jié)束指令發(fā)送至從節(jié)點(diǎn)。
12、在其中一個(gè)實(shí)施例中,將結(jié)束指令發(fā)送至從節(jié)點(diǎn)之后包括:
13、響應(yīng)于從節(jié)點(diǎn)接收到結(jié)束指令,對(duì)從節(jié)點(diǎn)釋放鎖,并刪除從節(jié)點(diǎn)預(yù)設(shè)空間中存儲(chǔ)的關(guān)鍵數(shù)據(jù);
14、響應(yīng)于從節(jié)點(diǎn)預(yù)設(shè)空間中存儲(chǔ)關(guān)鍵數(shù)據(jù)刪除,從節(jié)點(diǎn)生成刪除指令,并將刪除指令發(fā)送至主節(jié)點(diǎn);
15、響應(yīng)于主節(jié)點(diǎn)接收到刪除指令,對(duì)主節(jié)點(diǎn)釋放鎖,并刪除主節(jié)點(diǎn)預(yù)設(shè)空間中存儲(chǔ)的關(guān)鍵數(shù)據(jù)。
16、在其中一個(gè)實(shí)施例中,關(guān)鍵數(shù)據(jù)包括數(shù)據(jù)卷id、邏輯區(qū)塊地址位置信息、邏輯區(qū)塊地址長(zhǎng)度、讀寫操作請(qǐng)求序列號(hào),將關(guān)鍵數(shù)據(jù)存儲(chǔ)至主節(jié)點(diǎn)預(yù)設(shè)空間中包括:將關(guān)鍵數(shù)據(jù)存儲(chǔ)至非易失性內(nèi)存中。
17、在其中一個(gè)實(shí)施例中,主節(jié)點(diǎn)以及從節(jié)點(diǎn)設(shè)置在本地集群,方法還包括:
18、獲取本地集群中的數(shù)據(jù)卷,將本地集群中的數(shù)據(jù)卷作為主卷;
19、獲取遠(yuǎn)端集群中的數(shù)據(jù)卷,將遠(yuǎn)端集群中的數(shù)據(jù)卷作為輔卷;
20、主卷與輔卷的格式信息一致;
21、建立主卷與輔卷的遠(yuǎn)程復(fù)制關(guān)系。
22、在其中一個(gè)實(shí)施例中,方法還包括:
23、響應(yīng)于主節(jié)點(diǎn)故障恢復(fù),獲取主節(jié)點(diǎn)故障發(fā)生時(shí)至主節(jié)點(diǎn)故障恢復(fù)時(shí)的差異數(shù)據(jù);
24、根據(jù)差異數(shù)據(jù)建立變化數(shù)據(jù)位圖;
25、將變化數(shù)據(jù)位圖下刷至遠(yuǎn)端集群。
26、在其中一個(gè)實(shí)施例中,方法還包括:
27、獲取本地集群設(shè)備的端口以及遠(yuǎn)端集群設(shè)備的端口;
28、對(duì)每個(gè)本地集群設(shè)備的端口和每個(gè)遠(yuǎn)端集群設(shè)備的端口分別進(jìn)行虛擬ip配置;
29、獲取本地集群設(shè)備的端口的虛擬ip信息以及遠(yuǎn)端集群設(shè)備的端口的虛擬ip信息;
30、基于本地集群設(shè)備的端口的虛擬ip信息以及遠(yuǎn)端集群設(shè)備的端口的虛擬ip信息生成鏈路表;
31、響應(yīng)于接收到讀寫操作請(qǐng)求,從鏈路表中查找目標(biāo)鏈路;
32、基于目標(biāo)鏈路將本地集群設(shè)備以及遠(yuǎn)端集群設(shè)備建立遠(yuǎn)程復(fù)制關(guān)系;
33、其中,利用預(yù)設(shè)鑒權(quán)信息對(duì)鏈路表對(duì)進(jìn)行加密,生成鏈路表的映射加密信息;
34、根據(jù)預(yù)設(shè)鑒權(quán)信息、鏈路表、映射加密信息生成虛擬鏈路表信息并存儲(chǔ)在數(shù)據(jù)庫(kù)內(nèi)。
35、為了解決上述技術(shù)問(wèn)題,第二方面,提供了一種操作請(qǐng)求恢復(fù)裝置,裝置包括:
36、存儲(chǔ)模塊,用于響應(yīng)于主節(jié)點(diǎn)接收到讀寫操作請(qǐng)求,對(duì)主節(jié)點(diǎn)進(jìn)行加鎖;對(duì)讀寫操做請(qǐng)求進(jìn)行解析,獲取讀寫操作請(qǐng)求的關(guān)鍵數(shù)據(jù),將關(guān)鍵數(shù)據(jù)存儲(chǔ)至主節(jié)點(diǎn)預(yù)設(shè)空間中,同時(shí)生成控制指令;響應(yīng)于從節(jié)點(diǎn)接收到控制指令,對(duì)從節(jié)點(diǎn)進(jìn)行加鎖,獲取讀寫操作請(qǐng)求的關(guān)鍵數(shù)據(jù),將關(guān)鍵數(shù)據(jù)存儲(chǔ)至從節(jié)點(diǎn)預(yù)設(shè)空間中;
37、執(zhí)行模塊,用于響應(yīng)于從節(jié)點(diǎn)進(jìn)行加鎖,主節(jié)點(diǎn)根據(jù)讀寫操作請(qǐng)求執(zhí)行讀寫操作任務(wù),并將讀寫操作任務(wù)發(fā)送至遠(yuǎn)端集群存儲(chǔ);響應(yīng)于檢測(cè)到主節(jié)點(diǎn)執(zhí)行讀寫操作任務(wù)時(shí)發(fā)生故障,觸發(fā)故障通知,將故障通知發(fā)送至從節(jié)點(diǎn);
38、恢復(fù)模塊,用于響應(yīng)于從節(jié)點(diǎn)接收到故障通知,從節(jié)點(diǎn)從從節(jié)點(diǎn)預(yù)設(shè)空間中獲取關(guān)鍵數(shù)據(jù),并根據(jù)關(guān)鍵數(shù)據(jù)恢復(fù)讀寫操作請(qǐng)求,將恢復(fù)的讀寫操作請(qǐng)求發(fā)送至遠(yuǎn)端集群執(zhí)行。
39、為了解決上述技術(shù)問(wèn)題,第三方面,提供了一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,處理器執(zhí)行計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)以下步驟:所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)上述第一方面所述方法的步驟。
40、為了解決上述技術(shù)問(wèn)題,第四方面,本申請(qǐng)?zhí)峁┝艘环N計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述第一方面所述的方法的步驟。
41、區(qū)別于現(xiàn)有技術(shù),本申請(qǐng)中通過(guò)響應(yīng)于主節(jié)點(diǎn)接收到讀寫操作請(qǐng)求,對(duì)主節(jié)點(diǎn)進(jìn)行加鎖;對(duì)讀寫操做請(qǐng)求進(jìn)行解析,獲取讀寫操作請(qǐng)求的關(guān)鍵數(shù)據(jù),將關(guān)鍵數(shù)據(jù)存儲(chǔ)至主節(jié)點(diǎn)預(yù)設(shè)空間中,同時(shí)生成控制指令;響應(yīng)于從節(jié)點(diǎn)接收到控制指令,對(duì)從節(jié)點(diǎn)進(jìn)行加鎖,獲取讀寫操作請(qǐng)求的關(guān)鍵數(shù)據(jù),將關(guān)鍵數(shù)據(jù)存儲(chǔ)至從節(jié)點(diǎn)預(yù)設(shè)空間中;響應(yīng)于從節(jié)點(diǎn)進(jìn)行加鎖,主節(jié)點(diǎn)根據(jù)讀寫操作請(qǐng)求執(zhí)行讀寫操作任務(wù),并將讀寫操作任務(wù)發(fā)送至遠(yuǎn)端集群存儲(chǔ);響應(yīng)于檢測(cè)到主節(jié)點(diǎn)執(zhí)行讀寫操作任務(wù)時(shí)發(fā)生故障,觸發(fā)故障通知,將故障通知發(fā)送至從節(jié)點(diǎn);響應(yīng)于從節(jié)點(diǎn)接收到故障通知,從節(jié)點(diǎn)從從節(jié)點(diǎn)預(yù)設(shè)空間中獲取關(guān)鍵數(shù)據(jù),并根據(jù)關(guān)鍵數(shù)據(jù)恢復(fù)讀寫操作請(qǐng)求,將恢復(fù)的讀寫操作請(qǐng)求發(fā)送至遠(yuǎn)端集群執(zhí)行。如此,在處理讀寫操作時(shí),將讀寫操作的關(guān)鍵數(shù)據(jù)分別存儲(chǔ)在主節(jié)點(diǎn)預(yù)設(shè)空間中以及從節(jié)點(diǎn)預(yù)設(shè)空間中,如此,在讀寫操作處理過(guò)程中遇到故障時(shí),集群恢復(fù)業(yè)務(wù)處理能力后,在主節(jié)點(diǎn)以及從節(jié)點(diǎn)上均可以從主節(jié)點(diǎn)預(yù)設(shè)空間或者從節(jié)點(diǎn)預(yù)設(shè)空間中恢復(fù)出讀寫操作的關(guān)鍵數(shù)據(jù),繼續(xù)讀寫操作的處理,并且還將讀寫操作任務(wù)發(fā)送至遠(yuǎn)端集群存儲(chǔ),能夠提高系統(tǒng)可靠性。
1.一種操作請(qǐng)求恢復(fù)方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將所述恢復(fù)的讀寫操作請(qǐng)求發(fā)送至遠(yuǎn)端集群執(zhí)行之后包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將所述結(jié)束指令發(fā)送至從節(jié)點(diǎn)之后包括:
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述關(guān)鍵數(shù)據(jù)包括數(shù)據(jù)卷id、邏輯區(qū)塊地址位置信息、邏輯區(qū)塊地址長(zhǎng)度、讀寫操作請(qǐng)求序列號(hào),所述將所述關(guān)鍵數(shù)據(jù)存儲(chǔ)至主節(jié)點(diǎn)預(yù)設(shè)空間中包括:將所述關(guān)鍵數(shù)據(jù)存儲(chǔ)至非易失性內(nèi)存中。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,主節(jié)點(diǎn)以及從節(jié)點(diǎn)設(shè)置在本地集群,所述方法還包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
8.一種操作請(qǐng)求恢復(fù)裝置,其特征在于,所述裝置包括:
9.一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述方法的步驟。
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述的方法的步驟。