本發(fā)明涉及計算機集群技術(shù)領(lǐng)域,特別是涉及一種應(yīng)用服務(wù)器集群的一致性驗證方法及裝置。
背景技術(shù):
隨著國產(chǎn)中間件應(yīng)用服務(wù)器(簡稱應(yīng)用服務(wù)器,也稱服務(wù)器)產(chǎn)品應(yīng)用范圍不斷擴大,使用服務(wù)器的場景的規(guī)模和拓撲的復雜程度不斷加大。通常情況下,會將多個應(yīng)用服務(wù)器集中管理統(tǒng)一對外提供同一種服務(wù),把這樣的模式稱為服務(wù)器集群。在服務(wù)器集群中,對于每個服務(wù)器在功能和穩(wěn)定性上提出了更高的要求。在服務(wù)器集群下進行應(yīng)用發(fā)布過程中,需要服務(wù)器集群中的主控服務(wù)器通過安全傳輸協(xié)議把應(yīng)用對應(yīng)的相關(guān)文件同步傳輸至分布于不同節(jié)點的服務(wù)器上(服務(wù)器的容器內(nèi)),并對準備部署的應(yīng)用通過統(tǒng)一的標準規(guī)范進行一致性驗證,用于保證應(yīng)用的完整性和可用性。在應(yīng)用發(fā)布過程中,主控服務(wù)器會持續(xù)檢測各個服務(wù)器的文件一致性情況。在一致性驗證過程中,驗證標準會根據(jù)服務(wù)器和應(yīng)用的特點各有區(qū)別,這個驗證標準對集群的穩(wěn)定性和功能性有重要影響。
目前現(xiàn)有的一致性驗證標準大多以參考
但是,上述驗證標準是固化的,隨著應(yīng)用開發(fā)標準的更新,不能根據(jù)新的應(yīng)用構(gòu)架進行修改和更新。在進行應(yīng)用發(fā)布或者應(yīng)用升級時,會由于驗證失敗產(chǎn)生兼容性問題,最終導致應(yīng)用發(fā)布失敗,需要對應(yīng)用進行修改以適應(yīng)服務(wù)器的標準規(guī)范。由此可見,如何克服現(xiàn)有技術(shù)中驗證標準固化而帶來的弊端是本領(lǐng)域技術(shù)人員亟待解決的問題。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是提供一種應(yīng)用服務(wù)器集群的一致性驗證方法及裝置,用于克服現(xiàn)有技術(shù)中驗證標準固化而帶來的弊端。
為解決上述技術(shù)問題,本發(fā)明提供一種應(yīng)用服務(wù)器集群的一致性驗證方法,包括:
接收用于過濾預定類型文件的驗證標準配置文件,所述驗證標準配置文件中包含有所述預定類型文件的文件列表;
判斷各節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在所述文件列表中;
如果是,則對所述文件進行一致性驗證;如果否,則確定所述文件通過一致性驗證。
優(yōu)選地,所述判斷各節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在所述文件列表中具體包括:
按照預定驗證順序選擇一個節(jié)點的服務(wù)器作為首個驗證對象;
判斷當前節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在所述文件列表中;
其中,如果包含,則進入所述對所述文件進行一致性驗證的步驟,否則,進入所述確定所述文件通過一致性驗證的步驟,之后,還包括:
判斷服務(wù)器集群中的節(jié)點是否全部驗證完畢;
如果未全部驗證完畢,則由當前節(jié)點跳轉(zhuǎn)至下一個節(jié)點,并返回所述判斷當前節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在所述文件列表中的步驟。
優(yōu)選地,所述對所述文件進行一致性驗證具體為:驗證所述文件是否與對應(yīng)的原始文件一致;
如果是,則確定對應(yīng)的服務(wù)器通過一致性驗證,否則,輸出異常信息。
優(yōu)選地,還包括:獲取所述文件列表中對應(yīng)的全部原始文件的快照;
其中,所述驗證所述文件是否與對應(yīng)的原始文件一致具體為:驗證所述文件是否與對應(yīng)的原始文件的快照一致。
優(yōu)選地,所述判斷當前節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在所述文件列表中具體為:判斷所述文件的文件類型和文件所占用空間是否與所述文件列表中的同一對比文件相同;
如果是,則確定當前節(jié)點的服務(wù)器所對應(yīng)的文件包含在所述文件列表中,否則,確定當前節(jié)點的服務(wù)器所對應(yīng)的文件未包含在所述文件列表中。
優(yōu)選地,還包括:當接收到修改所述文件列表的指令時,按照所述指令修改所述文件列表以更新所述驗證標準配置文件。
為解決上述技術(shù)問題,本發(fā)明還提供一種應(yīng)用服務(wù)器集群的一致性驗證裝置,包括:
接收單元,用于接收用于過濾預定類型文件的驗證標準配置文件,所述驗證標準配置文件中包含有所述預定類型文件的文件列表;
判斷單元,用于判斷各節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在所述文件列表中;
確定單元,用于在所述判斷單元的結(jié)果為是時,對所述文件進行一致性驗證;在所述判斷單元的結(jié)果為否時,確定所述文件通過一致性驗證。
本發(fā)明所提供的應(yīng)用服務(wù)器集群的一致性驗證方法及裝置,首先接收驗證標準配置件,該文件中包含了一個用于過濾預定類型文件的文件列表,在應(yīng)用同步或者運行過程中需要進行一致性驗證時,先判斷每個節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在文件列表中,如果包含在文件列表中,說明當前這個文件需要進行一致性驗證,相反,如果不包含在文件列表中,則說明當前這個文件對應(yīng)的服務(wù)器在進行應(yīng)用部署過程中直接通過一致性驗證。由此可見,本方法可以根據(jù)應(yīng)用架構(gòu)的實際情況,動態(tài)修改文件列表,從而在應(yīng)用架構(gòu)發(fā)生變化時,克服由于一致性驗證標準是固化所帶來的問題,提高了服務(wù)器集群運行的兼容性和操作性。
附圖說明
為了更清楚地說明本發(fā)明實施例,下面將對實施例中所需要使用的附圖做簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供的一種應(yīng)用服務(wù)器集群的一致性驗證方法的流程圖;
圖2為本發(fā)明實施例提供的另一種應(yīng)用服務(wù)器集群的一致性驗證方法的流程圖;
圖3為本發(fā)明實施例提供的一種應(yīng)用服務(wù)器集群的一致性驗證裝置的結(jié)構(gòu)圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下,所獲得的所有其他實施例,都屬于本發(fā)明保護范圍。
本發(fā)明的核心是提供一種應(yīng)用服務(wù)器集群的一致性驗證方法,用于克服現(xiàn)有技術(shù)中驗證標準固化而帶來的弊端。
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實施方式對本發(fā)明作進一步的詳細說明。
圖1為本發(fā)明實施例提供的一種應(yīng)用服務(wù)器集群的一致性驗證方法的流程圖。如圖1所示,包括:
s10:接收用于過濾預定類型文件的驗證標準配置文件,驗證標準配置文件中包含有預定類型文件的文件列表。
s11:判斷各節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在文件列表中,如果是,則進入步驟s12,否則,進入步驟s13。
s12:對文件進行一致性驗證。
s13:確定文件通過一致性驗證。
步驟s10中,預定類型文件是根據(jù)當前服務(wù)器集群中所要發(fā)布的應(yīng)用設(shè)定的,應(yīng)用發(fā)布者可以根據(jù)當前應(yīng)用的架構(gòu)特點預先在主控服務(wù)器上添加驗證標準配置文件。這個文件中包含了一個文件列表,用來過濾那些與文件列表上一致的文件。例如,文件列表中包含了一個文件類型為.doc格式的文件,則在進行一致性驗證過程中,并不是對全部的文件進行驗證,而是類型為.doc格式的文件才進行一致性驗證,其他類型的文件就可以直接通過一致性驗證,即不需要經(jīng)過一致性驗證,默認為通過了一致性驗證。
由于應(yīng)用架構(gòu)的不同,集群在運行過程中,應(yīng)用程序會生產(chǎn)帶有各自的環(huán)境信息的文件,導致部分節(jié)點的服務(wù)器所產(chǎn)生的文件與主控服務(wù)器原始文件有所不同,該現(xiàn)象是正常的,如果按照現(xiàn)有技術(shù)中固化的一致性驗證標準的話,則在應(yīng)用發(fā)布時,經(jīng)常輸出異常信息,導致應(yīng)用發(fā)布失敗。而采用上述步驟的話,應(yīng)用發(fā)布者可以預先對驗證標準配置文件中的文件列表進行合理更改,使得相應(yīng)的文件能夠不需要通過一致性驗證即可通過,這樣就可避免服務(wù)器集群在正常情況下輸出異常信息的問題。
需要說明的是,如果步驟s11得到一個文件包含在文件列表中,則需要進行步驟s12,步驟s12中對文件進行一致性驗證具體為:驗證文件是否與對應(yīng)的原始文件一致;如果是,則確定對應(yīng)的服務(wù)器通過一致性驗證,否則,輸出異常信息。
本實施例提供的應(yīng)用服務(wù)器集群的一致性驗證方法,首先接收驗證標準配置件,該文件中包含了一個用于過濾預定類型文件的文件列表,在應(yīng)用同步或者運行過程中需要進行一致性驗證時,先判斷每個節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在文件列表中,如果包含在文件列表中,說明當前這個文件需要進行一致性驗證,相反,如果不包含在文件列表中,則說明當前這個文件對應(yīng)的服務(wù)器在進行應(yīng)用部署過程中直接通過一致性驗證。由此可見,本方法可以根據(jù)應(yīng)用架構(gòu)的實際情況,動態(tài)修改文件列表,從而在應(yīng)用架構(gòu)發(fā)生變化時,克服由于一致性驗證標準是固化所帶來的問題,提高了服務(wù)器集群運行的兼容性和操作性。
圖2為本發(fā)明實施例提供的另一種應(yīng)用服務(wù)器集群的一致性驗證方法的流程圖。如圖2所示,步驟s11具體包括:
s110:按照預定驗證順序選擇一個節(jié)點的服務(wù)器作為首個驗證對象。
s111:判斷當前節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在文件列表中,如果是,進入步驟s12,否則,進入步驟s13。在步驟s13之后進入步驟s112。
s112:判斷服務(wù)器集群中的節(jié)點是否全部驗證完畢,如果否,則進入步驟s113,如果是,則結(jié)束。
s113:由當前節(jié)點跳轉(zhuǎn)至下一個節(jié)點,并返回步驟s111。
在具體實施中,可以靈活設(shè)定服務(wù)器集群在一致性驗證過程中的驗證順序,本實施例不再贅述。例如服務(wù)器集群中有10個服務(wù)器,其中標號為1的服務(wù)器為主控服務(wù)器用于執(zhí)行上述步驟,其余2-9號的普通的服務(wù)器要被驗證一致性。如果2號服務(wù)器作為首個驗證對象時,則在第一輪執(zhí)行過程中,步驟s112的判斷結(jié)果就是否,步驟s113中的下一個節(jié)點就是3號服務(wù)器。其余的循環(huán)過程本實施例不再贅述。
另外,作為優(yōu)選的實施方式,步驟s111具體為:判斷文件的文件類型和文件所占用空間是否與文件列表中的同一對比文件相同;
如果是,則確定當前節(jié)點的服務(wù)器所對應(yīng)的文件包含在文件列表中,否則,確定當前節(jié)點的服務(wù)器所對應(yīng)的文件未包含在文件列表中。
可以理解的是,通過文件類型和文件所占用空間兩個參數(shù)進行判斷是其中的一種方式,還可以只是通過文件類型進行判斷,對于其他實施方式,本實施例不再贅述。
在上述實施例的基礎(chǔ)上,還包括:獲取文件列表中對應(yīng)的全部原始文件的快照;其中,驗證文件是否與對應(yīng)的原始文件一致具體為:驗證文件是否與對應(yīng)的原始文件的快照一致。
在進行步驟s12,即對文件進行一致性驗證時,驗證的是文件是否與對應(yīng)的原始文件一致。由于主控服務(wù)器在進行原始文件的調(diào)取過程中所需的時間較長,為了提高效率,需要預先獲取各原始文件的快照,這樣在與原始文件進行驗證時就可以直接調(diào)取原始文件的快照即可。
在上述實施例的基礎(chǔ)上,還包括:當接收到修改文件列表的指令時,按照指令修改文件列表以更新驗證標準配置文件。
在具體實施中,當需要對文件列表進行修改時,例如應(yīng)用架構(gòu)發(fā)生變化,則在接收到應(yīng)用發(fā)布者的指令后,按照指令對文件列表進行修改,使得驗證標準配置文件得到更新,以適應(yīng)新的應(yīng)用架構(gòu)。由此可見,即使應(yīng)用架構(gòu)發(fā)生變化,則當前服務(wù)器集群也能夠?qū)崿F(xiàn)應(yīng)用的發(fā)布,兼容性更高。
在上述實施例中對服務(wù)器集群的一致性驗證方法進行了詳細說明,此外,本發(fā)明還公開一種與服務(wù)器集群的一致性驗證方法對應(yīng)的服務(wù)器集群的一致性驗證裝置。圖3為本發(fā)明實施例提供的一種應(yīng)用服務(wù)器集群的一致性驗證裝置的結(jié)構(gòu)圖。如圖3所示,該裝置包括:
接收單元10,用于接收用于過濾預定類型文件的驗證標準配置文件,所述驗證標準配置文件中包含有所述預定類型文件的文件列表;
判斷單元11,用于判斷各節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在所述文件列表中;
確定單元12,用于在所述判斷單元的結(jié)果為是時,對所述文件進行一致性驗證;在所述判斷單元的結(jié)果為否時,確定所述文件通過一致性驗證。
由于裝置部分的實施例與方法部分完全對應(yīng),因此本實施例不再贅述。需要說明的是,服務(wù)器集群的一致性驗證裝置是應(yīng)用在服務(wù)器集群中的主控服務(wù)器上。
本實施例提供的應(yīng)用服務(wù)器集群的一致性驗證裝置,首先接收驗證標準配置件,該文件中包含了一個用于過濾預定類型文件的文件列表,在應(yīng)用同步或者運行過程中需要進行一致性驗證時,先判斷每個節(jié)點的服務(wù)器所對應(yīng)的文件是否包含在文件列表中,如果包含在文件列表中,說明當前這個文件需要進行一致性驗證,相反,如果不包含在文件列表中,則說明當前這個文件對應(yīng)的服務(wù)器在進行應(yīng)用部署過程中直接通過一致性驗證。由此可見,本裝置可以根據(jù)應(yīng)用架構(gòu)的實際情況,動態(tài)修改文件列表,從而在應(yīng)用架構(gòu)發(fā)生變化時,克服由于一致性驗證標準是固化所帶來的問題,提高了服務(wù)器集群運行的兼容性和操作性。
以上對本發(fā)明所提供的應(yīng)用服務(wù)器集群的一致性驗證方法及裝置進行了詳細介紹。說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權(quán)利要求的保護范圍內(nèi)。