本發(fā)明涉及服務(wù)器集群技術(shù)領(lǐng)域,特別是涉及一種服務(wù)器集群監(jiān)控方法及系統(tǒng)。
背景技術(shù):
隨著數(shù)據(jù)中心的數(shù)據(jù)處理需求不斷提高,通常需要將多臺服務(wù)器相互連接以作為一個服務(wù)器集群,服務(wù)器集群內(nèi)的多臺服務(wù)器并行完成相同的數(shù)據(jù)處理業(yè)務(wù);相應(yīng)的,為了確保服務(wù)器集群的良好運行,對集群內(nèi)的每一個服務(wù)器進行相應(yīng)的監(jiān)控管理就顯得極為重要。
目前,主要通過在每一個服務(wù)器節(jié)點安裝監(jiān)控終端,利用監(jiān)控終端監(jiān)控當前服務(wù)器的項目信息,現(xiàn)有監(jiān)控系統(tǒng)中,包括簇節(jié)點和終端節(jié)點,簇節(jié)點用于從各個簇收集各終端節(jié)點得到的信息數(shù)據(jù),并更新到數(shù)據(jù)庫中;終端節(jié)點收集本服務(wù)器的信息數(shù)據(jù),并收集其下一終端節(jié)點的數(shù)據(jù),收集的數(shù)據(jù)供簇節(jié)點讀取。現(xiàn)有技術(shù)中,各節(jié)點之間通過UDP(User Datagram Protocol)協(xié)議傳輸數(shù)據(jù),但以這種通信方式容易出現(xiàn)傳輸數(shù)據(jù)丟失的情況,導(dǎo)致監(jiān)控信息更新不準確。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種服務(wù)器集群監(jiān)控方法及系統(tǒng),與現(xiàn)有技術(shù)相比,提高了監(jiān)控過程中節(jié)點之間通信的可靠性,可降低節(jié)點之間傳輸數(shù)據(jù)丟失的情況,可提高監(jiān)控準確度。
為實現(xiàn)上述問題,本發(fā)明提供如下技術(shù)方案:
一種服務(wù)器集群監(jiān)控方法,包括:
對應(yīng)集群中的每一服務(wù)器設(shè)置通信節(jié)點,所述通信節(jié)點用于從服務(wù)器的監(jiān)控模塊獲取監(jiān)控得到的該服務(wù)器的信息數(shù)據(jù);
各所述通信節(jié)點以分岔樹狀形式連接,在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲得的信息數(shù)據(jù)傳送給上一級父節(jié)點;
其中,所述通信節(jié)點將待傳輸?shù)臄?shù)據(jù)包依次編號進行傳送,作為接收方的通信節(jié)點在成功接收到每一數(shù)據(jù)包時向發(fā)送方通信節(jié)點返回相應(yīng)的確認信息,且發(fā)送方通信節(jié)點將沒有接收到確認信息的數(shù)據(jù)包重新發(fā)送。
可選地,各所述通信節(jié)點的分岔數(shù)量平均。
可選地,各路分岔路徑包含的所述通信節(jié)點的數(shù)量平均。
可選地,所述通信節(jié)點在檢測到與父節(jié)點斷開連接時,尋找另一父節(jié)點建立連接。
可選地,所述通信節(jié)點根據(jù)各路分岔路徑的長度的平均值,尋找另一父節(jié)點建立連接,使新形成的分岔路徑的長度與其它分岔路徑的長度平均,所述分岔路徑的長度指該路分岔路徑包含的通信節(jié)點的數(shù)量。
可選地,所述通信節(jié)點在檢測到與父節(jié)點斷開連接時,在保存的前驅(qū)節(jié)點列表信息中刪除該父節(jié)點的信息;
并在與另一父節(jié)點建立連接時,將所述另一父節(jié)點的信息添加到前驅(qū)節(jié)點列表信息中。
可選地,所述通信節(jié)點在檢測到子節(jié)點與自身斷開連接時,根據(jù)各路分岔路徑的長度的平均值,尋找另一子節(jié)點建立連接,所述分岔路徑的長度指該路分岔路徑包含的通信節(jié)點的數(shù)量。
可選地,所述通信節(jié)點在檢測到子節(jié)點與自身斷開連接時,在保存的后繼節(jié)點列表信息中刪除該子節(jié)點的信息;
并在與另一子節(jié)點建立連接時,將所述另一子節(jié)點的信息添加到后繼節(jié)點列表信息中。
可選地,在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點周期性地從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲得的信息數(shù)據(jù)傳送給上一級父節(jié)點。
一種服務(wù)器集群監(jiān)控系統(tǒng),包括:
對應(yīng)集群中每一服務(wù)器設(shè)置的通信節(jié)點,用于從服務(wù)器的監(jiān)控模塊獲取監(jiān)控得到的該服務(wù)器的信息數(shù)據(jù);
各所述通信節(jié)點以分岔樹狀形式連接,在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲得的信息數(shù)據(jù)傳送給上一級父節(jié)點;
其中,所述通信節(jié)點將待傳輸?shù)臄?shù)據(jù)包依次編號進行傳送,作為接收方的通信節(jié)點在成功接收到每一數(shù)據(jù)包時向發(fā)送方通信節(jié)點返回相應(yīng)的確認信息,且發(fā)送方通信節(jié)點將沒有接收到確認信息的數(shù)據(jù)包重新發(fā)送。
由上述技術(shù)方案可知,本發(fā)明所提供的服務(wù)器集群監(jiān)控方法及系統(tǒng),對應(yīng)集群中每一服務(wù)器設(shè)置通信節(jié)點,各通信節(jié)點以分岔樹狀形式連接;其中,每一通信節(jié)點從對應(yīng)服務(wù)器的監(jiān)控模塊獲取監(jiān)控到的本服務(wù)器的信息數(shù)據(jù),在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲取的信息數(shù)據(jù)傳送給上一級父節(jié)點;通信節(jié)點在傳輸數(shù)據(jù)中,將待傳輸?shù)臄?shù)據(jù)包依次編號進行傳輸,作為接收方的通信節(jié)點在成功接收到每一數(shù)據(jù)包時向發(fā)送方通信節(jié)點返回相應(yīng)的確認信息,且發(fā)送方通信節(jié)點將沒有接收到確認信息的數(shù)據(jù)包重新發(fā)送。
本發(fā)明服務(wù)器集群監(jiān)控方法及系統(tǒng)中,將通信節(jié)點組織為分岔樹狀形式連接,并且通信節(jié)點之間以上述方式傳輸數(shù)據(jù),與現(xiàn)有技術(shù)相比,提高了監(jiān)控過程中節(jié)點之間通信的可靠性,降低了節(jié)點之間傳輸數(shù)據(jù)丟失的情況,可提高監(jiān)控準確度。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供的服務(wù)器集群監(jiān)控方法中通信節(jié)點的連接示意圖。
具體實施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明中的技術(shù)方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應(yīng)當屬于本發(fā)明保護的范圍。
本發(fā)明實施例提供一種服務(wù)器集群監(jiān)控方法,包括:
對應(yīng)集群中的每一服務(wù)器設(shè)置通信節(jié)點,所述通信節(jié)點用于從服務(wù)器的監(jiān)控模塊獲取監(jiān)控得到的該服務(wù)器的信息數(shù)據(jù);
各所述通信節(jié)點以分岔樹狀形式連接,在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲得的信息數(shù)據(jù)傳送給上一級父節(jié)點;
其中,所述通信節(jié)點將待傳輸?shù)臄?shù)據(jù)包依次編號進行傳送,作為接收方的通信節(jié)點在成功接收到每一數(shù)據(jù)包時向發(fā)送方通信節(jié)點返回相應(yīng)的確認信息,且發(fā)送方通信節(jié)點將沒有接收到確認信息的數(shù)據(jù)包重新發(fā)送。
可以看出,本實施例服務(wù)器集群監(jiān)控方法,對應(yīng)集群中每一服務(wù)器設(shè)置通信節(jié)點,各通信節(jié)點以分岔樹狀形式連接;其中,每一通信節(jié)點從對應(yīng)服務(wù)器的監(jiān)控模塊獲取監(jiān)控到的本服務(wù)器的信息數(shù)據(jù),在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲取的信息數(shù)據(jù)傳送給上一級父節(jié)點;通信節(jié)點在傳輸數(shù)據(jù)中,將待傳輸?shù)臄?shù)據(jù)包依次編號進行傳輸,作為接收方的通信節(jié)點在成功接收到每一數(shù)據(jù)包時向發(fā)送方通信節(jié)點返回相應(yīng)的確認信息,且發(fā)送方通信節(jié)點將沒有接收到確認信息的數(shù)據(jù)包重新發(fā)送。
本實施例服務(wù)器集群監(jiān)控方法中,將通信節(jié)點組織為分岔樹狀形式連接,并且通信節(jié)點之間以上述方式傳輸數(shù)據(jù),與現(xiàn)有技術(shù)相比,提高了監(jiān)控過程中節(jié)點之間通信的可靠性,降低了節(jié)點之間傳輸數(shù)據(jù)丟失的情況,可提高監(jiān)控準確度。
下面對本實施例服務(wù)器集群監(jiān)控方法進行詳細說明。本實施例服務(wù)器集群監(jiān)控方法包括:
首先,對應(yīng)集群中的每一服務(wù)器設(shè)置通信節(jié)點,所述通信節(jié)點用于從服務(wù)器的監(jiān)控模塊獲取監(jiān)控得到的該服務(wù)器的信息數(shù)據(jù)。
在服務(wù)器集群中,對應(yīng)每一服務(wù)器設(shè)置通信節(jié)點,通信節(jié)點從相應(yīng)服務(wù)器的監(jiān)控模塊獲取監(jiān)控得到的本服務(wù)器的信息數(shù)據(jù)。其中,在每一服務(wù)器設(shè)置有監(jiān)控模塊,用于監(jiān)控服務(wù)器的各項運行信息。
其次,各所述通信節(jié)點以分岔樹狀形式連接,在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲得的信息數(shù)據(jù)傳送給上一級父節(jié)點。
可參考圖1,為本實施例服務(wù)器集群監(jiān)控方法中通信節(jié)點的連接示意圖??梢钥吹?,通信節(jié)點以分岔樹狀形式連接,作為根節(jié)點的通信節(jié)點1與下一級節(jié)點通信節(jié)點10和通信節(jié)點11連接,通信節(jié)點10又與下一級通信節(jié)點100、通信節(jié)點101、通信節(jié)點102、通信節(jié)點103分別連接,通信節(jié)點11與下一級通信節(jié)點110、通信節(jié)點111、通信節(jié)點112、通信節(jié)點113分別連接。
其中一路分岔路徑指從根節(jié)點依次連接到一葉子節(jié)點形成的一路路徑,例如通信節(jié)點1-通信節(jié)點10-通信節(jié)點100連接形成一路分岔路徑,通信節(jié)點1-通信節(jié)點10-通信節(jié)點101連接形成一路分岔路徑,通信節(jié)點1-通信節(jié)點10-通信節(jié)點102連接形成一路分岔路徑,通信節(jié)點1-通信節(jié)點10-通信節(jié)點103連接形成一路分岔路徑。
圖1所示以與根節(jié)點通信節(jié)點1連接有兩路下一級通信節(jié)點來說明,在實際應(yīng)用中并不限于兩路,可以根據(jù)實際需要設(shè)置與根節(jié)點連接的通信節(jié)點數(shù)量;另外,與各通信節(jié)點連接的分岔數(shù)量也可以靈活設(shè)置。
在監(jiān)控過程中,各通信節(jié)點從本服務(wù)器獲取監(jiān)控的信息數(shù)據(jù);在一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲得的信息數(shù)據(jù)傳送給上一級父節(jié)點,例如,節(jié)點10分別從與其連接的子節(jié)點100、節(jié)點101、節(jié)點102、節(jié)點103收集信息數(shù)據(jù),并將收集的信息數(shù)據(jù)傳送給其上一級父節(jié)點1。
優(yōu)選的,在監(jiān)控過程中,作為父節(jié)點的通信節(jié)點周期性地從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲得的信息數(shù)據(jù)傳送給上一級父節(jié)點。
作為根節(jié)點的通信節(jié)點1收集到各節(jié)點的信息數(shù)據(jù),將數(shù)據(jù)更新到數(shù)據(jù)庫。監(jiān)控人員可以通過客戶端查看信息數(shù)據(jù),以監(jiān)控服務(wù)器集群中各服務(wù)器的各項信息。
因此,與現(xiàn)有技術(shù)中各終端節(jié)點以散列形式分布相比,本實施例方法將通信節(jié)點組織為分岔樹狀形式連接,可以提高通信節(jié)點間通信的可靠性,可降低因網(wǎng)絡(luò)、硬件等問題導(dǎo)致數(shù)據(jù)丟失的情況。
在本方法的監(jiān)控過程中,各通信節(jié)點之間傳輸數(shù)據(jù)的方式為:通信節(jié)點將待傳輸?shù)臄?shù)據(jù)包依次編號進行傳送,作為接收方的通信節(jié)點在成功接收到每一數(shù)據(jù)包時向發(fā)送方通信節(jié)點返回相應(yīng)的確認信息,且發(fā)送方通信節(jié)點將沒有接收到確認信息的數(shù)據(jù)包重新發(fā)送。即各通信節(jié)點以TCP協(xié)議進行通信,傳輸數(shù)據(jù),提高了通信節(jié)點間通信的可靠性,降低了信息數(shù)據(jù)丟失的情況,保證監(jiān)控信息數(shù)據(jù)能及時準確地更新,提高了監(jiān)控準確度。
進一步的,通信節(jié)點在接收到發(fā)送方通信節(jié)點發(fā)送的數(shù)據(jù)后,會采用校驗和函數(shù)來檢驗所接收的數(shù)據(jù)是否有錯誤,采用校驗和函數(shù)計算校驗和,檢驗傳輸?shù)臄?shù)據(jù)是否存在錯誤,在檢驗到數(shù)據(jù)錯誤時可要求發(fā)送方通信節(jié)點重新發(fā)送,因此提高通信節(jié)點間數(shù)據(jù)傳輸?shù)臏蚀_性。
本實施例中,優(yōu)選的,各所述通信節(jié)點的分岔數(shù)量平均。通信節(jié)點的分岔數(shù)量指與該通信節(jié)點連接的子節(jié)點的數(shù)量,保持各通信節(jié)點的分岔數(shù)量平均,可以提高各通信節(jié)點間的均衡。本實施例中各通信節(jié)點的分岔數(shù)量優(yōu)選為4,如圖1所示。
優(yōu)選的,各路分岔路徑包含的通信節(jié)點的數(shù)量平均。一路分岔路徑包含的通信節(jié)點的數(shù)量即分岔路徑的長度。各路分岔路徑的長度保持平均,有助于保證各節(jié)點間的均衡性,可以提高在監(jiān)控過程中數(shù)據(jù)廣播的效率。在實際應(yīng)用中可要求毎一路分岔路徑的長度相差不超過2。
本實施例中,當有節(jié)點丟失、刪除或者添加時,各通信節(jié)點具有維持自平衡功能。
具體為,所述通信節(jié)點在檢測到與父節(jié)點斷開連接時,尋找另一父節(jié)點建立連接。通信節(jié)點在檢測到原本連接的父節(jié)點與自身斷開連接時,即該父節(jié)點丟失或刪除,會尋找另一父節(jié)點建立連接。
優(yōu)選的,通信節(jié)點根據(jù)各路分岔路徑的長度的平均值,尋找另一父節(jié)點建立連接,使新形成的分岔路徑的長度與其它分岔路徑的長度平均,分岔路徑的長度指該路分岔路徑包含的通信節(jié)點的數(shù)量。這樣可保持各路分岔路徑的長度平均,有助于保持各節(jié)點間的均衡。
其中,在各通信節(jié)點中保存了整個樹狀網(wǎng)絡(luò)的拓撲結(jié)構(gòu)信息,包括該通信節(jié)點的前驅(qū)節(jié)點列表信息,所述前驅(qū)節(jié)點列表信息中保存了其父節(jié)點、父節(jié)點的前驅(qū)節(jié)點以及更上級各節(jié)點的信息,
通信節(jié)點在檢測到與父節(jié)點斷開連接時,在保存的前驅(qū)節(jié)點列表信息中刪除該父節(jié)點的信息;并在與另一父節(jié)點建立連接時,將所述另一父節(jié)點的信息添加到前驅(qū)節(jié)點列表信息中。
本實施例中,所述通信節(jié)點在檢測到子節(jié)點與自身斷開連接時,可尋找另一子節(jié)點建立連接。優(yōu)選為,根據(jù)各路分岔路徑的長度的平均值,尋找另一子節(jié)點建立連接,使新形成的分岔路徑的長度與其它分岔路徑的長度平均。例如,通信節(jié)點在檢測到子節(jié)點與自身斷開連接時,若該節(jié)點所在路徑的長度較短,可尋找某個長路徑的葉子節(jié)點移動連接到此節(jié)點下。
其中,在各通信節(jié)點中保存了整個樹狀網(wǎng)絡(luò)的拓撲結(jié)構(gòu)信息,包括該通信節(jié)點的后繼節(jié)點列表信息,所述后繼節(jié)點列表信息中保存了其以下各級節(jié)點的信息。所述通信節(jié)點在檢測到子節(jié)點與自身斷開連接時,在保存的后繼節(jié)點列表信息中刪除該子節(jié)點的信息;并在與另一子節(jié)點建立連接時,將所述另一子節(jié)點的信息添加到后繼節(jié)點列表信息中。
相應(yīng)的,本發(fā)明實施例還提供一種服務(wù)器集群監(jiān)控系統(tǒng),包括:
對應(yīng)集群中每一服務(wù)器設(shè)置的通信節(jié)點,用于從服務(wù)器的監(jiān)控模塊獲取監(jiān)控得到的該服務(wù)器的信息數(shù)據(jù);
各所述通信節(jié)點以分岔樹狀形式連接,在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲得的信息數(shù)據(jù)傳送給上一級父節(jié)點;
其中,所述通信節(jié)點將待傳輸?shù)臄?shù)據(jù)包依次編號進行傳送,作為接收方的通信節(jié)點在成功接收到每一數(shù)據(jù)包時向發(fā)送方通信節(jié)點返回相應(yīng)的確認信息,且發(fā)送方通信節(jié)點將沒有接收到確認信息的數(shù)據(jù)包重新發(fā)送。
可以看出,本實施例服務(wù)器集群監(jiān)控系統(tǒng),對應(yīng)集群中每一服務(wù)器設(shè)置通信節(jié)點,各通信節(jié)點以分岔樹狀形式連接;其中,每一通信節(jié)點從對應(yīng)服務(wù)器的監(jiān)控模塊獲取監(jiān)控到的本服務(wù)器的信息數(shù)據(jù),在每一路分岔路徑上,作為父節(jié)點的通信節(jié)點從與其連接的子節(jié)點收集信息數(shù)據(jù),并將獲取的信息數(shù)據(jù)傳送給上一級父節(jié)點;通信節(jié)點在傳輸數(shù)據(jù)中,將待傳輸?shù)臄?shù)據(jù)包依次編號進行傳輸,作為接收方的通信節(jié)點在成功接收到每一數(shù)據(jù)包時向發(fā)送方通信節(jié)點返回相應(yīng)的確認信息,且發(fā)送方通信節(jié)點將沒有接收到確認信息的數(shù)據(jù)包重新發(fā)送。
本發(fā)明服務(wù)器集群監(jiān)控系統(tǒng)中,將通信節(jié)點組織為分岔樹狀形式連接,并且通信節(jié)點之間以上述方式傳輸數(shù)據(jù),與現(xiàn)有技術(shù)相比,提高了監(jiān)控過程中節(jié)點之間通信的可靠性,降低了節(jié)點之間傳輸數(shù)據(jù)丟失的情況,可提高監(jiān)控準確度。
以上對本發(fā)明所提供的一種服務(wù)器集群監(jiān)控方法及系統(tǒng)進行了詳細介紹。本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權(quán)利要求的保護范圍內(nèi)。