專利名稱:基于動態(tài)服務響應時間向服務器分配流量的系統(tǒng)和方法
技術領域:
本發(fā)明總的來說涉及數(shù)據(jù)通信,更具體地,涉及基于服務處理參數(shù)將應用程序流量分配給服務器的方法和系統(tǒng)。
背景技術:
web服務和云計算正以前所未有的速度部署。每天在數(shù)據(jù)中心卸載和安裝新服務器。web服務和企業(yè)計算的需要來自四面八方。面向消費者的服務包括智能手機應用程序、諸如基于位置的服務移動電話應用程序、逐向導航服務、諸如Kindle 的電子書服務、 諸如^uTube 或者Hulu 的視頻應用程序、諸如Pandora 或者iTimes 的音樂應用程序、 諸如Netf lix 的互聯(lián)網(wǎng)電視服務以及許多其他快速增長的消費者web服務。在企業(yè)方面, 面向消費者的服務包括諸如Google 文檔、Microsoft Office Live和Shar印oint 軟件的基于云計算的服務、Salesforce. com 的在線軟件服務、遠程出席和web會議服務以及許多其他企業(yè)云計算服務。因此,部署越來越多的服務器以適應日益增長的計算需求。傳統(tǒng)上,這些服務器由諸如應用交換控制器或者服務器負載均衡器(ADC/SLB)的服務網(wǎng)關管理,該服務網(wǎng)關通常為在固定模塊中或者在機箱中的網(wǎng)絡設備,或者運行在同質(zhì)化服務器ADC/SLB中基于進入服務請求管理服務器的應用程序流量的軟件模塊。在服務器之間分配流量的常用方法是基于應用程序(HTTP、FTP、HTTPS等)、諸如URL的服務地址、基于網(wǎng)絡接口或者主機IP地址的優(yōu)先級分配服務請求。在假設服務器完全用來處理服務請求的情況下,ADC/SLB可將服務請求分配給服務器。通常,滿載服務器不會很好地處理服務請求。事實上,當服務器為忙時,大部分服務請求遭受到延遲或者沒有服務可用。通常較佳做法是不將服務請求進一步分配給忙服務器。當前ADC/SLB允許網(wǎng)絡管理員設定最大服務會話容量,使得ADC/SLB不發(fā)送超過最大容量的服務請求給該服務器。然而,對服務器的靜態(tài)配置限制不能充分利用服務器的容量,并且并不是所有服務請求都從服務器要求相同處理。有利的是,ADC/SLB基于來自服務器的服務響應時間判定服務器是否為忙,使得ADC/SLB可減少發(fā)送更多服務請求給服務器。因此,需要一種基于動態(tài)服務響應時間保護服務器過載的ADC/SLB的系統(tǒng)和方法。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個實施方式,一種處理從主機接收的服務請求的方法,包括(a) 在服務網(wǎng)關與服務器之間的服務會話期間將服務請求從服務網(wǎng)關轉送到服務器;(b)由服務網(wǎng)關判定服務會話的服務請求時間;(c)由服務網(wǎng)關接收來自服務器的服務響應;(d)由服務網(wǎng)關判定服務響應時間;(e)由服務網(wǎng)關從服務請求時間和服務響應時間計算服務請求的服務處理時間;(f)比較服務處理時間與預期服務處理時間;以及(g)響應于該比較, 更新服務器的服務器示忙器。
在本發(fā)明的一個方面,該更新(g)包括(gl)響應于判定服務處理時間超過預期服務處理時間,由服務網(wǎng)關更新服務器示忙器以指示服務器為忙;以及(g》響應于判定服務處理時間不超過預期服務處理時間,由服務網(wǎng)關更新服務器示忙器以指示服務器為不忙。在本發(fā)明的一個方面,該計算(e)包括(el)由服務網(wǎng)關計算服務請求的服務處理時間,作為服務請求時間與服務響應時間之間的持續(xù)時間。在本發(fā)明的一個方面,服務響應包括錯誤指示,其中,如果該錯誤指示指示錯誤, 那么服務網(wǎng)關不計算服務處理時間。在本發(fā)明的一個方面,該比較(f)包括(fl)由服務網(wǎng)關根據(jù)服務請求或者服務器的服務屬性配置預期服務處理時間。在本發(fā)明的一個方面,預期服務處理時間與服務屬性相關聯(lián)并且存儲在數(shù)據(jù)存儲器中,其中,該配置(fl)包括(fii)由服務網(wǎng)關比較服務請求或者服務器與數(shù)據(jù)存儲器中的服務屬性;以及(flii)如果服務請求或者服務器匹配數(shù)據(jù)存儲器中的服務屬性,那么檢索與匹配服務屬性相關聯(lián)的預期服務處理時間。在本發(fā)明的一個方面,該比較(f)還包括( )基于安全網(wǎng)關與服務器之間的先前服務會話的服務處理時間計算調(diào)整預期服務處理時間。在本發(fā)明的一個方面,該轉送(a)包括(al)由服務網(wǎng)關從主機接收服務請求; (a2)由服務網(wǎng)關檢查服務器的服務器示忙器;(a3)響應于判定服務器示忙器指示服務器為忙,由服務網(wǎng)關將服務請求放置在服務請求緩沖器中;以及(a4)響應于判定服務器示忙器指示服務器為不忙,在服務網(wǎng)關與服務器之間的服務會話期間將服務請求從服務網(wǎng)關轉送到服務器。在本發(fā)明的一個方面,該轉送(a4)包括(a4i)由服務網(wǎng)關檢查服務請求緩沖器是否為空;(a4ii)響應于判定服務請求緩沖器為空,在服務網(wǎng)關與服務器之間的服務會話期間將服務請求從服務網(wǎng)關轉送到服務器;以及(a4iii)響應于判定服務請求緩沖器不為空,由服務網(wǎng)關將服務請求放置在服務請求緩沖器中。在本發(fā)明的一個方面,該放置(M)包括(a3i)由服務網(wǎng)關判定在該服務網(wǎng)關處的計時器是否已經(jīng)過期;以及(a3ii)響應于判定該計時器已經(jīng)過期,在服務網(wǎng)關與服務器之間的服務會話期間將服務請求從服務網(wǎng)關轉送到服務器。在本發(fā)明的一個方面,服務請求與優(yōu)先級相關聯(lián),其中,服務請求緩沖器被配置為存儲與優(yōu)先級相關聯(lián)的服務請求,其中,該放置(a!3)包括(a3i)由服務網(wǎng)關將服務請求放置在服務請求緩沖器中;以及(a3ii)根據(jù)相關聯(lián)優(yōu)先級將服務請求緩沖器中的服務請求從服務網(wǎng)關轉送到服務器。本文中還描述和要求對應于上述方法的系統(tǒng)和計算機程序產(chǎn)品。
圖1示出服務網(wǎng)關與服務器之間的服務會話;圖2示出由服務網(wǎng)關處理服務請求的方法的實施方式;圖3示出判定服務器是否為忙的方法的實施方式;圖4示出基于服務器示忙器處理服務請求的方法的實施方式;CN 102546590 A圖5示出在服務網(wǎng)關更新服務器示忙器之后處理服務請求的方法的實施方式;圖6示出基于服務優(yōu)先級處理服務請求的方法的實施方式;圖7為示出由服務網(wǎng)關處理服務請求的方法的實施方式的流程圖;圖8為示出基于服務器示忙器處理服務請求的方法的實施方式的流程圖。
具體實施例方式本發(fā)明可采用完全硬件實施方式、完全軟件實施方式或者含有硬件和軟件元件兩者的實施方式的形式。在優(yōu)選實施方式中,本發(fā)明以軟件實施,其包括但不限于固件、常駐軟件等。此外,本發(fā)明可采用從提供由計算機或者任何指令執(zhí)行系統(tǒng)使用或者連同計算機或者任何指令執(zhí)行系統(tǒng)使用的程序碼的計算機可使用或者計算機可讀介質(zhì)可存取的計算機程序產(chǎn)品的形式。為了描述目的,計算機可使用或者計算機可讀介質(zhì)可為可含有、存儲、 傳送、傳播或者傳輸由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者連同指令執(zhí)行系統(tǒng)、裝置或者器件使用的eh程序的任何裝置。該介質(zhì)可為電子、磁性、光學、電磁、紅外或者半導體系統(tǒng)(或者裝置或器件)或者傳播介質(zhì)。計算機可讀介質(zhì)的實例包括半導體或者固態(tài)存儲器、磁帶、可移除計算機軟盤、 隨機存取存儲器(RAM)、只讀存儲器(ROM)、硬磁盤和光盤。光盤的當前實例包括只讀存儲器光盤(CD-ROM)、讀/寫光盤(CD-R/W)和DVD。一種適合存儲及/或執(zhí)行程序碼的數(shù)據(jù)處理系統(tǒng)將包括至少一個處理器,通過系統(tǒng)總線直接或者間接地耦合至存儲器元件。該存儲器元件可包括在程序碼的實際執(zhí)行期間所利用的本地存儲器、大容量存儲器以及緩沖存儲器,該緩沖存儲器提供暫時存儲至少一些程序碼以減少在執(zhí)行期間必須從大容量存儲器檢索代碼的次數(shù)。輸入/輸出或者I/O器件(包括但不限于鍵盤、顯示器、指針裝置等)可直接或者通過中間的I/O控制器耦合至該系統(tǒng)。網(wǎng)絡適配器也可通過中間的專用或者公共網(wǎng)絡耦合至該系統(tǒng)以使數(shù)據(jù)處理系統(tǒng)能夠變?yōu)轳詈现疗渌麛?shù)據(jù)處理系統(tǒng)或者遠端打印機或者存儲器件。調(diào)制解調(diào)器、電纜調(diào)制解調(diào)器和以太網(wǎng)卡只是當前可用類型的網(wǎng)絡適配器的一些。圖中的流程圖和方塊圖示出根據(jù)本發(fā)明的各種實施方式的系統(tǒng)、方法和計算機程序產(chǎn)品可能實施的結構、功能和操作。在這方面,流程圖或者方塊圖中的各個方塊可代表代碼模塊、代碼段或者代碼部分,其包括一個或者一個以上可執(zhí)行指令以實施指定的本地功能。還應注意,在一些替代性實施中,方塊中所指出的功能可不按圖中所指出的次序出現(xiàn)。 例如,取決于涉及的功能,連續(xù)示出的兩個方塊實際上可幾乎同時執(zhí)行,或者該方塊有時可以相反次序執(zhí)行。還將注意,方塊圖及/或流程圖插圖的各個方塊,以及方塊圖及/或流程圖插圖中的方塊的組合可通過執(zhí)行指定功能或者動作的基于專用硬件的系統(tǒng)或者專用硬件和計算機指令的組合來實施。本文中所使用的術語僅是為了描述特定實施方式的目的,并且并不意為限制本發(fā)明。如本文中所使用,除非上下文明確指示,否則單數(shù)形式“一(a)”、“一(an)”和“該(the)” 意為也包括復數(shù)形式。應進一步了解,術語“包括(comprises) ”及/或“包括(comprising) ” 當用在本說明書中時,指定存在所敘述特征、整體、步驟、操作、元件及/或組件,但不排除存在或者添加一個或者一個以上其他特征、整體、步驟、操作、元件及/或組件及/或它們的群組。圖1示出服務網(wǎng)關110與服務器200之間的服務會話321。該服務網(wǎng)關110從主機100接收服務請求301。該服務請求301通過數(shù)據(jù)網(wǎng)絡153交換。在一個實施方式中,服務請求301為諸如HTTP (超文本傳輸協(xié)議)請求的web服務請求、安全HTTP請求、FTP (文件傳輸協(xié)議)請求、文件傳輸請求、SIP (會話初始化協(xié)議)會話請求、基于web技術的請求、 視頻或者音頻串流請求、web會議會話請求、或者通過互聯(lián)網(wǎng)或者企業(yè)網(wǎng)絡的任何請求。主機100為具有網(wǎng)絡存取能力的計算器件。該主機100在操作上耦合至處理器 103和計算機可讀介質(zhì)104。該計算機可讀介質(zhì)104存儲計算機可讀程序碼以實施如本文所述本發(fā)明的各種實施方式。在一個實施方式中,主機100為工作站、桌上型個人計算機或者膝上型個人計算機。在一個實施方式中,主機100為個人數(shù)據(jù)助理(PDA)、智能手機或者移動電話。在一個實施方式中,主機100為機頂盒、互聯(lián)網(wǎng)媒體查看器、互聯(lián)網(wǎng)媒體播放器、 智能傳感器、智能醫(yī)療器件、機頂盒、網(wǎng)絡電視機、網(wǎng)絡DVR、網(wǎng)絡藍光播放器或者媒體中心。在一個實施方式中,數(shù)據(jù)網(wǎng)絡153為互聯(lián)網(wǎng)協(xié)議(IP)網(wǎng)絡。在一個實施方式中, 數(shù)據(jù)網(wǎng)絡153為企業(yè)數(shù)據(jù)網(wǎng)絡或者區(qū)域企業(yè)數(shù)據(jù)網(wǎng)絡。在一個實施方式中,數(shù)據(jù)網(wǎng)絡153 為互聯(lián)網(wǎng)服務提供商網(wǎng)絡。在一個實施方式中,數(shù)據(jù)網(wǎng)絡153為常駐數(shù)據(jù)網(wǎng)絡。在一個實施方式中,數(shù)據(jù)網(wǎng)絡153包括諸如以太網(wǎng)的有線網(wǎng)絡。在一個實施方式中,數(shù)據(jù)網(wǎng)絡153包括諸如WiFi網(wǎng)絡或者蜂窩式網(wǎng)絡的無線網(wǎng)絡,。服務網(wǎng)關110操作上耦合至處理器113和計算機可讀介質(zhì)114。該計算機可讀介質(zhì)114存儲計算機可讀程序碼,該計算機可讀程序碼當由處理器113執(zhí)行時,實施如本文所述本發(fā)明的各種實施方式。在一些實施方式中,服務網(wǎng)關110實施為服務器負載均衡器、 應用交換控制器、服務交換平臺、流量管理器、安全網(wǎng)關、防火墻系統(tǒng)的組件、虛擬專用網(wǎng)絡 (VPN)的組件、用于視頻服務器的負載均衡器、或者用于將負載分配給多個服務器的網(wǎng)關。服務器200操作上耦合至處理器213和計算機可讀介質(zhì)214。該計算機可讀介質(zhì) 214存儲計算機可讀程序碼,該計算機可讀程序碼當由處理器213執(zhí)行時,實施如本文所述本發(fā)明的各種實施方式。在一些實施方式中,該計算機可讀程序碼將服務器200實施為web 服務器、文件服務器、視頻服務器、數(shù)據(jù)庫服務器、應用程序服務器、語音系統(tǒng)、會議服務器、 媒體網(wǎng)關、SIP服務器、遠端存取服務器、VPN服務器或者媒體中心。服務網(wǎng)關110經(jīng)由數(shù)據(jù)網(wǎng)絡155連接至服務器200。在一個實施方式中,數(shù)據(jù)網(wǎng)絡155與數(shù)據(jù)網(wǎng)絡153相同。在一個實施方式中,數(shù)據(jù)網(wǎng)絡155與數(shù)據(jù)網(wǎng)絡153不同。在一個實施方式中,主機100不直接存取數(shù)據(jù)網(wǎng)絡155。在一個實施方式中,主機100直接存取數(shù)據(jù)網(wǎng)絡155。圖2和圖7示出由服務網(wǎng)關110處理服務請求301的方法的實施方式。在一個實施方式中,服務網(wǎng)關110從主機100接收服務請求301,并且通過建立服務網(wǎng)關110與服務器200之間的服務會話321來將服務請求301轉送到服務器200 (701)。服務網(wǎng)關110判定服務會話321的服務請求時間361 (702)。在一個實施方式中,服務請求時間361為諸如一天時間、系統(tǒng)時間、時間計數(shù)器的時間戳。在一個實施方式中,服務請求時間361為服務網(wǎng)關110將服務請求301發(fā)送至服務器200的時間。在一個實施方式中,服務請求時間361 為服務網(wǎng)關110從服務器200接收“接收服務請求301”確認的時間。
在服務器200處理服務請求301之后,服務器200利用服務響應352來響應。在一個實施方式中,服務響應352包括web頁、文檔、文件、圖片、音頻或者視頻串流信號或者語音電話。在一個實施方式中,服務響應352包括錯誤指示354。錯誤指示邪4可包括HTTP 錯誤狀態(tài)碼、FTP錯誤碼、SIP錯誤信息或者任何其他錯誤碼。服務網(wǎng)關110接收服務響應352,并且將服務響應352轉送到主機100 (703)。服務網(wǎng)關Iio在接收服務響應352之后立即判定服務響應時間362(704)。在一個實施方式中, 服務響應時間362為諸如一天時間、系統(tǒng)時間、時間計數(shù)器的時間戳,并且與服務請求時間 361兼容。在一個實施方式中,服務響應時間362為服務網(wǎng)關110接收服務響應352的時間。在一個實施方式中,服務響應時間362為服務網(wǎng)關110接收服務響應352的第一條信息的時間。在一個實施方式中,服務響應時間362為服務網(wǎng)關110接收服務響應352的最后一條信息的時間。在一個實施方式中,服務響應時間362為服務網(wǎng)關110與服務器200 斷開服務會話321的時間。在一個實施方式中,服務響應時間362包括在服務響應352中。在判定服務請求時間361和服務響應時間362之后,服務網(wǎng)關110從服務請求時間和服務響應時間計算服務請求301的服務處理時間360 (705)。服務處理時間360通常測量服務請求時間361與服務響應時間362之間的持續(xù)時間。在一實例中,服務網(wǎng)關110從服務響應時間362減去服務請求時間361以獲得服務處理時間360。在另一實例中,服務網(wǎng)關110計算服務請求時間361與服務響應時間362之間的持續(xù)時間以判定服務處理時間。 例如,服務處理時間360為10毫秒、5毫秒、247毫秒、3秒、15秒、1分鐘、75微秒或者289 個單位時間。在一個實施方式中,服務網(wǎng)關110在計算服務處理時間360之前驗證服務響應 352。在一實例中,如果服務響應352含有錯誤指示354,那么服務網(wǎng)關110驗證服務響應 352。在一個實施方式中,如果存在錯誤指示354中所指示的錯誤,那么服務網(wǎng)關110不計算服務請求301的服務處理時間360。在一個實施方式中,服務網(wǎng)關110包括完成服務會話計數(shù)器326,其將服務網(wǎng)關 110與服務器200之間的完成服務會話數(shù)目計數(shù)。在一個實施方式中,在服務網(wǎng)關110接收服務響應352之后或者在服務網(wǎng)關110與服務器200斷開服務會話321之后,服務網(wǎng)關 110將完成服務會話計數(shù)器3 遞增1。在一個實施方式中,服務網(wǎng)關110在判定服務處理時間360之后將完成服務會話計數(shù)器3 遞增1。圖3示出判定服務器200是否為忙的方法的實施方式。服務網(wǎng)關110包括服務器 200的服務器示忙器378,指示服務器200是否為忙。在一個實施方式中,服務器示忙器378 的值0或者“不忙”指示服務器200不忙,而值1或者“忙”指示服務器200忙。服務網(wǎng)關 110基于服務處理時間360更新服務器示忙器378。在一個實施方式中,服務網(wǎng)關110包括預期服務處理時間374。參見圖3和圖7兩者,服務網(wǎng)關110比較服務處理時間360與預期服務處理時間374(706)。響應于判定該服務處理時間超過預期服務處理時間374,服務網(wǎng)關110將服務器示忙器378更新為“忙”(708)。在一個實施方式中,服務處理時間360需要至少比預期服務處理時間374大50%, 以超過預期服務處理時間374。在一個實施方式中,服務處理時間360需要至少比預期服務處理時間374大300%。在一個實施方式中,服務處理時間360需要比預期服務處理時間 374更大。
在一個實施方式中,服務網(wǎng)關110判定服務處理時間360不超過預期服務處理時間374(707),以及作為回應,服務網(wǎng)關110將服務器示忙器378更新為“不忙”(709)。在一個實施方式中,預期服務處理時間374是基于服務請求301。在一個實施方式中,服務請求301包括服務請求統(tǒng)一資源定位器(URL)。在一個實施方式中,根據(jù)服務屬性 379配置預期服務處理時間374。該服務屬性379為影響預期服務處理時間374的屬性。例如,不同協(xié)議將以不同速率處理服務請求,以及因此將具有不同預期服務處理時間。在一個實施方式中,服務屬性379是基于服務請求URL。在一個實施方式中,服務屬性379是基于服務請求URL的一部分,諸如域名、web站點中的web文件夾名、文檔類型、服務請求URL中所指示的協(xié)議。例如,服務請求URL為“http//www. abc. com/shops/shoe, html”。服務屬性 379 是基于域名 “www. abc. com”、web 文件夾 “www. abc. com/shops”、文檔類型.html (或者其他文檔類型,諸如· php、· asp等)、協(xié)議http (或者其他協(xié)議,諸如ftp、https、sip等)。 在一個實施方式中,服務屬性379與服務器200上所實施的程序碼有關。例如,服務器200 為使用Apache web服務器軟件、Microsoft web服務器軟件、Oracle web服務器軟件或者其他web服務器軟件的web服務器。服務屬性379與web服務器軟件有關。在一個實施方式中,服務屬性379是基于域名“微alOnetworks. com",以及預期服務處理時間374為10毫秒。在一個實施方式中,服務屬性379是基于HTTP協(xié)議,以及預期服務處理時間374為75毫秒。在一個實施方式中,服務屬性379是基于FTP文件下載協(xié)議,以及預期服務處理時間374為2分鐘。在一個實施方式中,服務屬性379是基于HTML 文檔類型,以及預期服務處理時間374為20毫秒。在一個實施方式中,服務屬性379與服務器200上所實施的程序碼有關。在一個實施方式中,服務器200使用Apache web服務器軟件,以及預期處理時間為50毫秒。服務器200使用Microsoft web服務器軟件,以及預期處理時間為90毫秒。在一個實施方式中,服務屬性379與以上描述所提到的多個屬性有關。預期處理時間可通過將該多個屬性的多個預期處理時間求和來判定。在一個實施方式中,服務網(wǎng)關110包括數(shù)據(jù)存儲器380,其存儲預期服務處理時間 374和相關聯(lián)服務屬性379。在一個實施方式中,服務網(wǎng)關110比較服務請求301或者服務器200與數(shù)據(jù)存儲器380中的服務屬性379。如果存在匹配,那么服務網(wǎng)關110檢索與匹配服務屬性379相關聯(lián)的預期服務處理時間374,并且比較檢索的預期服務處理時間374與該服務處理時間360。在一個實施方式中,預期服務處理時間374與任何服務屬性無關。服務網(wǎng)關110檢索預期服務處理時間374,并且將其與服務處理時間360比較。在一個實施方式中,由使用者配置預期服務處理時間374。在一個實施方式中,基于先前服務會話的服務處理時間自動判定預期服務處理時間374。在判定服務處理時間360之后,服務網(wǎng)關110立即通過以下公式計算調(diào)整預期服務處理時間376
調(diào)整預期服務處理時間
權利要求
1.一種處理從主機接收的服務請求的方法,包括(a)在服務網(wǎng)關與服務器之間的服務會話期間將所述服務請求從所述服務網(wǎng)關轉送到所述服務器;(b)由所述服務網(wǎng)關判定所述服務會話的服務請求時間;(c)由所述服務網(wǎng)關接收來自所述服務器的服務響應;(d)由所述服務網(wǎng)關判定服務響應時間;(e)由所述服務網(wǎng)關從所述服務請求時間和所述服務響應時間計算所述服務請求的服務處理時間;(f)比較所述服務處理時間與預期服務處理時間;以及(g)響應于所述比較,更新所述服務器的服務器示忙器。
2.根據(jù)權利要求1所述的方法,其中,所述更新(g)包括(gl)響應于判定所述服務處理時間超過所述預期服務處理時間,由所述服務網(wǎng)關更新所述服務器示忙器以指示所述服務器為忙;以及(g2)響應于判定所述服務處理時間不超過所述預期服務處理時間,由所述服務網(wǎng)關更新所述服務器示忙器以指示所述服務器為不忙。
3.根據(jù)權利要求1所述的方法,其中,所述計算(e)包括(el)由所述服務網(wǎng)關計算所述服務請求的所述服務處理時間作為所述服務請求時間與所述服務響應時間之間的持續(xù)時間。
4.根據(jù)權利要求1所述的方法,其中,所述服務響應包括錯誤指示,其中,如果所述錯誤指示指示錯誤,那么所述服務網(wǎng)關不計算所述服務處理時間。
5.根據(jù)權利要求1所述的方法,其中,所述比較(f)包括(fl)由所述服務網(wǎng)關根據(jù)所述服務請求或者所述服務器的服務屬性來配置所述預期服務處理時間。
6.根據(jù)權利要求5所述的方法,其中,所述預期服務處理時間與所述服務屬性相關聯(lián)并且存儲在數(shù)據(jù)存儲器中,其中,所述配置(fl)包括(fli)由所述服務網(wǎng)關比較所述服務請求或者所述服務器與所述數(shù)據(jù)存儲器中的所述服務屬性;以及(flii)如果所述服務請求或者所述服務器匹配所述數(shù)據(jù)存儲器中的所述服務屬性,則檢索與所述匹配服務屬性相關聯(lián)的預期服務處理時間。
7.根據(jù)權利要求5所述的方法,其中,所述比較(f)還包括(f2)基于所述安全網(wǎng)關與所述服務器之間的先前服務會話的服務處理時間來計算調(diào)整預期服務處理時間。
8.根據(jù)權利要求1所述的方法,其中,所述轉送(a)包括 (al)由所述服務網(wǎng)關從所述主機接收所述服務請求; (a2)由所述服務網(wǎng)關檢查所述服務器的服務器示忙器;(a3)響應于判定所述服務器示忙器指示所述服務器為忙,由所述服務網(wǎng)關將所述服務請求放置在服務請求緩沖器中;以及(a4)響應于判定所述服務器示忙器指示服務器為不忙,在所述服務網(wǎng)關與所述服務器之間的服務會話期間將所述服務請求從所述服務網(wǎng)關轉送到所述服務器。
9.根據(jù)權利要求8所述的方法,其中,所述轉送(a4)包括 (a4i)由所述服務網(wǎng)關檢查所述服務請求緩沖器是否為空;(a4ii)響應于判定所述服務請求緩沖器為空,在所述服務網(wǎng)關與所述服務器之間的服務會話期間將所述服務請求從所述服務網(wǎng)關轉送到服務器;以及(a4iii)響應于判定所述服務請求緩沖器不為空,由所述服務網(wǎng)關將所述服務請求放置在所述服務請求緩沖器中。
10.根據(jù)權利要求8所述的方法,其中,所述放置(M)包括(a3i)由所述服務網(wǎng)關判定在所述服務網(wǎng)關處的計時器是否已經(jīng)過期;以及 (a3ii)響應于判定所述計時器已經(jīng)過期,在所述服務網(wǎng)關與所述服務器之間的服務會話期間將所述服務請求從所述服務網(wǎng)關轉送到所述服務器。
11.根據(jù)權利要求8所述的方法,其中,所述服務請求與優(yōu)先級相關聯(lián),其中,所述服務請求緩沖器被配置為存儲與所述優(yōu)先級相關聯(lián)的服務請求,其中,所述放置(a!3)包括(a3i)由所述服務網(wǎng)關將所述服務請求放置在所述服務請求緩沖器中;以及 (a3ii)根據(jù)所述相關聯(lián)優(yōu)先級將所述服務請求緩沖器中的服務請求從所述服務網(wǎng)關轉送到所述服務器。
12.—種系統(tǒng),包括 服務器,用于處理服務請求;和服務網(wǎng)關,包括處理器和嵌入有計算機可讀程序碼的計算機可讀存儲介質(zhì),其中,當所述計算機可讀程序碼由所述處理器執(zhí)行時,使得所述服務網(wǎng)關在所述服務網(wǎng)關與所述服務器之間的服務會話期間將所述服務請求轉送到所述服務器;判定所述服務會話的服務請求時間; 接收來自所述服務器的服務響應; 判定所述服務響應時間;從所述服務請求時間和所述服務響應時間計算所述服務請求的服務處理時間; 比較所述服務處理時間與所述預期服務處理時間;以及響應于所述比較,更新所述服務器的服務器示忙器。
13.根據(jù)權利要求22所述的系統(tǒng),其中,響應于所述比較更新所述服務器的服務器示忙器包括響應于判定所述服務處理時間超過所述預期服務處理時間,更新所述服務器示忙器以指示所述服務器為忙;以及響應于判定所述服務處理時間不超過所述預期服務處理時間,更新所述服務器示忙器以指示所述服務器為不忙。
14.根據(jù)權利要求22所述的系統(tǒng),其中,所述比較服務處理時間與預期服務處理時間包括根據(jù)所述服務請求或者所述服務器的服務屬性來配置所述預期服務處理時間。
15.根據(jù)權利要求M所述的系統(tǒng),其中,所述預期服務處理時間與服務屬性相關聯(lián)并且存儲在所述數(shù)據(jù)存儲器中,其中,根據(jù)所述服務請求或者所述服務器的服務屬性來配置所述預期服務處理時間包括比較所述服務請求或者所述服務器與所述數(shù)據(jù)存儲器中的服務屬性;以及如果所述服務請求或者所述服務器匹配所述數(shù)據(jù)存儲器中的服務屬性,則檢索與匹配所述服務屬性相關聯(lián)的預期服務處理時間。
16.根據(jù)權利要求M所述的系統(tǒng),其中,所述比較服務處理時間與預期服務處理時間包括基于安全網(wǎng)關與服務器之間的先前服務會話的服務處理時間來計算調(diào)整預期服務處理時間。
17.根據(jù)權利要求22所述的系統(tǒng),其中,所述在所述服務網(wǎng)關與所述服務器之間的服務會話期間將所述服務請求從所述服務網(wǎng)關轉送到所述服務器包括從所述主機接收所述服務請求;檢查所述服務器的服務器示忙器;響應于判定所述服務器示忙器指示所述服務器為忙,將所述服務請求放置在所述服務請求緩沖器中;以及響應于判定所述服務器示忙器指示所述服務器為不忙,在所述服務網(wǎng)關與所述服務器之間的服務會話期間將所述服務請求從所述服務網(wǎng)關轉送到所述服務器。
全文摘要
本發(fā)明公開了基于動態(tài)服務響應時間向服務器分配流量的系統(tǒng)和方法。服務網(wǎng)關通過以下步驟處理從主機接收的服務請求在服務網(wǎng)關與服務器之間的服務會話期間將服務請求從服務網(wǎng)關轉送到服務器;判定服務會話的服務請求時間;由服務網(wǎng)關接收來自服務器的服務響應;由服務網(wǎng)關判定服務響應時間;由服務網(wǎng)關從服務請求時間和服務響應時間計算服務請求的服務處理時間;比較服務處理時間與預期服務處理時間;以及響應于該比較更新服務器的服務器示忙器。如果服務處理時間超過預期服務處理時間,那么更新服務器示忙器以指示服務器為忙。否則,更新服務器示忙器以指示服務器為不忙。
文檔編號H04L29/06GK102546590SQ20111039399
公開日2012年7月4日 申請日期2011年12月1日 優(yōu)先權日2010年12月2日
發(fā)明者司徒偉倫, 徐飛龍, 拉賈庫瑪·亞蘭 申請人:瑞科網(wǎng)信科技有限公司