一種共享存儲的管理方法及系統與流程
2023-06-01 22:38:26
本發明涉及虛擬化存儲共享技術領域,特別涉及一種共享存儲的管理方法及系統。
背景技術:
隨著網際網路技術的進步和大數據的發展,人們在生活和辦公中接觸的數據呈指數型增長,用戶個人的存儲介質已經很難滿足人們的需要,例如,電影愛好者收藏了數以千計的藍光數字電影,很難存儲在一個或幾個硬碟中,同時,在分享的時候也相當不便,於是共享存儲成為了一種趨勢。
在共享存儲分享的過程中,數據安全是極其重要的一個方面。在實際操作中,共享存儲的掛載狀態與共享存儲的共享進程存在不對應的情況,例如掛載狀態顯示為掛載而共享進程在運行,此時共享存儲的數據則存在安全隱患。現有技術中,通過增加分布式鎖來應對這種安全隱患,例如通過分布式鎖來保證集群的領導節點的唯一性,在這種場景下,分布式鎖不會頻繁的獲取和釋放,一旦獲得了鎖,就會持有較長時間,但共享存儲的掛載狀態與分布式鎖的狀態是分開顯示的,存在因數據同步不一致等情況導致的共享存儲的掛在狀態與分布式鎖的狀態不一致的情況,共享存儲的安全性仍無法得到良好的保障。
綜上所述,如何提高共享存儲分享數據的安全性是本領域技術人員目前需要解決的技術問題。
技術實現要素:
有鑑於此,本發明的目的在於提供一種共享存儲的管理方法及系統,可以顯著提高共享存儲分享數據的安全性。其具體方案如下:
一種共享存儲的管理方法,包括:
獲取共享存儲相應的共享進程的運行狀態;
獲取所述共享存儲的掛載狀態;
根據所述運行狀態與所述掛載狀態,輸出所述共享存儲的安全狀態,
其中,僅當所述運行狀態與所述掛載狀態均為正常,則輸出所述共享存儲的存儲狀態為安全的信號。
優選的,根據所述運行狀態與所述掛載狀態,輸出所述共享存儲的安全狀態包括:
根據所述運行狀態輸出相應的控制信號,其中,若所述運行狀態為正常運行,則輸出邏輯為1的控制信號,若所述運行狀態為非正常運行,則輸出邏輯為0的控制信號;
根據所述掛載狀態輸出相應的掛載信號,其中,若所述掛載狀態為正常掛載,則輸出邏輯為1的掛載信號,若所述掛載狀態為非正常掛載,則輸出邏輯為0的掛載信號;
對所述控制信號和所述掛載信號進行「與」邏輯運算;
根據邏輯運算結果輸出所述共享存儲的安全狀態,其中,僅當運算結果為1,則所述共享存儲的存儲狀態為安全的信號。
優選的,根據所述運行狀態與所述掛載狀態,輸出所述共享存儲的安全狀態包括:
根據所述運行狀態輸出相應的控制信號,其中,若所述運行狀態為正常運行,則輸出邏輯為0的控制信號,若所述運行狀態為非正常運行,則輸出邏輯為1的控制信號;
根據所述掛載狀態輸出相應的掛載信號,其中,若所述掛載狀態為正常掛載,則輸出邏輯為0的掛載信號,若所述掛載狀態為非正常掛載,則輸出邏輯為1的掛載信號;
對所述控制信號和所述掛載信號進行「或」邏輯運算;
根據邏輯運算結果輸出所述共享存儲的安全狀態,其中,僅當運算結果為0,則所述共享存儲的存儲狀態為安全的信號。
優選的,輸出所述控制信號為通過分布式鎖輸出相應的控制信號。
優選的,所述分布式鎖位SANLOCK。
本發明還公開了一種共享存儲的管理系統,包括:
運行狀態獲取模塊,用於獲取共享存儲相應的共享進程的運行狀態;
掛載狀態獲取模塊,用於獲取所述共享存儲的掛載狀態;
安全狀態輸出模塊,用於根據所述運行狀態與所述掛載狀態,輸出所述共享存儲的安全狀態,
其中,僅當所述運行狀態與所述掛載狀態均為正常,則輸出所述共享存儲的存儲狀態為安全的信號。
本發明公開了一種共享存儲的管理方法,包括:獲取共享存儲相應的共享進程的運行狀態;獲取上述共享存儲的掛載狀態;根據上述運行狀態與上述掛載狀態,輸出上述共享存儲的安全狀態,其中,僅當上述運行狀態與上述掛載狀態均為正常,則輸出上述共享存儲的存儲狀態為安全的信號。可見,本發明中對共享存儲相應的共享進程進行跟蹤,通過對共享進程的運行狀態和掛載狀態兩者進行判斷來輸出共享存儲的存儲狀態的安全狀態,僅當共享進程的運行狀態和掛載狀態同時為正常,才顯示共享存儲的共享狀態為安全,從而可以顯著提高共享存儲分享數據的安全性。
本發明還公開了一種共享存儲的管理系統,具有與上述方法相同的技術效果,在此不再贅述。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據提供的附圖獲得其他的附圖。
圖1為本發明實施例公開了一種共享存儲的管理方法的流程示意圖;
圖2為本發明實施例公開了一種具體採用「與」邏輯的共享存儲的管理方法的流程示意圖;
圖3為本發明實施例公開了一種具體採用「或」邏輯的共享存儲的管理方法的流程示意圖;
圖4為本發明實施例公開了一種共享存儲的管理系統的結果示意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
本發明實施例公開了一種共享存儲的管理方法,參見圖1所示,包括步驟S1至S3,其中:
步驟S1:獲取共享存儲相應的共享進程的運行狀態。
現有技術中,通過增加分布式鎖來提供共享存儲的安全性,但分布式鎖與共享存儲的共享進程不相關,從而會有兩者不一致的情況。
本發明提供的思路是對共享存儲相應的共享進程進行追蹤,實時獲取該共享進程的運行狀態,並將該共享進程的運行狀態與分布式鎖的狀態進行關聯,從而使得兩者具有相關性。
需要說明的是,可以通過其他的程序對共享進程的運行狀態進行跟蹤,以獲取運行狀態,本發明主要以分布式鎖作為實施方案進行舉例說明,並不局限於分布式鎖,採用其他狀態監督程序也可以。
步驟S2:獲取上述共享存儲的掛載狀態。
通常,共享存儲處於掛載狀態時,用戶可以對其中數據進行訪問,因此,掛載狀態應與共享存儲相應共享進程的運行狀態一致,因此獲取掛載狀態是步驟S3中判斷的一個前提依據。
步驟S3:根據上述運行狀態與上述掛載狀態,輸出上述共享存儲的安全狀態,其中,僅當上述運行狀態與上述掛載狀態均為正常,則輸出上述共享存儲的存儲狀態為安全的信號。
共享存儲相應的共享進程的運行狀態,在實際操作中,與分布式鎖相關聯,即分布式鎖的狀態反應了共享存儲相應的共享進程的運行狀態,具體的反應關係包括正相關和負相關,但最終反應的是共享進程的運行狀態,而只有滿足運行狀態正常和掛載狀態正常的情況,才表明該共享存儲中的數據處於安全狀態,向用戶輸出共享存儲中數據安全的信號。
共享存儲的安全狀態的具體信號可由提示語音、提示窗、提示字符和提示標記中的一個或幾個組成,實現方式包括文字、圖片、動畫和語音中的一個或幾個,在此不做限定。
在分布式系統中使用共享存儲時,對外提供的共享存儲狀態,由共享存儲的掛載狀態和分布式鎖的狀態共同組成,只有當兩者都是掛載狀態,才對外縣市共享存儲是掛載狀態,只要由兩者中有一個是未掛載,則對外顯示未掛載,這樣用戶在使用共享存儲就無法操作相應的共享存儲,提示用戶區掛載共享存儲。當用戶掛載存儲的時候,系統檢查共享存儲的掛載狀態和分布式鎖的狀態,如果只是分布式鎖丟失了,則只連接分布式鎖,如果兩者都是未掛載狀態,則先掛載共享存儲,再連接分布式鎖,這樣才允許用戶對共享存儲中的數據進行操作,進而保證數據的安全性。
在實際應用中,可通過邏輯門運算對上述運行狀態與上述掛載狀態兩者的關係進行判斷,從而輸出上述共享存儲的安全狀態,本發明提供兩種具體的實施例:
實施例1:參見圖2所示,獲取共享存儲相應的共享進程的運行狀態11和獲取共享存儲的掛載狀態12,根據上述運行狀態與上述掛載狀態,輸出上述共享存儲的安全狀態包括:
根據上述運行狀態輸出相應的控制信號,其中,若上述運行狀態為正常運行,則輸出邏輯為1的控制信號,若上述運行狀態為非正常運行,則輸出邏輯為0的控制信號;
根據上述掛載狀態輸出相應的掛載信號,其中,若上述掛載狀態為正常掛載,則輸出邏輯為1的掛載信號,若上述掛載狀態為非正常掛載,則輸出邏輯為0的掛載信號;
對上述控制信號和上述掛載信號進行「與」邏輯運算13;
根據邏輯運算結果輸出上述共享存儲的安全狀態14,其中,僅當運算結果為1,則上述共享存儲的存儲狀態為安全的信號。
在實際實施中,可使用分布式鎖SAMLOCK來輸出控制信號。
實施例2:參見圖3所示,獲取共享存儲相應的共享進程的運行狀態21和獲取共享存儲的掛載狀態22,根據上述運行狀態與上述掛載狀態,輸出上述共享存儲的安全狀態包括:
根據上述運行狀態輸出相應的控制信號,其中,若上述運行狀態為正常運行,則輸出邏輯為0的控制信號,若上述運行狀態為非正常運行,則輸出邏輯為1的控制信號;
根據上述掛載狀態輸出相應的掛載信號,其中,若上述掛載狀態為正常掛載,則輸出邏輯為0的掛載信號,若上述掛載狀態為非正常掛載,則輸出邏輯為1的掛載信號;
對上述控制信號和上述掛載信號進行「或」邏輯運算23;
根據邏輯運算結果輸出上述共享存儲的安全狀態24,其中,僅當運算結果為0,則上述共享存儲的存儲狀態為安全的信號。
在實際實施中,可使用分布式鎖SAMLOCK來輸出控制信號。
本發明還公開了一種共享存儲的管理系統,參見圖2所示,包括運行狀態獲取模塊11、掛載狀態獲取模塊12和安全狀態輸出模塊13,其中:
運行狀態獲取模塊11,用於獲取共享存儲相應的共享進程的運行狀態。
現有技術中,通過增加分布式鎖來提供共享存儲的安全性,但分布式鎖與共享存儲的共享進程不相關,從而會有兩者不一致的情況。
本發明提供的思路是對共享存儲相應的共享進程進行追蹤,實時獲取該共享進程的運行狀態,並將該共享進程的運行狀態與分布式鎖的狀態進行關聯,從而使得兩者具有相關性。
需要說明的是,可以通過其他的程序對共享進程的運行狀態進行跟蹤,以獲取運行狀態,本發明主要以分布式鎖作為實施方案進行舉例說明,並不局限於分布式鎖,採用其他狀態監督程序也可以。
掛載狀態獲取模塊12,用於獲取上述共享存儲的掛載狀態。
通常,共享存儲處於掛載狀態時,用戶可以對其中數據進行訪問,因此,掛載狀態應與共享存儲相應共享進程的運行狀態一致,因此獲取掛載狀態是安全狀態輸出模塊進行判斷的一個前提依據。
安全狀態輸出模塊13,用於根據上述運行狀態與上述掛載狀態,輸出上述共享存儲的安全狀態,其中,僅當上述運行狀態與上述掛載狀態均為正常,則輸出上述共享存儲的存儲狀態為安全的信號。
共享存儲相應的共享進程的運行狀態,在實際操作中,與分布式鎖相關聯,即分布式鎖的狀態反應了共享存儲相應的共享進程的運行狀態,具體的反應關係包括正相關和負相關,但最終反應的是共享進程的運行狀態,而只有滿足運行狀態正常和掛載狀態正常的情況,才表明該共享存儲中的數據處於安全狀態,向用戶輸出共享存儲中數據安全的信號。
共享存儲的安全狀態的具體信號可由提示語音、提示窗、提示字符和提示標記中的一個或幾個組成,實現方式包括文字、圖片、動畫和語音中的一個或幾個,在此不做限定。
在分布式系統中使用共享存儲時,對外提供的共享存儲狀態,由共享存儲的掛載狀態和分布式鎖的狀態共同組成,只有當兩者都是掛載狀態,才對外縣市共享存儲是掛載狀態,只要由兩者中有一個是未掛載,則對外顯示未掛載,這樣用戶在使用共享存儲就無法操作相應的共享存儲,提示用戶區掛載共享存儲。當用戶掛載存儲的時候,系統檢查共享存儲的掛載狀態和分布式鎖的狀態,如果只是分布式鎖丟失了,則只連接分布式鎖,如果兩者都是未掛載狀態,則先掛載共享存儲,再連接分布式鎖,這樣才允許用戶對共享存儲中的數據進行操作,進而保證數據的安全性。
最後,還需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句「包括一個……」限定的要素,並不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
以上對本發明所提供的一種共享存儲的管理方法及系統進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。