本發(fā)明屬于服務器虛擬化技術(shù)虛擬磁盤使用機制領域,具體涉及一種資源鎖的自動恢復系統(tǒng)及方法。
背景技術(shù):
隨著虛擬化技術(shù)的飛速發(fā)展,在生產(chǎn)環(huán)境中有更多的業(yè)務遷移到了虛擬化平臺中,能夠合理、高效、預見性地利用底層存儲資源意味著能以更少的成本創(chuàng)造出更大的價值。
以往,虛擬磁盤在被使用時會加一個資源鎖,從而拒絕其他對該資源的使用請求。傳統(tǒng)方案中沒有處理鎖異常丟失的情況,資源鎖一旦意外丟失,后續(xù)的請求就會被允許,造成同一個資源被多個用戶使用的情況,引發(fā)獨享資源的共享使用錯誤。此為現(xiàn)有技術(shù)的不足之處。
因此,針對現(xiàn)有技術(shù)中的上述缺陷,提供設計一種資源鎖的自動恢復系統(tǒng)及方法;以解決上述技術(shù)問題。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于,針對上述現(xiàn)有技術(shù)存在的缺陷,提供設計一種資源鎖的自動恢復系統(tǒng)及方法,以解決上述技術(shù)問題。
為實現(xiàn)上述目的,本發(fā)明給出以下技術(shù)方案:
一種資源鎖的自動恢復系統(tǒng),它包括加鎖資源模塊,其特征在于:所述加鎖資源模塊連接有資源鎖狀態(tài)監(jiān)控模塊和資源鎖恢復模塊,所述的資源鎖狀態(tài)監(jiān)控模塊和資源鎖恢復模塊均連接到數(shù)據(jù)庫。
優(yōu)選地,所述的加鎖資源模塊提供監(jiān)控和恢復鎖的對象。
優(yōu)選地,所述的資源鎖狀態(tài)監(jiān)控模塊用以監(jiān)控資源鎖的狀態(tài),通過對應資源的數(shù)據(jù)庫中的日志和當前資源鎖的狀態(tài)進行實時的比對,當發(fā)現(xiàn)資源狀態(tài)與記錄的最新狀態(tài)不一致時,通知資源鎖恢復模塊對資源進行恢復鎖的操作。
優(yōu)選地,所述的資源鎖恢復模塊用以接收資源鎖狀態(tài)監(jiān)控模塊的恢復指令,并對目標資源執(zhí)行恢復鎖的操作。
優(yōu)選地,所述的數(shù)據(jù)庫用以記錄對應資源鎖的狀態(tài)。
一種資源鎖的自動恢復方法,包括以下步驟:
步驟1):加鎖資源模塊提供被管理資源對象;
步驟2):資源鎖狀態(tài)監(jiān)控模塊對加鎖資源模塊提供的被管理資源對象的資源鎖狀態(tài)進行實時監(jiān)控,通過對應資源的數(shù)據(jù)庫中的日志和當前資源鎖的狀態(tài)進行實時的比對,如果資源狀態(tài)與記錄的最新狀態(tài)不一致,則轉(zhuǎn)到步驟3),否則轉(zhuǎn)到步驟2);
步驟3):資源鎖狀態(tài)監(jiān)控模塊向源鎖恢復模塊發(fā)送指令,對目標資源執(zhí)行恢復鎖操作;
步驟4):數(shù)據(jù)庫記錄對應資源鎖的修改狀態(tài)。
本發(fā)明的有益效果在于,當資源的鎖狀態(tài)丟失的時候,能夠及時恢復,保證獨享資源不被多個用戶使用;達到保護數(shù)據(jù)不備復寫的目的。此外,本發(fā)明設計原理可靠,結(jié)構(gòu)簡單,具有非常廣泛的應用前景。
由此可見,本發(fā)明與現(xiàn)有技術(shù)相比,具有突出的實質(zhì)性特點和顯著地進步,其實施的有益效果也是顯而易見的。
附圖說明
圖1是本發(fā)明提供的一種資源鎖的自動恢復系統(tǒng)的原理框圖。
其中,1-加鎖資源模塊,2-資源鎖狀態(tài)監(jiān)控模塊,3-資源鎖恢復模塊,4-數(shù)據(jù)庫。
具體實施方式
下面結(jié)合附圖并通過具體實施例對本發(fā)明進行詳細闡述,以下實施例是對本發(fā)明的解釋,而本發(fā)明并不局限于以下實施方式。
如圖1所示,本發(fā)明提供的一種資源鎖的自動恢復系統(tǒng),它包括加鎖資源模塊1,所述加鎖資源模塊1連接有資源鎖狀態(tài)監(jiān)控模塊2和資源鎖恢復模塊3,所述的資源鎖狀態(tài)監(jiān)控模塊2和資源鎖恢復模塊3均連接到數(shù)據(jù)庫4。
本實施例中,所述的加鎖資源模塊1提供監(jiān)控和恢復鎖的對象。
所述的資源鎖狀態(tài)監(jiān)控模塊2用以監(jiān)控資源鎖的狀態(tài),通過對應資源的數(shù)據(jù)庫中的日志和當前資源鎖的狀態(tài)進行實時的比對,當發(fā)現(xiàn)資源狀態(tài)與記錄的最新狀態(tài)不一致時,通知資源鎖恢復模塊對資源進行恢復鎖的操作。
所述的資源鎖恢復模塊3用以接收資源鎖狀態(tài)監(jiān)控模塊的恢復指令,并對目標資源執(zhí)行恢復鎖的操作。
所述的數(shù)據(jù)庫4用以記錄對應資源鎖的狀態(tài)。
本發(fā)明還給出一種資源鎖的自動恢復方法,包括以下步驟:
步驟1):加鎖資源模塊提供被管理資源對象;
步驟2):資源鎖狀態(tài)監(jiān)控模塊對加鎖資源模塊提供的被管理資源對象的資源鎖狀態(tài)進行實時監(jiān)控,通過對應資源的數(shù)據(jù)庫中的日志和當前資源鎖的狀態(tài)進行實時的比對,如果資源狀態(tài)與記錄的最新狀態(tài)不一致,則轉(zhuǎn)到步驟3),否則轉(zhuǎn)到步驟2);
步驟3):資源鎖狀態(tài)監(jiān)控模塊向源鎖恢復模塊發(fā)送指令,對目標資源執(zhí)行恢復鎖操作;
步驟4):數(shù)據(jù)庫記錄對應資源鎖的修改狀態(tài)。
以上公開的僅為本發(fā)明的優(yōu)選實施方式,但本發(fā)明并非局限于此,任何本領域的技術(shù)人員能思之的沒有創(chuàng)造性的變化,以及在不脫離本發(fā)明原理前提下所作的若干改進和潤飾,都應落在本發(fā)明的保護范圍內(nèi)。