亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)及方法

文檔序號:7773455閱讀:291來源:國知局
一種云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)及方法
【專利摘要】本發(fā)明公開了一種云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)及方法,克服目前靜態(tài)負(fù)載均衡技術(shù)不能根據(jù)負(fù)載的實時狀況動態(tài)調(diào)整的不足以及動態(tài)負(fù)載均衡技術(shù)需要額外占用系統(tǒng)資源的不足,云計算平臺在該方法中執(zhí)行如下處理:收到服務(wù)請求時,根據(jù)最近一個預(yù)設(shè)單位時間內(nèi)所述集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù),選擇一臺目標(biāo)服務(wù)器;將所述服務(wù)請求轉(zhuǎn)發(fā)給所述目標(biāo)服務(wù)器進(jìn)行處理。本申請的實施例有效提高了負(fù)載的均衡性。
【專利說明】一種云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及負(fù)載均衡處理技術(shù),尤其涉及一種云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)及方法。
【背景技術(shù)】
[0002]高效、準(zhǔn)確的負(fù)載均衡調(diào)度技術(shù)是云計算及大型應(yīng)用系統(tǒng)等實際運營的基礎(chǔ)。負(fù)載均衡可以使云計算平臺能穩(wěn)定、高效地運行,滿足高并發(fā)請求,在云計算及大型應(yīng)用系統(tǒng)中扮演著重要角色。在云計算領(lǐng)域,所謂負(fù)載均衡,主要是指能夠均衡、合理地將短時間內(nèi)大量到達(dá)的客戶端請求分配給后臺各服務(wù)器之上。
[0003]目前,云計算領(lǐng)域的負(fù)載均衡技術(shù)大致可分為二大類,即靜態(tài)負(fù)載均衡技術(shù)和動態(tài)負(fù)載均衡技術(shù)。
[0004]靜態(tài)負(fù)載均衡技術(shù)采用的是預(yù)先設(shè)定策略來執(zhí)行用戶請求分配的一種負(fù)載均衡技術(shù)。這種技術(shù)的特點是實現(xiàn)簡單,但在分配策略中,不考慮后臺具體服務(wù)器的實時負(fù)載狀況,所以對于負(fù)載變化范圍較小的系統(tǒng)均衡效果較好。但在應(yīng)用負(fù)載變化范圍較大情況下,靜態(tài)負(fù)載技術(shù)的均衡效果并不是很理想。
[0005]動態(tài)負(fù)載均衡技術(shù)可以根據(jù)分析及反饋系統(tǒng)中各服務(wù)器的實時運行情況,把客戶端請求均勻分配給各具體服務(wù)器。動態(tài)負(fù)載均衡技術(shù)需要周期性、不間斷地收集并分析各服務(wù)器的實時負(fù)載,需占用額外的系統(tǒng)資源。
[0006]對于負(fù)載均衡,目前還沒有適用于所有情況的通用解決方案,需要根據(jù)系統(tǒng)的實際部署情況具體配置。
[0007]負(fù)載均衡可以通過硬件實現(xiàn),也可以通過軟件實現(xiàn)。采用硬件實現(xiàn)的優(yōu)點是性能高,有專業(yè)技術(shù)團(tuán)隊進(jìn)行服務(wù)維護(hù),缺點是費用高,對于一般的網(wǎng)絡(luò)服務(wù)性價比不高。采用軟件實現(xiàn)的優(yōu)點是成本小。
[0008]不管是硬件實現(xiàn)還是軟件實現(xiàn),負(fù)載均衡的核心部分之一是調(diào)度算法,即根據(jù)服務(wù)器的負(fù)載情況,將任務(wù)均衡調(diào)度到各個服務(wù)器,因此調(diào)度算法的好壞對負(fù)載均衡性能的影響很大。
[0009]目前調(diào)度算法有如下幾類:(一)簡單輪詢,這個是負(fù)載均衡中最基本的調(diào)度算法;(二)根據(jù)權(quán)重進(jìn)行調(diào)度;(三)根據(jù)連接數(shù)調(diào)度,最少連接者先處理;(四)根據(jù)請求源IP地址進(jìn)行調(diào)度??梢院蚳ash算法結(jié)合,提高調(diào)度的均衡性;(五)根據(jù)請求的URI進(jìn)行調(diào)度;(六)根據(jù)請求的URI參數(shù)進(jìn)行調(diào)度;(七)根據(jù)HTTP請求頭進(jìn)行調(diào)度;(A)根據(jù)cookie進(jìn)行調(diào)度,可以和hash算法結(jié)合,提高調(diào)度的均衡性。
[0010]這些算法的特點是根據(jù)客戶端的服務(wù)請求進(jìn)行調(diào)度,基本上屬于靜態(tài)調(diào)度,沒有根據(jù)服務(wù)器的運行情況對算法進(jìn)行動態(tài)調(diào)整。動態(tài)負(fù)載均衡技術(shù),由于會消耗服務(wù)器資源,需要根據(jù)特定應(yīng)用選用。

【發(fā)明內(nèi)容】
[0011]本發(fā)明所要解決的技術(shù)問題是克服目前靜態(tài)負(fù)載均衡技術(shù)不能根據(jù)負(fù)載的實時狀況動態(tài)調(diào)整的不足以及動態(tài)負(fù)載均衡技術(shù)需要額外占用系統(tǒng)資源的不足。
[0012]為了解決上述技術(shù)問題,本申請的實施例首先提供了一種云計算平臺服務(wù)器負(fù)載均衡方法,用于對云計算平臺服務(wù)器集群中的各服務(wù)器的負(fù)載進(jìn)行均衡處理,所述云計算平臺在該方法中執(zhí)行如下處理:
[0013]收到服務(wù)請求時,根據(jù)最近一個預(yù)設(shè)單位時間內(nèi)所述集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù),選擇一臺目標(biāo)服務(wù)器;
[0014]將所述服務(wù)請求轉(zhuǎn)發(fā)給所述目標(biāo)服務(wù)器進(jìn)行處理。
[0015]優(yōu)選地,根據(jù)最近一個預(yù)設(shè)單位時間內(nèi)所述集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù),選擇一臺目標(biāo)服務(wù)器,包括:
[0016]判斷最近一個預(yù)設(shè)單位時間內(nèi)是否有服務(wù)器已處理及正處理的請求數(shù)為零,是則從已處理及正處理的請求數(shù)為零的服務(wù)器中選擇一臺服務(wù)器作為所述目標(biāo)服務(wù)器,否則根據(jù)每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,確定所述目標(biāo)服務(wù)器。
[0017]優(yōu)選地,根據(jù)每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,確定所述目標(biāo)服務(wù)器,包括:
[0018]若所述集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值相等,則隨機(jī)選擇一臺服務(wù)器作為所述目標(biāo)服務(wù)器;否則選擇所述比值從大到小排列時第二位所對應(yīng)的服務(wù)器作為所述目標(biāo)服務(wù)器。
[0019]優(yōu)選地,該方法包括:
[0020]將所述目標(biāo)服務(wù)器已處理及正處理的請求數(shù)加一。
[0021 ] 優(yōu)選地,該方法包括:
[0022]根據(jù)一日志配置文件及所述目標(biāo)服務(wù)器處理所述服務(wù)請求的狀態(tài)信息生成日志數(shù)據(jù);
[0023]對所述日志數(shù)據(jù)進(jìn)行過濾;
[0024]根據(jù)過濾后保留的日志數(shù)據(jù)將所述目標(biāo)服務(wù)器產(chǎn)生的日志數(shù)加一。
[0025]本申請的實施例還提供了一種云計算平臺服務(wù)器負(fù)載均衡系統(tǒng),用于對云計算平臺服務(wù)器集群中的各服務(wù)器的負(fù)載進(jìn)行均衡處理,該系統(tǒng)包括:
[0026]負(fù)載均衡器,設(shè)置為接收服務(wù)請求,并將所述服務(wù)請求轉(zhuǎn)發(fā)給一目標(biāo)服務(wù)器進(jìn)行處理;
[0027]調(diào)度控制器,設(shè)置為根據(jù)最近一個預(yù)設(shè)單位時間內(nèi)所述集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù),選擇所述目標(biāo)服務(wù)器。
[0028]優(yōu)選地,該調(diào)度控制器包括:
[0029]判斷模塊,設(shè)置為判斷最近一個預(yù)設(shè)單位時間內(nèi)是否有服務(wù)器已處理及正處理的請求數(shù)為零;
[0030]選擇模塊,設(shè)置為所述判斷模塊判斷出最近一個預(yù)設(shè)單位時間內(nèi)有服務(wù)器已處理及正處理的請求數(shù)為零時,從已處理及正處理的請求數(shù)為零的服務(wù)器中選擇一臺服務(wù)器作為所述目標(biāo)服務(wù)器;否則根據(jù)每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,確定所述目標(biāo)服務(wù)器。[0031 ] 優(yōu)選地,該選擇模塊包括:
[0032]判斷子模塊,設(shè)置為判斷所述集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值是否相等;
[0033]選擇子模塊,設(shè)置為所述判斷子模塊判斷出所述集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值相等時,隨機(jī)選擇一臺服務(wù)器作為所述目標(biāo)服務(wù)器;否則選擇所述比值從大到小排列時第二位所對應(yīng)的服務(wù)器作為所述目標(biāo)服務(wù)器。
[0034]優(yōu)選地,所述負(fù)載均衡器設(shè)置為將所述目標(biāo)服務(wù)器已處理及正處理的請求數(shù)加
O
[0035]優(yōu)選地,該系統(tǒng)包括:
[0036]日志生成器,設(shè)置為根據(jù)一日志配置文件及所述目標(biāo)服務(wù)器處理所述服務(wù)請求的狀態(tài)信息生成日志數(shù)據(jù);
[0037]日志過濾器,設(shè)置為對所述日志數(shù)據(jù)進(jìn)行過濾;
[0038]日志轉(zhuǎn)換器,設(shè)置為根據(jù)過濾后保留的日志數(shù)據(jù)將所述目標(biāo)服務(wù)器產(chǎn)生的日志數(shù)加一。
[0039]與現(xiàn)有技術(shù)相比,本發(fā)明利用了應(yīng)用系統(tǒng)中已有的日志框架,不會額外占用服務(wù)器資源,且能動態(tài)地將服務(wù)器的運行信息進(jìn)行反饋,有效提高了負(fù)載的均衡性。本申請的實施例不需要在系統(tǒng)中植入新的執(zhí)行代碼,因此不會增加應(yīng)用系統(tǒng)的復(fù)雜度。
[0040]本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了`解。本發(fā)明的目的和其他優(yōu)點可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。
【專利附圖】

【附圖說明】
[0041]附圖用來提供對本發(fā)明技術(shù)方案的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本申請的實施例一起用于解釋本發(fā)明的技術(shù)方案,并不構(gòu)成對本發(fā)明技術(shù)方案的限制。
[0042]圖1為本申請實施例的云計算平臺服務(wù)器負(fù)載均衡方法的流程示意圖。
[0043]圖2為本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)的構(gòu)造示意圖。
[0044]圖3為本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)中調(diào)度控制器的構(gòu)造示意圖。
【具體實施方式】
[0045]以下將結(jié)合附圖及實施例來詳細(xì)說明本發(fā)明的實施方式,借此對本發(fā)明如何應(yīng)用技術(shù)手段來解決技術(shù)問題,并達(dá)成技術(shù)效果的實現(xiàn)過程能充分理解并據(jù)以實施。本申請實施例以及實施例中的各個特征在不相沖突前提下的相互結(jié)合,均在本發(fā)明的保護(hù)范圍之內(nèi)。
[0046]另外,在附圖的流程圖示出的步驟可以在諸如一組計算機(jī)可執(zhí)行指令的計算機(jī)系統(tǒng)中執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
[0047]本申請實施例的云計算平臺服務(wù)器負(fù)載均衡方法,主要用于對云計算平臺服務(wù)器集群中的各服務(wù)器的負(fù)載進(jìn)行均衡處理。如圖1所示,本申請實施例的云計算平臺服務(wù)器負(fù)載均衡方法,主要包括如下內(nèi)容。
[0048]步驟S110,云計算平臺收到服務(wù)請求時,根據(jù)調(diào)度歷史信息選擇一臺目標(biāo)服務(wù)器。其中的調(diào)度歷史信息,包括最近一個預(yù)設(shè)單位時間內(nèi)每臺服務(wù)器被分配的請求數(shù)以及產(chǎn)生的日志數(shù)。其中最近一個預(yù)設(shè)單位時間內(nèi)一臺服務(wù)器被分配的請求數(shù),包括該預(yù)設(shè)單位時間內(nèi)該臺服務(wù)器已經(jīng)處理的請求數(shù)及正處理的請求數(shù)。在最近一個預(yù)設(shè)單位時間內(nèi)每臺服務(wù)器所產(chǎn)生的日志數(shù)的多少,表示了在該預(yù)設(shè)單位時間內(nèi)每臺服務(wù)器負(fù)載強(qiáng)度。在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)多,表明在該預(yù)設(shè)單位時間內(nèi)服務(wù)器負(fù)載較重;在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志較少,表明在該預(yù)設(shè)單位時間內(nèi)服務(wù)器負(fù)載較輕。本申請的實施例,通過設(shè)置在云計算平臺中的一個負(fù)載均衡器來接收該服務(wù)請求。
[0049]步驟S120,云計算平臺將該服務(wù)請求轉(zhuǎn)發(fā)給該目標(biāo)服務(wù)器進(jìn)行處理。對該目標(biāo)服務(wù)器處理該服務(wù)請求進(jìn)行記錄,以用于對下一條服務(wù)請求進(jìn)行調(diào)度。
[0050]上述對該目標(biāo)服務(wù)器處理該服務(wù)請求進(jìn)行記錄和更新,具體可以包括:
[0051](I)將目標(biāo)服務(wù)器已處理及正處理的請求數(shù)加一;
[0052](2)根據(jù)一日志文件及目標(biāo)服務(wù)器處理服務(wù)請求的狀態(tài)信息生成日志數(shù)據(jù),對日志數(shù)據(jù)進(jìn)行過濾,并根據(jù)過濾后得到保留的日志數(shù)據(jù)將目標(biāo)服務(wù)器產(chǎn)生的日志數(shù)加一。
[0053]本申請實施例的云計算平臺服務(wù)器負(fù)載均衡處理在初始化時,需要設(shè)定服務(wù)器上哪些模塊產(chǎn)生的日志需要進(jìn)行一定的處理,并設(shè)定日志級別、日志推送目標(biāo)以及預(yù)設(shè)時間單位T等。然后將集群中各服務(wù)器的請求處理初始值置為0,存入一調(diào)度信息庫中。
[0054]本申請的實施例中,在有一個新的服務(wù)請求到來時,云計算平臺中的一調(diào)度控制器根據(jù)調(diào)度信息庫存儲的一負(fù)載均衡器的調(diào)度歷史信息、日志轉(zhuǎn)換器的輸出信息等數(shù)據(jù),從服務(wù)器集群中選擇一臺目標(biāo)服務(wù)器,指示負(fù)載均衡器將該服務(wù)請求轉(zhuǎn)發(fā)給該目標(biāo)服務(wù)器。其中日志轉(zhuǎn)換器的輸出信息表示了該新的服務(wù)請求之前的一條服務(wù)請求是調(diào)度到哪臺服務(wù)器進(jìn)行處理的信息。
[0055]本申請的實施例中,根據(jù)最近一個預(yù)設(shè)單位時間內(nèi)集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù)選擇一臺目標(biāo)服務(wù)器,可以包括:
[0056]判斷最近一個預(yù)設(shè)單位時間內(nèi)是否有服務(wù)器已處理及正處理的請求數(shù)為零,是則從已處理及正處理的請求數(shù)為零的服務(wù)器中選擇一臺服務(wù)器作為目標(biāo)服務(wù)器,否則根據(jù)每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,來確定目標(biāo)服務(wù)器。其中,服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,表征了服務(wù)器的動態(tài)負(fù)載水平。該比值越大,表明該服務(wù)器負(fù)載越重。
[0057]最近一個預(yù)設(shè)單位時間內(nèi)有服務(wù)器已處理及正處理的請求數(shù)為零,說明最近一個預(yù)設(shè)單位時間內(nèi),集群中有服務(wù)器處理空閑狀態(tài),將新收到的服務(wù)請求分配給這樣的服務(wù)器,可以充分調(diào)動整個集群中的服務(wù)器,避免部分服務(wù)器承擔(dān)較多的服務(wù)請求而部分服務(wù)器完全空閑的情形出現(xiàn),因而實時且有效地優(yōu)化了服務(wù)請求的調(diào)度。
[0058]如果集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值相等,說明此時集群中每臺服務(wù)器的空閑程度均相等,則可以隨機(jī)選擇一臺服務(wù)器作為目標(biāo)服務(wù)器;否則從預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值較小的服務(wù)器中選擇一臺服務(wù)器作為目標(biāo)服務(wù)器,比如選擇預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值最小的服務(wù)器作為目標(biāo)服務(wù)器。本申請的實施例中,是選擇預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值從大到小排列時排第二位的比值(可以稱其為第二極大值)所對應(yīng)的服務(wù)器作為目標(biāo)服務(wù)器,可以在保證負(fù)載均衡前提下,盡可能提高云平臺上服務(wù)器動態(tài)伸縮能力,提高資源利用率,保證在部分服務(wù)器空閑情況下還可以進(jìn)行回收。如果排第二位的比值對應(yīng)有多臺服務(wù)器,則從中任選一臺作為目標(biāo)服務(wù)器即可。
[0059]目標(biāo)服務(wù)器處理該服務(wù)請求。目標(biāo)服務(wù)器在處理該服務(wù)請求時或者之后,調(diào)用一日志生成器,將處理該服務(wù)請求時的狀態(tài)信息傳給日志生成器。日志生成器根據(jù)該狀態(tài)信息、一日志適配器以及日志配置文件等生成日志數(shù)據(jù)。一日志過濾器按預(yù)設(shè)的過濾條件對日志生成器所生成的日志數(shù)據(jù)進(jìn)行過濾,過濾后的日志數(shù)據(jù)由一日志轉(zhuǎn)換器提取其中的時間、服務(wù)器來源等信息,轉(zhuǎn)換為適用于調(diào)度信息庫進(jìn)行存儲的統(tǒng)一格式,并輸出到調(diào)度信息庫進(jìn)行存儲。對日志數(shù)據(jù)進(jìn)行過濾,保留可以對后續(xù)服務(wù)請求調(diào)度提供參考的日志數(shù)據(jù),濾除對后續(xù)服務(wù)請求調(diào)度不具有指導(dǎo)意義的日志數(shù)據(jù)。日志數(shù)據(jù)經(jīng)過過濾和轉(zhuǎn)換,可以減少數(shù)據(jù)存儲量,提高存儲效率。
[0060]過濾后的日志數(shù)據(jù),由日志轉(zhuǎn)換器提取其中的時間、服務(wù)器來源等信息,然后寫入調(diào)度信息庫。調(diào)度信息庫中的請求數(shù)加I這個操作,是由服務(wù)請求調(diào)度控制器調(diào)度請求后,寫入調(diào)度信息庫。
[0061]本申請的實施例,適用于Log4j、SLF4J、Logback、Java Logging APIs等日志系統(tǒng)。
[0062]本申請的實施例屬于非侵入式設(shè)計方案,采用“推(push)”數(shù)據(jù)的方式,基于日志系統(tǒng)的日志輸出功能,將日志數(shù)據(jù)作為服務(wù)器運行性能的統(tǒng)計源,以及分發(fā)后續(xù)請求的調(diào)度反饋,沒有額外占用服務(wù)器資源,提高了負(fù)載均衡的實時性以及準(zhǔn)確性,保證了集群整體的處理效率。
[0063]如圖2所示,本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)主要包括負(fù)載均衡器以及調(diào)度控制器220等。
[0064]負(fù)載均衡器210,與調(diào)度控制器220相連,設(shè)置為接收外部的服務(wù)請求,并根據(jù)調(diào)度控制器220對該服務(wù)請求的調(diào)度,將該服務(wù)請求轉(zhuǎn)發(fā)到集群中的目標(biāo)服務(wù)器上。
[0065]調(diào)度控制器220,設(shè)置為根據(jù)最近一個預(yù)設(shè)單位時間內(nèi),服務(wù)器集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù),從中選擇一臺目標(biāo)服務(wù)器,以便負(fù)載均衡器210對該服務(wù)請求進(jìn)行調(diào)度。
[0066]如圖3所示,本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)中,該調(diào)度控制器220可以包括判斷模塊221以及選擇模塊222,其中:
[0067]判斷模塊221,設(shè)置為判斷最近一個預(yù)設(shè)單位時間內(nèi)是否有服務(wù)器已處理及正處理的請求數(shù)為零。
[0068]選擇模塊222,與判斷模塊221相連,設(shè)置為判斷模塊221判斷出最近一個預(yù)設(shè)單位時間內(nèi)有服務(wù)器已處理及正處理的請求數(shù)為零時,從已處理及正處理的請求數(shù)為零的服務(wù)器中選擇一臺服務(wù)器作為目標(biāo)服務(wù)器;否則根據(jù)每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,確定目標(biāo)服務(wù)器。
[0069]如圖3所示,上述選擇模塊222可以包括判斷子模塊222a及選擇子模塊222b,其中:[0070]判斷子模塊222a,與判斷模塊221相連,設(shè)置為在預(yù)設(shè)單位時間內(nèi)服務(wù)器被分配的請求數(shù)不為零時,判斷集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值是否相等。其中,在預(yù)設(shè)單位時間內(nèi)服務(wù)器被分配的請求數(shù),包括該預(yù)設(shè)單位時間內(nèi)服務(wù)器已處理的請求數(shù)及正處理的請求數(shù)。
[0071]選擇子模塊222b,與判斷子模塊222a相連,設(shè)置為判斷子模塊222a判斷出集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值相等時,隨機(jī)選擇一臺服務(wù)器作為目標(biāo)服務(wù)器;否則選擇第二極大值對應(yīng)的服務(wù)器作為目標(biāo)服務(wù)器。
[0072]本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng)中,負(fù)載均衡器210設(shè)置為將目標(biāo)服務(wù)器已處理及正處理的請求數(shù)加一。
[0073]如圖2所示,本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng),還可以包括一日志生成器230及一日志適配器240。其中,該日志生成器230設(shè)置為根據(jù)該目標(biāo)服務(wù)器處理該服務(wù)請求時的狀態(tài)信息、日志適配器240以及日志配置文件等生成日志數(shù)據(jù)。該日志適配器240設(shè)置指定日志生成器230所生成的日志數(shù)據(jù)的輸出介質(zhì)。
[0074]本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng),還可以包括一日志過濾器250,其設(shè)置為按預(yù)設(shè)的過濾條件對日志生成器230所生成的日志數(shù)據(jù)進(jìn)行過濾,保留可以對后續(xù)服務(wù)請求調(diào)度提供參考的日志數(shù)據(jù),濾除對后續(xù)服務(wù)請求調(diào)度不具有指導(dǎo)意義的日志數(shù)據(jù)。
[0075]本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng),還可以包括一日志轉(zhuǎn)換器260,其設(shè)置為將日志過濾器250過濾后的日志數(shù)據(jù)換為適用于進(jìn)行存儲的統(tǒng)一格式,并根據(jù)過濾后保留的日志數(shù)據(jù)將目標(biāo)服務(wù)器產(chǎn)生的日志數(shù)加一。
[0076]本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng),還可以包括一調(diào)度信息庫270,其設(shè)置為存儲負(fù)載均衡器210的調(diào)度歷史信息,及日志轉(zhuǎn)換器260的輸出信息,供調(diào)度控制器220在進(jìn)行負(fù)載均衡調(diào)度時使用。
[0077]本申請實施例的云計算平臺服務(wù)器負(fù)載均衡系統(tǒng),日志轉(zhuǎn)換器260從日志過濾器250過濾后的日志數(shù)據(jù)提取出時間、服務(wù)器來源等信息,轉(zhuǎn)換為適用于調(diào)度信息庫270進(jìn)行存儲的統(tǒng)一格式,并輸出到調(diào)度信息庫270進(jìn)行存儲。
[0078]本申請的實施例中,日志配置文件主要用于存在多個日志適配器240時,指定使用哪個日志適配器240,同時指定日志輸出級別、格式、日志適配器240中的相關(guān)參數(shù)值等。
[0079]本申請的實施例中,配置管理器280主要是用于對事先不能確定或變化頻繁的參數(shù)進(jìn)行管理,可以將這些事先不能確定或變化頻繁的參數(shù)存儲日志配置文件中,由配置管理器280統(tǒng)一進(jìn)行管理。這樣可以在系統(tǒng)正式運行后易于修改,也可以降低系統(tǒng)各個模塊的耦合度。比如,配置管理器280可以設(shè)定日志輸出的級別(日志共分為DEBUG,INFO, WARN,ERROR, FATAL等5個級別),及日志數(shù)據(jù)的推送目標(biāo)等。
[0080]本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本申請實施例所提供的系統(tǒng)的各組成部分,以及方法中的各步驟,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上??蛇x地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn)。從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0081]雖然本發(fā)明所揭露的實施方式如上,但所述的內(nèi)容僅為便于理解本發(fā)明而采用的實施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實施的形式及細(xì)節(jié)上進(jìn)行任何的修改與變化,但本發(fā)明的專利保護(hù)范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。
【權(quán)利要求】
1.一種云計算平臺服務(wù)器負(fù)載均衡方法,用于對云計算平臺服務(wù)器集群中的各服務(wù)器的負(fù)載進(jìn)行均衡處理,所述云計算平臺在該方法中執(zhí)行如下處理: 收到服務(wù)請求時,根據(jù)最近一個預(yù)設(shè)單位時間內(nèi)所述集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù),選擇一臺目標(biāo)服務(wù)器; 將所述服務(wù)請求轉(zhuǎn)發(fā)給所述目標(biāo)服務(wù)器進(jìn)行處理。
2.根據(jù)權(quán)利要求1所述的方法,其中,根據(jù)最近一個預(yù)設(shè)單位時間內(nèi)所述集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù),選擇一臺目標(biāo)服務(wù)器,包括: 判斷最近一個預(yù)設(shè)單位時間內(nèi)是否有服務(wù)器已處理及正處理的請求數(shù)為零,是則從已處理及正處理的請求數(shù)為零的服務(wù)器中選擇一臺服務(wù)器作為所述目標(biāo)服務(wù)器,否則根據(jù)每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,確定所述目標(biāo)服務(wù)器。
3.根據(jù)權(quán)利要求2所述的方法,其中,根據(jù)每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,確定所述目標(biāo)服務(wù)器,包括: 若所述集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值相等,則隨機(jī)選擇一臺服務(wù)器作為所述目標(biāo)服務(wù)器;否則選擇所述比值從大到小排列時第二位所對應(yīng)的服務(wù)器作為所述目標(biāo)服務(wù)器。
4.根據(jù)權(quán)利要求1所述的方法,其中,該方法包括: 將所述目標(biāo)服務(wù)器已處理及正處理的請求數(shù)加一。
5.根據(jù)權(quán)利要`求1所述的方法,其中,該方法包括: 根據(jù)一日志配置文件及所述目標(biāo)服務(wù)器處理所述服務(wù)請求的狀態(tài)信息生成日志數(shù)據(jù); 對所述日志數(shù)據(jù)進(jìn)行過濾; 根據(jù)過濾后保留的日志數(shù)據(jù)將所述目標(biāo)服務(wù)器產(chǎn)生的日志數(shù)加一。
6.一種云計算平臺服務(wù)器負(fù)載均衡系統(tǒng),用于對云計算平臺服務(wù)器集群中的各服務(wù)器的負(fù)載進(jìn)行均衡處理,該系統(tǒng)包括: 負(fù)載均衡器,設(shè)置為接收服務(wù)請求,并將所述服務(wù)請求轉(zhuǎn)發(fā)給一目標(biāo)服務(wù)器進(jìn)行處理; 調(diào)度控制器,設(shè)置為根據(jù)最近一個預(yù)設(shè)單位時間內(nèi)所述集群中每臺服務(wù)器已處理及正處理的請求數(shù)及產(chǎn)生的日志數(shù),選擇所述目標(biāo)服務(wù)器。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其中,該調(diào)度控制器包括: 判斷模塊,設(shè)置為判斷最近一個預(yù)設(shè)單位時間內(nèi)是否有服務(wù)器已處理及正處理的請求數(shù)為零; 選擇模塊,設(shè)置為所述判斷模塊判斷出最近一個預(yù)設(shè)單位時間內(nèi)有服務(wù)器已處理及正處理的請求數(shù)為零時,從已處理及正處理的請求數(shù)為零的服務(wù)器中選擇一臺服務(wù)器作為所述目標(biāo)服務(wù)器;否則根據(jù)每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值,確定所述目標(biāo)服務(wù)器。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其中,該選擇模塊包括: 判斷子模塊,設(shè)置為判斷所述集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值是否相等;選擇子模塊,設(shè)置為所述判斷子模塊判斷出所述集群中每臺服務(wù)器在該預(yù)設(shè)單位時間內(nèi)產(chǎn)生的日志數(shù)與已處理及正處理的請求數(shù)的比值相等時,隨機(jī)選擇一臺服務(wù)器作為所述目標(biāo)服務(wù)器;否則選擇所述比值從大到小排列時第二位所對應(yīng)的服務(wù)器作為所述目標(biāo)服務(wù)器。
9.根據(jù)權(quán)利要求6所述的系統(tǒng),其中: 所述負(fù)載均衡器設(shè)置為將所述目標(biāo)服務(wù)器已處理及正處理的請求數(shù)加一。
10.根據(jù)權(quán)利要求6所述的系統(tǒng),其中,該系統(tǒng)包括: 日志生成器,設(shè)置為根據(jù)一日志配置文件及所述目標(biāo)服務(wù)器處理所述服務(wù)請求的狀態(tài)信息生成日志數(shù)據(jù); 日志過濾器,設(shè)置為對所述日志數(shù)據(jù)進(jìn)行過濾; 日志轉(zhuǎn)換器,設(shè)置為根據(jù)過濾后保留的日志數(shù)據(jù)將所述目標(biāo)服務(wù)器產(chǎn)生的日志數(shù)加一。
【文檔編號】H04L29/08GK103516807SQ201310478864
【公開日】2014年1月15日 申請日期:2013年10月14日 優(yōu)先權(quán)日:2013年10月14日
【發(fā)明者】王少鋒, 張云勇, 劉明輝, 劉鏑 申請人:中國聯(lián)合網(wǎng)絡(luò)通信集團(tuán)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1