一種多功能服務(wù)器調(diào)度方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,尤其涉及一種多功能服務(wù)器調(diào)度方法。
【背景技術(shù)】
[0002]在一個服務(wù)器集群上,有很多不同功能的服務(wù)器,這些功能服務(wù)器各自獨立,處理自己的業(yè)務(wù),提供企業(yè)所需的全方位網(wǎng)絡(luò)服務(wù),包括:企業(yè)的電子郵件、企業(yè)網(wǎng)站、Web服務(wù)、FTP文件傳輸、文件共享、項目管理系統(tǒng)、網(wǎng)絡(luò)辦公系統(tǒng)等常見的互聯(lián)網(wǎng)服務(wù)需求,同時可與企業(yè)現(xiàn)有系統(tǒng)進行無縫整合,保證企業(yè)的投資及原有系統(tǒng)的運用。多種安全機制,用于解決網(wǎng)絡(luò)安全和網(wǎng)絡(luò)管理服務(wù)問題,保障企業(yè)上網(wǎng)安全及數(shù)據(jù)安全。為了增加這一類業(yè)務(wù)并行處理的能力,往往會采用多臺相同功能的服務(wù)器同時運算,這時就需要有一個資源調(diào)度的服務(wù)程序來將客戶端的請求均勻的分配到不同的機器上去。常見的服務(wù)器負載平衡方法為用戶手動選擇方法和DNS輪詢方式。這兩種方法可靠性低、負載分配不均衡,導(dǎo)致某幾臺服務(wù)器負荷很低,而另幾臺服務(wù)器負荷很高、處理緩慢、配置高的服務(wù)器分配到的請求少,而配置低的服務(wù)器分配的請求多,造成單個服務(wù)器壓力過重或者閑置的情況。
【發(fā)明內(nèi)容】
[0003]針對上述技術(shù)問題,本發(fā)明提供了一種多功能服務(wù)器調(diào)度方法,步驟包括:
[0004]I)將服務(wù)器按功能分成多個服務(wù)器組;
[0005]2)建立服務(wù)器組與客戶端業(yè)務(wù)對應(yīng)的索引表;
[0006]3)根據(jù)客戶端業(yè)務(wù),比對所述索引表選擇服務(wù)器組;
[0007]4)采用輪詢調(diào)度的方法,為客戶端確定與其業(yè)務(wù)相對應(yīng)的服務(wù)器組中的服務(wù)器。
[0008]優(yōu)選方案是:同組的服務(wù)器排成一個隊列。
[0009]優(yōu)選方案是:所述輪詢調(diào)度的方法步驟包括:
[0010]a)提取客戶端業(yè)務(wù)ID,然后在索引表中查找與該業(yè)務(wù)ID對應(yīng)的服務(wù)器組;
[0011]b)將該服務(wù)器組的服務(wù)器指針往后移一個單位后判斷所對應(yīng)的服務(wù)器組指針所指向服務(wù)器是否空閑,如果服務(wù)器空閑,返回客戶端“該服務(wù)器資源可用”;如果服務(wù)器忙碌,所述指針繼續(xù)后移,繼續(xù)判斷服務(wù)器是否空閑,如果到達所述隊列的隊尾仍無空閑服務(wù)器,則所述指針跳轉(zhuǎn)到所述隊列的隊頭,重新開始判斷服務(wù)器是否空閑,直到所述指針移動到指針最初指向的位置仍無空閑服務(wù)器,則返回客戶端“無可用服務(wù)器資源”。
[0012]優(yōu)選方案是:所述服務(wù)器均有一個可使用的標識。
[0013]優(yōu)選方案是:客戶端訪問服務(wù)器組的最初位置為客戶端上次訪問服務(wù)器組指針指向位置的下一個位置。
[0014]優(yōu)選方案是:所述服務(wù)器按功能分成多個組,每組執(zhí)行相同的功能。
[0015]本發(fā)明將服務(wù)器按照功能進行分組,并建立索引,能夠讓客戶端請求快速定位服務(wù)器資源,同一組服務(wù)器采用輪詢調(diào)度算法,能夠讓客戶端請求均勻的分配到不同的機器上,避免了單個服務(wù)器壓力過重或者閑置的可能。
【附圖說明】
[0016]圖1為本發(fā)明的工作流程示意圖。
【具體實施方式】
[0017]在一個服務(wù)器集群上,有很多不同功能的服務(wù)器,這些功能服務(wù)器各自獨立,處理自己的業(yè)務(wù),為了增加這一類業(yè)務(wù)并行處理的能力,往往會采用多臺相同功能的服務(wù)器同時運算,這時就需要有一個資源調(diào)度的服務(wù)程序來將客戶端的請求均勻的分配到不同的機器上去。常見的服務(wù)器負載平衡方法為:
[0018]I)用戶手動選擇方法
[0019]這是一種較為古老的方式,通過在主站首頁入口提供不同線路、不同服務(wù)器連接的方式,來實現(xiàn)負載均衡。
[0020]2) DNS輪詢方式
[0021]大多域名注冊商都支持多條A記錄的解析,這就是DNS輪詢,DNS服務(wù)器將解析請求按照A記錄的順序,逐一分配到不同的IP上,這樣就完成了簡單的負載均衡。雖然DNS輪詢的成本非常低,但是,DNS負載均衡存在兩個明顯的缺點。
[0022]a.可靠性低
[0023]假設(shè)一個域名DNS輪詢多臺服務(wù)器,如果其中的一臺服務(wù)器發(fā)生故障,那么所有的訪問該服務(wù)器的請求將不會有所回應(yīng),這是任何人都不愿意看到的。即使從DNS中去掉該服務(wù)器的IP,但在Internet上,各地區(qū)電信、網(wǎng)通等寬帶接入商將眾多的DNS存放在緩存中,以節(jié)省訪問時間,DNS記錄全部生效需要幾個小時,甚至更久。所以,盡管DNS輪流在一定程度上解決了負載均衡問題,但是卻存在可靠性不高的缺點。
[0024]b.負載分配不均衡
[0025]DNS負載均衡采用的是最簡單的輪詢負載算法,不能區(qū)分服務(wù)器的差異,不能反映服務(wù)器的當前運行狀態(tài),不能做到為性能較好的服務(wù)器多分配請求,甚至?xí)霈F(xiàn)客戶請求集中在某一臺服務(wù)器上的情況DNS服務(wù)器是按照一定的層次結(jié)構(gòu)組織的,本地DNS服務(wù)器會緩沖已解析的域名到IP地址的映射,這會導(dǎo)致使用該DNS服務(wù)器的用戶在一段時間內(nèi)訪問的是同一臺Web服務(wù)器,導(dǎo)致Web服務(wù)器間的負載不均衡。此外,用戶本地計算機也會緩存已解析的域名到IP地址的映射。當多個用戶計算機都緩存了某域名到IP地址的映射時,而這些用戶繼續(xù)訪問該域名下的網(wǎng)頁,這是也會導(dǎo)致不同Web服務(wù)器件的負載分配不均衡。負載不均衡可能導(dǎo)致的后果有:某幾臺服務(wù)器負荷很低,而另幾臺服務(wù)器負荷很高、處理緩慢;配置高的服務(wù)器分配到的請求少,而配置麴的服務(wù)器分配的請求多。因此,DNS輪詢方式僅適用于一些可靠性要求不高的服務(wù)器集群,例如:圖片服務(wù)器群、純靜態(tài)網(wǎng)頁服務(wù)器集群等。
[0026]本發(fā)明采用了輪詢調(diào)度方法,輪詢調(diào)度是通信中信道調(diào)度的一種策略,該調(diào)度策略使用戶輪流使用共享資源,不會考慮瞬時信道條件。從相同數(shù)量無線資源(相同調(diào)度時間段)被分配給每條通信鏈路的角度講,輪詢調(diào)度被視為公平調(diào)度。
[0027]下面結(jié)合圖1對本發(fā)明進行詳細描述:
[0028]本發(fā)明提供了一種多功能服務(wù)器調(diào)度方法,步驟包括:
[0029]I)將服務(wù)器按功能分成多個服務(wù)器組,所述服務(wù)器按功能分成多個組,每組執(zhí)行相同的功能;
[0030]2)建立服務(wù)器組與客戶端業(yè)務(wù)對應(yīng)的索引表,提取客戶端業(yè)務(wù)ID,然后在索引表中查找與該業(yè)務(wù)ID對應(yīng)的服務(wù)器組;
[0031]3)根據(jù)客戶端業(yè)務(wù),比對所述索引表選擇服務(wù)器組;
[0032]4)采用輪詢調(diào)度的方法,為客戶端確定與其業(yè)務(wù)相對應(yīng)的服務(wù)器組中的服務(wù)器,同組的服務(wù)器排成一個隊列;所述輪詢調(diào)度的方法步驟包括:將該服務(wù)器組的服務(wù)器指針往后移一個單位后判斷所對應(yīng)的服務(wù)器組指針所指向服務(wù)器是否空閑,如果服務(wù)器空閑,返回客戶端“該服務(wù)器資源可用”;如果服務(wù)器忙碌,所述指針繼續(xù)后移,繼續(xù)判斷服務(wù)器是否空閑,如果到達所述隊列的隊尾仍無空閑服務(wù)器,則所述指針跳轉(zhuǎn)到所述隊列的隊頭,重新開始判斷服務(wù)器是否空閑,直到所述指針移動到指針最初指向的位置仍無空閑服務(wù)器,則返回客戶端“無可用服務(wù)器資源”。所述服務(wù)器均有一個可使用的標識??蛻舳嗽L問服務(wù)器組的最初位置為客戶端上次訪問服務(wù)器組指針指向位置的下一個位置。
[0033]盡管本發(fā)明的實施方案已公開如上,但其并不僅僅限于說明書和實施方式中所列運用,它完全可以被適用于各種適合本發(fā)明的領(lǐng)域,對于熟悉本領(lǐng)域的人員而言,可容易地實現(xiàn)另外的修改,因此在不背離權(quán)利要求及等同范圍所限定的一般概念下,本發(fā)明并不限于特定的細節(jié)和這里示出與描述的圖例。
【主權(quán)項】
1.一種多功能服務(wù)器調(diào)度方法,其特征在于,包括以下步驟: 1)將服務(wù)器按功能分成多個服務(wù)器組; 2)建立服務(wù)器組與客戶端業(yè)務(wù)對應(yīng)的索引表; 3)根據(jù)客戶端業(yè)務(wù),比對所述索引表選擇服務(wù)器組; 4)采用輪詢調(diào)度的方法,為客戶端確定與其業(yè)務(wù)相對應(yīng)的服務(wù)器組中的服務(wù)器。
2.根據(jù)權(quán)利要求1所述的服務(wù)器調(diào)度方法,其特征在于,同組的服務(wù)器排成一個隊列。
3.根據(jù)權(quán)利要求2所述的服務(wù)器調(diào)度方法,其特征在于,所述輪詢調(diào)度的方法步驟包括: a)提取客戶端業(yè)務(wù)ID,然后在索引表中查找與該業(yè)務(wù)ID對應(yīng)的服務(wù)器組; b)將該服務(wù)器組的服務(wù)器指針往后移一個單位后判斷所對應(yīng)的服務(wù)器組指針所指向服務(wù)器是否空閑,如果服務(wù)器空閑,返回客戶端“該服務(wù)器資源可用”;如果服務(wù)器忙碌,所述指針繼續(xù)后移,繼續(xù)判斷服務(wù)器是否空閑,如果到達所述隊列的隊尾仍無空閑服務(wù)器,則所述指針跳轉(zhuǎn)到所述隊列的隊頭,重新開始判斷服務(wù)器是否空閑,直到所述指針移動到指針最初指向的位置仍無空閑服務(wù)器,則返回客戶端“無可用服務(wù)器資源”。
4.根據(jù)權(quán)利要求1所述的服務(wù)器調(diào)度方法,其特征在于,所述服務(wù)器均有一個可使用的標識。
5.根據(jù)權(quán)利要求4所述的服務(wù)器調(diào)度方法,其特征在于,客戶端訪問服務(wù)器組的最初位置為客戶端上次訪問服務(wù)器組指針指向位置的下一個位置。
6.根據(jù)權(quán)利要求1所述的服務(wù)器調(diào)度方法,其特征在于,所述服務(wù)器按功能分成多個組,每組執(zhí)行相同的功能。
【專利摘要】本發(fā)明公開了一種多功能服務(wù)器調(diào)度方法,包括以下步驟:1)將服務(wù)器按功能分成多個服務(wù)器組;2)建立服務(wù)器組與客戶端業(yè)務(wù)對應(yīng)的索引表;3)根據(jù)客戶端業(yè)務(wù),比對所述索引表選擇服務(wù)器組;4)采用輪詢調(diào)度的方法,為客戶端確定與其業(yè)務(wù)相對應(yīng)的服務(wù)器組中的服務(wù)器。本發(fā)明將服務(wù)器按照功能進行分組,并建立索引,能夠讓客戶端請求快速定位服務(wù)器資源,同一組服務(wù)器采用輪詢調(diào)度算法,能夠讓客戶端請求均勻的分配到不同的機器上,避免了單個服務(wù)器壓力過重或者閑置的可能。
【IPC分類】H04L29-08, H04L12-863
【公開號】CN104852964
【申請?zhí)枴緾N201510169232
【發(fā)明人】徐志剛, 張立, 楊愛民
【申請人】北京金和軟件股份有限公司
【公開日】2015年8月19日
【申請日】2015年4月10日