本發(fā)明涉及服務(wù)器技術(shù)領(lǐng)域,特別是涉及一種nas集群緩存處理方法和系統(tǒng)。
背景技術(shù):
隨著信息技術(shù)的發(fā)展,為了提高資源的利用效率,為網(wǎng)絡(luò)中不同的操作系統(tǒng)提供文件共享和數(shù)據(jù)備份,目前,人們通常使用nas網(wǎng)絡(luò)存儲(chǔ)。
通過nas網(wǎng)絡(luò)存儲(chǔ),不同的用戶可以同時(shí)訪問nas網(wǎng)絡(luò)存儲(chǔ)中的各種資源而不會(huì)互相影響。但是在nas協(xié)議提供存儲(chǔ)的系統(tǒng)中,協(xié)議層的性能問題是一直困擾研發(fā)人員的難題。在nas服務(wù)端實(shí)現(xiàn)文件或者目錄的元數(shù)據(jù)和數(shù)據(jù)的緩存是一種常用的方法,但是其數(shù)據(jù)緩存的有效性難以保證。
因此,如何既能提高nas協(xié)議的性能,又能保證數(shù)據(jù)緩存的有效性,是本領(lǐng)域技術(shù)人員目前需要解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種nas集群緩存處理方法和系統(tǒng),既能提高nas協(xié)議的性能,又能保證數(shù)據(jù)緩存的有效性。
為解決上述技術(shù)問題,本發(fā)明提供了如下技術(shù)方案:
一種nas集群緩存處理方法,包括:
通過目標(biāo)nas客戶端向?qū)?yīng)的目標(biāo)nas服務(wù)器發(fā)送修改文件或目錄的指令;
判斷在同一nas集群中是否有其他的nas客戶端和所述目標(biāo)nas客戶端訪問同一目錄;
若是,則通過所述目標(biāo)nas服務(wù)器進(jìn)行目標(biāo)文件或目錄的元數(shù)據(jù)的修改和緩存;
通過進(jìn)程間的消息機(jī)制通知與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器重新刷新本地緩存的對(duì)應(yīng)目標(biāo)文件或目錄的元數(shù)據(jù)。
優(yōu)選地,所述通過所述目標(biāo)nas服務(wù)器進(jìn)行目標(biāo)文件或目錄的元數(shù)據(jù)的修改和緩存,包括:
通過所述目標(biāo)nas服務(wù)器根據(jù)所述指令對(duì)文件系統(tǒng)進(jìn)行相應(yīng)的數(shù)據(jù)修改;
通過所述目標(biāo)nas服務(wù)器獲取所述文件系統(tǒng)的修改反饋信息;
通過所述目標(biāo)nas服務(wù)器向?qū)?yīng)的高速緩沖存儲(chǔ)器刷新緩存。
優(yōu)選地,所述通過進(jìn)程間的消息機(jī)制通知與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器重新刷新本地緩存的對(duì)應(yīng)目標(biāo)文件或目錄的元數(shù)據(jù),包括:
通過進(jìn)程間的消息機(jī)制向與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器發(fā)出緩存刷新通知;
通過所述與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器讀取所述文件系統(tǒng)中的相應(yīng)數(shù)據(jù);
通過所述與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器向?qū)?yīng)的高速緩沖存儲(chǔ)器刷新緩存。
一種nas集群緩存處理系統(tǒng),包括:
通信模塊,用于傳輸目標(biāo)nas客戶端向?qū)?yīng)的目標(biāo)nas服務(wù)器發(fā)送的修改文件或目錄的指令;
判斷模塊,用于判斷在同一nas集群中是否有其他的nas客戶端和所述目標(biāo)nas客戶端訪問同一目錄;
執(zhí)行模塊,所述執(zhí)行模塊設(shè)置在所述目標(biāo)nas服務(wù)器中,用于在判定在同一nas集群中有其他的nas客戶端和所述目標(biāo)nas客戶端訪問同一目錄時(shí),進(jìn)行目標(biāo)文件或目錄的元數(shù)據(jù)的修改和緩存;
消息傳輸模塊,用于通過進(jìn)程間的消息機(jī)制通知與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器重新刷新本地緩存的對(duì)應(yīng)目標(biāo)文件或目錄的元數(shù)據(jù)。
優(yōu)選地,所述執(zhí)行模塊包括:
修改單元,用于根據(jù)所述指令對(duì)文件系統(tǒng)進(jìn)行相應(yīng)的數(shù)據(jù)修改;
接收單元,用于獲取所述文件系統(tǒng)的修改反饋信息;
緩存刷新單元,用于向?qū)?yīng)的高速緩沖存儲(chǔ)器刷新緩存。
優(yōu)選地,所述消息傳輸模塊包括:通知單元,用于通過進(jìn)程間的消息機(jī)制向與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器發(fā)出緩存刷新通知;
其中,該系統(tǒng)還包括:設(shè)置在各與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器中的讀取單元,用于讀取所述文件系統(tǒng)中的相應(yīng)數(shù)據(jù);
設(shè)置在各與所述目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器中的緩存刷新單元,用于向?qū)?yīng)的高速緩沖存儲(chǔ)器刷新緩存。
與現(xiàn)有技術(shù)相比,上述技術(shù)方案具有以下優(yōu)點(diǎn):
本發(fā)明所提供的一種nas集群緩存處理方法,包括:通過目標(biāo)nas客戶端向?qū)?yīng)的目標(biāo)nas服務(wù)器發(fā)送修改文件或目錄的指令;判斷在同一nas集群中是否有其他的nas客戶端和目標(biāo)nas客戶端訪問同一目錄;若是,則通過目標(biāo)nas服務(wù)器進(jìn)行目標(biāo)文件或目錄的元數(shù)據(jù)的修改和緩存;通過進(jìn)程間的消息機(jī)制通知與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器重新刷新本地緩存的對(duì)應(yīng)目標(biāo)文件或目錄的元數(shù)據(jù)。通過在為nas客戶端提高nas服務(wù)的服務(wù)器的不同進(jìn)程之間,采用進(jìn)程間的消息機(jī)制進(jìn)行通知的方式,保證不同nas服務(wù)器緩存數(shù)據(jù)的時(shí)效性和一致性,從而實(shí)現(xiàn)各個(gè)服務(wù)進(jìn)程之間緩存數(shù)據(jù)的有效性。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明一種具體實(shí)施方式所提供的nas集群緩存處理方法流程圖;
圖2為本發(fā)明一種具體實(shí)施方式所提供的nas集群緩存處理方法中的具體實(shí)施案例示意圖;
圖3為本發(fā)明一種具體實(shí)施方式所提供的nas集群緩存處理系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施方式
本發(fā)明的核心是提供一種nas集群緩存處理方法和系統(tǒng),既能提高nas協(xié)議的性能,又能保證數(shù)據(jù)緩存的有效性。
為了使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更為明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式做詳細(xì)的說明。
在以下描述中闡述了具體細(xì)節(jié)以便于充分理解本發(fā)明。但是本發(fā)明能夠以多種不同于在此描述的其它方式來實(shí)施,本領(lǐng)域技術(shù)人員可以在不違背本發(fā)明內(nèi)涵的情況下做類似推廣。因此本發(fā)明不受下面公開的具體實(shí)施的限制。
請(qǐng)參考圖1和圖2,圖1為本發(fā)明一種具體實(shí)施方式所提供的nas集群緩存處理方法流程圖;圖2為本發(fā)明一種具體實(shí)施方式所提供的nas集群緩存處理方法中的具體實(shí)施案例示意圖。
本發(fā)明的一種具體實(shí)施方式提供了一種nas集群緩存處理方法,包括:
s11:通過目標(biāo)nas客戶端向?qū)?yīng)的目標(biāo)nas服務(wù)器發(fā)送修改文件或目錄的指令。
s12:判斷在同一nas集群中是否有其他的nas客戶端和目標(biāo)nas客戶端訪問同一目錄。
s13:若是,則通過目標(biāo)nas服務(wù)器進(jìn)行目標(biāo)文件或目錄的元數(shù)據(jù)的修改和緩存。
通過目標(biāo)nas服務(wù)器進(jìn)行目標(biāo)文件或目錄的元數(shù)據(jù)的修改和緩存,包括:通過目標(biāo)nas服務(wù)器根據(jù)指令對(duì)文件系統(tǒng)進(jìn)行相應(yīng)的數(shù)據(jù)修改;通過目標(biāo)nas服務(wù)器獲取文件系統(tǒng)的修改反饋信息;通過目標(biāo)nas服務(wù)器向?qū)?yīng)的高速緩沖存儲(chǔ)器刷新緩存。
s14:通過進(jìn)程間的消息機(jī)制通知與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器重新刷新本地緩存的對(duì)應(yīng)目標(biāo)文件或目錄的元數(shù)據(jù)。
通過進(jìn)程間的消息機(jī)制通知與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器重新刷新本地緩存的對(duì)應(yīng)目標(biāo)文件或目錄的元數(shù)據(jù),包括:通過進(jìn)程間的消息機(jī)制向與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器發(fā)出緩存刷新通知;通過與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器讀取文件系統(tǒng)中的相應(yīng)數(shù)據(jù);通過與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器向?qū)?yīng)的高速緩沖存儲(chǔ)器刷新緩存。
在本實(shí)施方式中,如圖2所示,以兩個(gè)nas客戶端同時(shí)訪問文件系統(tǒng)的同一個(gè)目錄為例進(jìn)行說明。
其中,第一nas客戶端為目標(biāo)nas客戶端,第一nas服務(wù)器為目標(biāo)nas服務(wù)器,第二nas客戶端為和第一nas客戶端同時(shí)訪問同一目錄的客戶端。
第一nas客戶端向第一nas服務(wù)器發(fā)出修改文件或目錄的指令,第一nas服務(wù)器根據(jù)該指令修改文件系統(tǒng),即對(duì)文件系統(tǒng)中對(duì)應(yīng)的文件或目錄的元數(shù)據(jù)進(jìn)行修改,待修改完成后,文件系統(tǒng)返回修改完成的結(jié)果,此時(shí)第一nas服務(wù)器控制第一cache(第一高速緩沖存儲(chǔ)器)刷新緩存,然后第一nas服務(wù)器通知第二nas服務(wù)器進(jìn)行緩存刷新,第二nas服務(wù)器讀取文件系統(tǒng)中的相應(yīng)數(shù)據(jù),調(diào)取相應(yīng)的修改后的數(shù)據(jù),并對(duì)第二cache(第二高速緩沖存儲(chǔ)器)進(jìn)行緩存刷新。
通過在為nas客戶端提高nas服務(wù)的服務(wù)器的不同進(jìn)程之間,采用進(jìn)程間的消息機(jī)制進(jìn)行通知的方式,保證不同nas服務(wù)器緩存數(shù)據(jù)的時(shí)效性和一致性,實(shí)現(xiàn)各個(gè)服務(wù)進(jìn)程之間緩存數(shù)據(jù)的有效性,從而提高了nas協(xié)議提高文件服務(wù)的性能,減少了和文件系統(tǒng)的耦合性。
請(qǐng)參考圖3,圖3為本發(fā)明一種具體實(shí)施方式所提供的nas集群緩存處理系統(tǒng)結(jié)構(gòu)示意圖。
相應(yīng)地,本發(fā)明一種實(shí)施方式還提供了一種nas集群緩存處理系統(tǒng),包括:
通信模塊31,用于傳輸目標(biāo)nas客戶端向?qū)?yīng)的目標(biāo)nas服務(wù)器發(fā)送的修改文件或目錄的指令;
判斷模塊32,用于判斷在同一nas集群中是否有其他的nas客戶端和目標(biāo)nas客戶端訪問同一目錄;
執(zhí)行模塊33,執(zhí)行模塊設(shè)置在目標(biāo)nas服務(wù)器中,用于在判定在同一nas集群中有其他的nas客戶端和目標(biāo)nas客戶端訪問同一目錄時(shí),進(jìn)行目標(biāo)文件或目錄的元數(shù)據(jù)的修改和緩存;
消息傳輸模塊34,用于通過進(jìn)程間的消息機(jī)制通知與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器重新刷新本地緩存的對(duì)應(yīng)目標(biāo)文件或目錄的元數(shù)據(jù)。
進(jìn)一步地,執(zhí)行模塊包括:修改單元,用于根據(jù)指令對(duì)文件系統(tǒng)進(jìn)行相應(yīng)的數(shù)據(jù)修改;接收單元,用于獲取文件系統(tǒng)的修改反饋信息;緩存刷新單元,用于向?qū)?yīng)的高速緩沖存儲(chǔ)器刷新緩存。
更進(jìn)一步地,消息傳輸模塊包括:通知單元,用于通過進(jìn)程間的消息機(jī)制向與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器發(fā)出緩存刷新通知;其中,該系統(tǒng)還包括:設(shè)置在各與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器中的讀取單元,用于讀取文件系統(tǒng)中的相應(yīng)數(shù)據(jù);設(shè)置在各與目標(biāo)nas客戶端訪問同一目錄的nas客戶端對(duì)應(yīng)的nas服務(wù)器中的緩存刷新單元,用于向?qū)?yīng)的高速緩沖存儲(chǔ)器刷新緩存。
需要說明的是,所有的nas服務(wù)器中均可以設(shè)置有讀取單元和緩存刷新單元。
通過在為nas客戶端提高nas服務(wù)的服務(wù)器的不同進(jìn)程之間,采用進(jìn)程間的消息機(jī)制進(jìn)行通知的方式,保證不同nas服務(wù)器緩存數(shù)據(jù)的時(shí)效性和一致性,實(shí)現(xiàn)各個(gè)服務(wù)進(jìn)程之間緩存數(shù)據(jù)的有效性,從而提高了nas協(xié)議提高文件服務(wù)的性能,減少了和文件系統(tǒng)的耦合性。
以上對(duì)本發(fā)明所提供的一種nas集群緩存處理方法和系統(tǒng)進(jìn)行了詳細(xì)介紹。本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對(duì)本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。