用于在流量指揮站環境中提供負載平衡與數據壓縮的靈活性的系統及方法
【專利摘要】本文所描述的是供用于負載平衡器或流量指揮站及其管理的系統及方法,其中流量指揮站是作為基于軟件的負載平衡器提供的,它可以用于交付快速、可靠、可縮放且安全的平臺,用于負載平衡到后端起源服務器的互聯網及其它流量,其中的起源服務器諸如web服務器、應用服務器或其它資源服務器。根據一種實施例,所述系統包括具有一個或多個流量指揮站實例的流量指揮站,其中流量指揮站配置為從客戶端接收請求并且把請求傳送到具有一個或多個服務器池的起源服務器。描述了用于在這種流量指揮站或其它環境中提供主動-被動路由、浪涌保護和速率加速、起源服務器的動態發現、配置http負載平衡時的靈活性和/或動態高速緩存數據解壓縮的系統及方法。
【專利說明】用于在流量指揮站環境中提供負載平衡與數據壓縮的靈活性的系統及方法
[0001]
[0002]版權聲明
[0003]本專利文檔公開內容的一部分包含受版權保護的素材。版權所有人不反對任何人對專利文檔或專利公開內容按照在專利商標局的專利文件或記錄中出現那樣進行的傳真復制,但是除此之外在任何情況下都保留所有版權。
[0004]優先權保護
[0005]本申請要求以下專利申請的優先權利益:于2011年9月27日提交且標題為“SYSTEMS AND METHODS FOR USE WITH AN APPLICATION SERVER TRAFFIC DIRECTOR(COREFEATURES)”的美國臨時專利申請N0.61/539,886;于2011年9月27日提交且標題為“SYSTEMS AND METHODS FOR USE WITH AN APPLICATION SERVER TRAFFIC DIRECTOR(ADMINFEATURES)”的美國臨時專利申請N0.61/539,900 ;于2012年8月31日提交且標題為“SYSTEM AND METHOD FOR PROVIDING ACTIVE-PASSIVE ROUTING IN A TRAFFIC DIRECTORENVIRONMENT”的美國專利申請N0.13/601, 087 ;于2012年8月31日提交且標題為“SYSTEMAND METHOD FOR SURGE PROTECTION AND RATE ACCELERATION IN A TRAFFIC DIRECTORENVIRONMENT”的專利申請N0.13/601,428 ;于2012年8月31日提交且標題為“SYSTEMAND METHOD FOR DYNAMIC DISCOVERY OF ORIGIN SERVERS IN A TRAFFIC DIRECTORENVIRONMENT”的美國專利申請N0.13/601, 530 ;于2012年8月31日提交且標題為“SYSTEMAND METHOD FOR PROVIDING FLEXIBILITY IN CONFI⑶RING HTTP LOAD BALANCING IN ATRAFFIC DIRECTOR ENVIRONMENT” 的美國專利申請 N0.13/601,632 ;及于 2012 年 9 月 24日提交且標題為 “SYSTEM AND METHOD FOR DYNAMIC CACHE DATA DECOMPRESSION IN ATRAFFIC DIRECTOR ENVIRONMENT”的美國專利申請N0.13/625,716,這些申請中每一個通過引用被結合于此。
【技術領域】
[0006]本發明一般而言涉及用在應用服務器、中間件機器或其它計算環境中的負載平衡器或流量指揮站,而且更具體地說,涉及用于在流量指揮站或其它環境中提供主動-被動路由、浪涌保護和速率加速、起源服務器的動態發現、配置http負載平衡的靈活性和/或動態高速緩存數據解壓縮的系統及方法。
【背景技術】
[0007]典型的企業級計算環境會包括許多不同類型的計算資源(例如,web服務器、應用服務器、數據庫服務器或者其它類型的資源服務器),這些資源要由其它計算機或者操作各種不同類型計算設備的用戶經網絡(例如,公司的內部以太網,或者互聯網)訪問。一個熟悉的例子是客戶端計算機的使用,諸如配備web瀏覽器應用的筆記本電腦,通過該web瀏覽器應用,用戶可以經互聯網訪問web服務器。[0008]如今的機構越來越依賴于他們的計算資源不論什么時候都可以具有高性能水平地、很容易地從幾乎任何地點獲得。確保這種資源有效分配的任務常常需要使用負載平衡設備根據其分配策略以公平的方式分配客戶端對目標資源的請求。這些是本發明實施例可以與其一起使用的環境的類型。
【發明內容】
[0009]本文所描述的是供用于負載平衡器或流量指揮站及其管理的系統及方法。根據一種實施例,流量指揮站,在本文有些實施例中被稱為“Oracle流量指揮站”(0TD),是作為一種基于軟件的負載平衡器提供的,它可以用于交付快速、可靠、可縮放且安全的平臺,用于負載平衡到后端起源服務器的互聯網及其它流量,其中起源服務器諸如web服務器、應用服務器或其它資源服務器。
[0010]流量指揮站的實施例在應用服務器、中間件機器及類似的高性能企業級計算環境,諸如Oracle WebLogic和Exalogic環境,中特別有用。
[0011]根據一種實施例,該系統包括具有一個或多個流量指揮站實例的流量指揮站,流量指揮站配置為從客戶端接收請求并把請求傳送到具有一個或多個服務器池的起源服務器。根據一種實施例,該系統包括提供由起源服務器在接收請求時使用的通信協議或套接字的高速網絡基礎設施;供所述通信協議或套接字使用的一個或多個協議終接器/仿真器;及入站套接字配置和出站套接字配置,這兩個配置一起指示流量指示器應當使用哪個終接器/仿真器把請求傳送到特定的起源服務器。
[0012]根據一種實施例,起源服務器池配置為使得該池中至少一個或多個服務器被指定為主服務器,而且該池中至少一個或多個其它服務器被指定為備用服務器。流量指揮站配置為使得它確定池中主服務器的可用性,并且在池包括足量的可用主服務器時把請求只指引到主服務器。
[0013]根據一種實施例,位于流量指揮站的流量監視器監視流量指揮站實例與起源服務器中一個或多個資源服務器之間的流量,包括連接的個數。流量指揮站可以設置控制流量的流量速率,包括連接的個數,以便提供浪涌保護,或者速率加速/減速。
[0014]根據一種實施例,健康檢查子系統周期性地檢查其所配置的資源服務器的健康狀況,并且還通過向池中配置為起源服務器的任何新服務器實例發送請求、接收適當的響應并且相應地更新配置來嘗試檢測一個或多個池中的變化。
[0015]根據一種實施例,該系統包括高速網絡基礎設施,該基礎設施提供由起源服務器在接收請求時使用的通信協議或套接字;供所述通信協議或套接字使用的一個或多個協議終接器/仿真器;及入站套接字配置和出站套接字配置,這兩個配置一起指示流量指示器應當使用哪個終接器/仿真器把請求傳送到特定的起源服務器。
[0016]根據一種實施例,流量指揮站可以配置為壓縮存儲在其高速緩存中的數據,并且通過把來自起源服務器的內容作為壓縮數據提供或者,如果特定的客戶端更愿意接收數據的非壓縮變體的話,通過在提供它之前動態解壓縮該數據對來自客戶端的請求作出響應。根據一種實施例,流量指揮站可以配置為使用硬件輔助的壓縮基元,以進一步改善其數據壓縮和解壓縮的性能。【專利附圖】
【附圖說明】
[0017]圖1根據一種實施例說明了包括負載平衡器或流量指揮站的計算環境。
[0018]圖2根據一種實施例說明了流量指揮站對一個或多個池或起源服務器的使用。
[0019]圖3根據一種實施例說明了流量指揮站體系架構。
[0020]圖4根據一種實施例說明了流量指揮站管理環境和接口。
[0021]圖5根據一種實施例說明了流量指揮站中主動/被動路由的使用。
[0022]圖6根據一種實施例進一步說明了流量指揮站中主動/被動路由的使用。
[0023]圖7是根據一種實施例、用于在流量指揮站中提供主動/被動路由的方法的流程圖。
[0024]圖8根據一種實施例說明了流量指揮站中浪涌保護的使用。
[0025]圖9根據一種實施例說明了流量指揮站中速率加速的使用。
[0026]圖10是根據一種實施例、用于在流量指揮站中提供浪涌保護的方法的流程圖。
[0027]圖11是根據一種實施例、用于在流量指揮站中提供速率加速的方法的流程圖。
[0028]圖12根據一種實施例說明了流量指揮站中起源服務器的動態發現。
[0029]圖13根據一種實施例進一步說明了流量指揮站中起源服務器的動態發現。
[0030]圖14是根據一種實施例、用于在流量指揮站中提供起源服務器的動態發現的方法的流程圖。
[0031]圖15是根據一種實施例、用于在流量指揮站中提供起源服務器的動態發現的另一種方法的流程圖。
[0032]圖16根據一種實施例說明了流量指揮站的使用。
[0033]圖17是根據一種實施例、用于使用流量指揮站的方法的流程圖。
[0034]圖18根據一種實施例說明了流量指揮站環境中動態HTTP解壓縮的使用。
[0035]圖19是根據一種實施例、用于在流量指揮站環境中提供動態HTTP解壓縮的方法的流程圖。
[0036]圖20根據一種實施例說明了對供流量指揮站環境中動態HTTP解壓縮使用的硬件基元的支持。
具體實施例
[0037]如上所述,如今的機構越來越依賴于他們的計算資源在無論什么時候都可以具有高性能水平地、很容易地從幾乎任何地點獲得。確保這種資源有效分配的任務常常需要使用負載平衡設備根據其分配策略以公平的方式分配客戶端對目標資源的請求。
[0038]本文所描述的是供負載平衡器或流量指揮站及其管理使用的系統及方法。根據一種實施例,流量指揮站,在本文有些實施例中被稱為“Oracle流量指揮站”(0TD),是作為一種基于軟件的負載平衡器提供的,它可以用于交付快速、可靠、可縮放且安全的平臺,用于負載平衡到后端起源服務器的互聯網及其它流量,其中起源服務器諸如web服務器、應用服務器或其它資源服務器。
[0039]流量指揮站的實施例在應用服務器、中間件機器及類似的高性能企業級計算環境,諸如Oracle WebLogic和Exalogic環境,中特別有用。
[0040]根據一種實施例,流量指揮站充當諸如超文本傳輸協議(HTTP)和超文本傳輸協議安全(HTTPS)請求的流量的入口點,這些請求是從客戶端或者客戶端設備接收的,用于傳送到充當起源服務器的資源或資源服務器的后端。每個流量指揮站包括一個或多個由配置定義的流量指揮站實例,其中該配置提供關于那個實例的各種元素的信息,諸如監聽者、起源服務器、故障轉移組,以及日志。
[0041]可以和該系統一起使用的客戶端類型的例子包括計算機服務器、筆記本電腦、諸如智能電話的便攜式設備,以及其它類型的計算設備,這些設備中的一些可以包括例如用于訪問web服務器的web瀏覽器應用。
[0042]可以用作起源服務器的資源類型的例子包括輕量級目錄訪問協議(LDAP)服務器、web服務器、多媒體服務器、應用服務器、數據庫服務器,以及其它類型的資源。
[0043]根據一種實施例,流量指揮站可以執行任務,諸如基于一種或多種負載平衡方法把請求分配到起源服務器;基于規定的規則路由請求;高速緩存被頻繁訪問的數據;給流量排優先級;以及控制服務質量。
[0044]從性能的角度看,根據一種實施例,流量指揮站可以包括使其能夠以低等待時間處理大量流量的體系架構。例如,實施例可以為了在高性能計算環境,諸如像OracleExalogoc Elastic Cloud,中使用或者為了利用高性能通信構架,諸如像InfiniBand,與位于后端的起源服務器通信而進行優化。根據一種實施例,為了支持高可用性,流量指揮站可以識別流量指揮站實例中提供主動-被動或主動-主動故障轉移的故障轉移組。隨著到網絡的流量量增加,流量指揮站環境可以通過利用它可以把請求路由到其的附加后端服務器重新配置流量指揮站,或者通過修改流量傳送的速率,而被縮放。
[0045]從管理的角度看,根據一種實施例,流量指揮站設計為容易安裝、配置和使用;并且可以包括簡單的、向導驅動的圖形接口,以及健壯的命令行接口,讓管理員在管理流量指揮站實例的時候使用。對于任何特定的機構,依賴于他們的商業需求,諸如他們想為其使用流量指揮站來平衡請求的后端應用的個數、諸如安全性的內部需求,以及他們希望使用的流量指揮站特征,流量指揮站的拓撲結構可以變化,以解決他們的需求。例如,一種簡單的流量指揮站拓撲結構可能最初使用運行在專用計算節點上并且向位于后端的服務器池分配客戶端請求的單個流量指揮站實例。為了避免單點故障,管理員可以配置運行在不同節點上并且形成主動-被動故障轉移對的兩個同源流量指揮站實例。為了改善資源利用率,管理員可以利用兩個虛擬IP地址配置處于主動-主動模式的兩個流量指揮站實例。
[0046]術語表
[0047]根據一種實施例,使用以下術語。很顯然,根據其它實施例,附加的和/或不同的術語也可以使用。
[0048]配置:確定流量指揮站實例的運行時行為的可配置元素(例如,元數據)的集合。根據一種實施例,一種典型的配置包含流量指揮站應當在其上監聽請求的監聽者的定義(例如,IP地址與端口的組合),連同關于請求應當發送至的位于后端的服務器的信息。當流量指揮站實例啟動時,以及在處理客戶端請求時,流量指揮站可以讀取該配置。
[0049]實例(流量指揮站實例):根據配置實例化并且部署在管理節點或管理服務器上的流量指揮站服務器。
[0050]集群:根據同一個配置創建的兩個或多個流量指揮站實例的集合。
[0051]故障轉移組:通過虛擬IP地址(VIP)分組的兩個或多個流量指揮站示例。根據一種實施例,故障轉移組在主動-被動模式中提供高可用性;其中請求在VIP接收并路由到被指定為主實例的實例;如果該主實例不可到達,則請求路由到備用實例。根據一種實施例,對于主動-主動故障轉移,需要兩個故障轉移組,每個組具有唯一的VIP,但是兩個組包括具有顛倒的主和備用角色的相同節點;故障轉移組中的每個實例對于一個VIP被指定為主實例,對于另一個VIP被指定為備用的。
[0052]管理服務器:托管包括管理控制臺和命令行接口在內的接口的專門配置的流量指揮站實例,管理員可通過這些接口創建流量指揮站配置、把它們部署成作為管理節點上的實例,并且管理這些實例。
[0053]管理節點:被指定為管理員可以在其上部署流量指揮站實例的主機的物理服務器。根據一種實施例,在給定的節點上,管理員只能部署一種配置的一個實例。
[0054]INSTANCE_H0ME:管理服務器或管理節點上管理員的選擇的一個目錄,其中存儲關于流量指揮站實例的配置數據與二進制文件。
[0055]0RACLE_H0ME:管理員的選擇的一個目錄,管理員在其中安裝流量指揮站二進制文件。
[0056]管理控制臺:管理服務器上基于web的圖形接口,管理員可以使用它來創建、部署和管理流量指揮站實例。
[0057]客戶端:根據一種實施例,把請求(例如,HTTP和HTTPS請求)發送到流量指揮站實例的代理(例如,web瀏覽器或應用)。可以與本系統一起使用的客戶端類型的例子包括計算機服務器、筆記本電腦、諸如智能電話的便攜式設備,以及其它類型的計算設備,這些設備中的一些可以包括例如用于訪問web服務器的web瀏覽器應用。
[0058]起源服務器:根據一種實施例,位于后端的資源或服務器,流量指揮站把它從客戶端接收到的請求轉發到其,并且從其接收對客戶端請求的響應。可以用作起源服務器的資源類型的例子包括輕量級目錄訪問協議(LDAP)服務器、web服務器、多媒體服務器、應用服務器、數據庫服務器,以及其它類型的資源。
[0059]起源-服務器池:托管相同的應用或服務并且管理員可以通過使用流量指揮站進行負載平衡的起源服務器的集合。根據一種實施例,流量指揮站基于特定于那個池的負載分配方法把客戶端請求分配到起源-服務器池中的服務器。
[0060]虛擬服務器:流量指揮站實例中提供唯一的IP地址(或主機名)與端口組合的虛擬實體,通過其,流量指揮站可以為對一個或多個域的請求進行服務。根據一種實施例,一個節點上的流量指揮站實例可以包含多個虛擬服務器。管理員可以專門為每個虛擬服務器配置諸如進入的連接的最大個數的配置,并且還可以定制每個虛擬服務器如何處理請求。
[0061]圖1根據一種實施例說明了包括負載平衡器或流量指揮站的計算環境。如圖1中所示,根據一種實施例,流量指揮站100 (在本文有些實施例中被稱為Oracle流量指揮站(OTD))可以部署在一個或多個物理計算機服務器101 (或者包括處理器(CPU)、內存和儲存器的類似計算設備)上,并且可以包括一個或多個流量指揮站實例102、104,流量指揮站實例又可以利用高可用性心跳或類似手段106彼此通信。
[0062]對于任何特定的機構,依賴于他們的商業需求,諸如他們想為其使用流量指揮站來平衡請求的后端應用的個數、諸如安全性的內部需求,以及他們希望使用的流量指揮站特征,流量指揮站的拓撲結構可以變化,以解決他們的需求。后端可以包括一個或多個起源服務器110,其例子可以包括LDAP服務器114、web服務器118、多媒體服務器122、應用服務器126以及數據庫服務器128。根據一種實施例,應用服務器可以是WebLogic服務器(WLS)。依賴于機構的特定需求,可以使用其它類型的起源服務器,以及應用服務器。每個起源服務器可以經諸如以太網網絡的內部網絡130彼此通信,并且與流量指揮站通信。
[0063]根據一種實施例,流量指揮站可以經外部網絡136、互聯網138,以及在許多機構的情況下是防火墻139,從客戶端134接收請求。可以與本系統一起使用的客戶端類型的例子包括計算機服務器、筆記本電腦、諸如智能電話的便攜式設備,以及其它類型的計算設備,這些設備中的一些可以包括例如用于訪問web服務器的web瀏覽器應用。
[0064]圖2根據一種實施例說明了流量指揮站對一個或多個池或起源服務器的使用。在圖2所說明的例子中,流量指揮站與兩個池一起使用,包括具有在這里指示為A172、B174、C176、D178的四個應用服務器的(第一)應用服務器池170 ;及具有在這里指示為A182、B184、C186的三個web服務器的(第二)web服務器池。根據其它實施例和例子,依賴于機構的特定需求,可以使用其它類型與數量的池和服務器。
[0065]在圖2所說明的例子中,拓撲結構包括形成主動-被動故障轉移組150并且包括用于客戶端請求接收的單個虛擬IP地址190的兩個流量指揮站實例(102和104)。當主動實例(在這個例子中是實例102)接收請求190、192、194時,它確定請求應當發送至的服務器池,并且基于為那個池規定的負載分配方法把請求197、198轉發到那個池中的一個服務器。
[0066]雖然圖2中所示的例子說明了位于后端的兩個服務器池的使用,但是管理員可以把流量指揮站配置為把請求路由到多個池中的服務器。在圖2所說明的主動-被動設置中,在任何時間點故障轉移組中都有一個節點是冗余的。根據一種實施例,為了改善資源利用率,管理員可以利用兩個虛擬IP地址在主動-主動模式中配置兩個流量指揮站實例;在這種場景下,每個實例設法滿足(cater to)在一個虛擬IP地址上接收的請求,并且備份另一個實例。
[0067]圖3根據一種實施例說明了流量指揮站體系架構。根據一種實施例,流量指揮站可以包括使它能夠以低等待時間處理大流量量的體系架構。實施例還可以為了在高性能計算環境中使用或者為了利用高性能通信構架與位于后端的起源服務器通信而進行優化。
[0068]如圖3中所示,根據一種實施例,流量指揮站可以包括一個或多個Netscape便攜式運行時(NSPR) 202和網絡安全性服務(NSS) 206層。根據一種實施例,流量指揮站還可以包括具有一個或多個訪問控制212、日志214、HTTP壓縮216、I/O過濾器218、錯誤處理220、速率整形222、入侵檢測224或其它部件的HTTP引擎210 ;以及具有一個或多個http客戶端232、響應客戶端234、健康檢查236、路由策略238、負載控制240、負載平衡器244、WLS支持246、粘性路由248或其它部件的反向代理服務器部件230。根據一種實施例,流量指揮站還可以包括具有一個或多個接收器線程252、工作者線程254、保持活動線程256或其它部件的HTTP連接處理器250。根據一種實施例,流量指揮站還可以包括具有一個或多個TCP線程262、負載平衡器264或其它部件的TCP連接處理器260。根據一種實施例,流量指揮站還可以包括一個或多個事件調度270、動態配置72、監視274或其它部件。
[0069]很顯然,根據其它實施例,可以使用附加的和/或不同的部件。
[0070]圖4根據一種實施例說明了流量指揮站管理環境和接口。從管理的角度看,流量指揮站設計為容易安裝、配置和使用;并且可以包括簡單的、向導驅動的圖形接口,以及健壯的命令行接口,讓管理員在管理流量指揮站實例的時候使用。如圖4中所示,根據一種實施例,流量指揮站可以包括一個或多個流量指揮站實例280、281、282,其中這些實例中至少一個被指定為管理服務器(280),而其它實例被指定為管理節點(281、282)。
[0071]根據一種實施例,管理環境284包括管理接口 285,管理接口 285又包括管理控制臺(⑶I) 286和/或命令行接口 288中的一個或多個,使管理員290能夠配置或以別的方式管理292流量指揮站,或者其實例294、296。
[0072]主動-被動路由
[0073]在有些主動-被動路由方法中,負載平衡器維持第一服務器集群作為主(即,主動)集群,而另一個服務器集群作為備用(即,被動)集群。這是災難性恢復的情形下是有用的,由此,當主數據中心發生故障時,流量自動地路由到備用的數據中心。根據一種實施例,流量指揮站采用細致入微的(nuanced)方法,由此,流量指揮站只有在所有主動節點都發生故障之后才挑選備用節點。
[0074]根據一種實施例,在服務器池中,一些起源服務器可以被規定為主服務器,而其它被規定為備用服務器。如果至少一個主服務器可用,則流量指揮站將把請求只路由到非備用服務器(即,路由到主服務器)。但是,如果沒有主服務器可用,則流量指揮站將把請求路由到池中的備用服務器。一旦有任何主服務器再次變得可用,流量指揮站就將停止把請求發送到備用服務器,并且將把后續請求路由到該主服務器。
[0075]圖5根據一種實施例說明了流量指揮站中主動/被動路由的使用。如圖5中所示,主動/被動環境可以包括在把請求路由到起源服務器346時使用的、具有一個或多個流量指揮站實例342的流量指揮站340。起源服務器可以配置為一個或多個服務器池(在這里示為池A348和池B354),每個池具有一個或多個主服務器350、357以及一個或多個備用服務器 356,358ο
[0076]如圖5中所說明的,流量指揮站可以配置為使得,對于任何特定的池(例如,池Α),如果那個池中至少有一個主服務器可用,則最初流量指揮站將把請求只路由344到非備用服務器(即,主服務器),并且將不把請求路由到(為了說明,在這里加陰影的)備用服務器。
[0077]根據一種實施例,在一段時間之后,雖然一個或多個主服務器可能由于故障而變得不可用,但是如果至少有一個主服務器可用,則流量指揮站將繼續只把請求路由360到那個池中的主服務器。
[0078]在另一段時間之后,根據一種實施例,如果池中所有主服務器都變得不可用,則流量指揮站將代替地把請求路由364到該池中的備用服務器。
[0079]圖6根據一種實施例進一步說明了流量指揮站中主動/被動路由的使用。如圖6中所示,如果池中所有主服務器仍然不可用,則流量指揮站將繼續把請求路由366到該池中的備用服務器。
[0080]當一個主服務器再次變得可用時368,依賴于配置,流量服務器可以在開始把流量轉發到(新的或者以別的方式現在可用的)主服務器之前延遲一段時間。在這種情況下,流量指揮站將繼續370把請求路由到備用服務器一段時間,并且還不把請求路由到(為了說明,在這里加陰影的)主服務器。
[0081]隨后,一旦至少一個主服務器再次完全可用,如果至少一個主服務器可用,則流量指揮站將再次把請求只路由到非備用服務器(即,主服務器),并且將不把請求路由到備用服務器。
[0082]根據一種實施例,在配置粘性路由的情況下,如果一個主服務器變得不可用,則粘著到該服務器的所有后續請求將不被拒絕,而是將路由到其它主服務器或者如果沒有主服務器可用的話就路由到備用服務器。由于過渡起源服務器可能沒有為粘性請求存儲的會話信息,因此,在這種情況下,會話將有可能失敗。但是,新的提供服務的服務器可以挑戰(challenge)發送者并且建立用于那些粘性請求的新會話。備用服務器將只在所有主服務器都不可用的時候才用于路由。
[0083]根據一種實施例,為了配置供流量指揮站使用的主動/被動路由,稱為“backup-server”的兀素可以添加在server, xml文件中的兀素〈origin-server〉中,用于
規定備用服務器,其參數和例子分別在表1和列表1中提供。
[0084]
【權利要求】
1.一種用在包括流量指揮站部件的計算環境中的系統,包括: 流量指揮站,其具有一個或多個流量指揮站實例,配置為從客戶端接收請求并且把請求傳送到具有一個或多個服務器池的起源服務器; 高速網絡基礎設施,其提供供起源服務器在接收請求時使用的通信協議或套接字; 一個或多個協議終接器/仿真器,其供用于所述通信協議或套接字 '及入站套接字配置和出站套接字配置,入站套接字配置和出站套接字配置一起指示流量指揮站應當使用哪個終接器/仿真器來把請求傳送到特定的起源服務器。
2.如權利要求1所述的系統,其中該系統包括在包括InfiniBand網絡基礎設施的高性能計算環境中。
3.如權利要求1所述的系統,其中每個服務器池包括一個或多個資源服務器,而且每個服務器池能夠配置為使用特定的通信協議或套接字。
4.如權利要求1所述的系統,其中通信協議或套接字包括經InfiniBand的互聯網協議(IPoIB)0
5.如權利要求1所述的系統,其中通信協議或套接字包括套接字直接協議(SDP)。
6.一種用在包括流量指揮站部件的計算環境中的方法,包括步驟: 提供具有一個或多個流量指揮站實例的流量指揮站,該流量指揮站配置為從客戶端接收請求并且把請求傳送到具有一個或多個服務器池的起源服務器; 提供高速網絡基礎設施,該高速網絡基礎設施提供供起源服務器在接收請求時使用的通信協議或套接字;` 提供供用于所述通信協議或套接字的一個或多個協議終接器/仿真器;及提供入站套接字配置與出站套接字配置,入站套接字配置和出站套接字配置一起指示流量指揮站應當使用哪個終接器/仿真器來把請求傳送到特定的起源服務器。
7.如權利要求6所述的方法,其中該系統包括在包括InfiniBand網絡基礎設施的高性能計算環境中。
8.如權利要求6所述的方法,其中每個服務器池包括一個或多個資源服務器,而且每個服務器池能夠配置為使用特定的通信協議或套接字。
9.如權利要求6所述的方法,其中通信協議或套接字包括經InfiniBand的互聯網協議(IPoIB)0
10.如權利要求6所述的方法,其中通信協議或套接字包括套接字直接協議(SDP)。
11.一種非臨時性的計算機可讀介質,包括存儲在其上的指令,當所述指令被一個或多個計算機讀取并執行時,使這一個或多個計算機執行步驟,包括: 提供具有一個或多個流量指揮站實例的流量指揮站,該流量指揮站配置為從客戶端接收請求并且把請求傳送到具有一個或多個服務器池的起源服務器; 提供高速網絡基礎設施,該高速網絡基礎設施提供供起源服務器在接收請求時使用的通信協議或套接字; 提供供用于所述通信協議或套接字的一個或多個協議終接器/仿真器;及提供入站套接字配置與出站套接字配置,入站套接字配置和出站套接字配置一起指示流量指揮站應當使用哪個終接器/仿真器來把請求傳送到特定的起源服務器。
12.一種在流量指揮站環境中提供動態數據壓縮的系統,包括:流量指揮站,其具有一個或多個流量指揮站實例,配置為從客戶端接收請求并且把請求傳送到具有一個或多個服務器池的起源服務器; 高速緩存,其能夠被啟用以供起源服務器中的一個或多個使用,所述高速緩存用于高速緩存對應于起源服務器內容的一個或多個數據集合,其中,如果所述高速緩存被啟用,則流量指揮站在高速緩存壓縮數據之前壓縮要在高速緩存中存儲的數據;并且 其中高速緩存的數據能夠響應于來自客戶端的請求而根據客戶端的需求或者以壓縮格式或者以解壓縮格式提供給客戶端。
13.如權利要求12所述的系統,其中,響應于需要非壓縮數據的特定客戶端,流量指揮站把請求傳送到起源服務器,以獲得響應,或者,如果流量指揮站確定該數據的拷貝目前以壓縮格式存儲在其高速緩存中,則解壓縮那個數據并且把該數據的解壓縮變體返回給客戶端。
14.如權利要求12所述的系統,其中客戶端能夠向流量指揮站指示響應能夠包括壓縮數據,或者響應不能包括壓縮數據并且只有非壓縮數據是能夠被接受的,而且其中流量指揮站相應地操作。
15.如權利要求14所述的系統,其中所述指示能夠由客戶端作為請求組成部分的一部分,諸如HTTP請求首部,傳送到流量指揮站。
16.如權利要求12所述的系統,其中每個起源服務器能夠配置為向客戶端提供圖像文件和其它內容,并且流量指揮站能夠配置為響應于請求而把從那個起源服務器接收到的文件的選擇高速緩存在其高速緩存中特定的時間段。
17.如權利要求12所述的系統,其中流量指揮站配置為使用硬件輔助的壓縮基元來進一步改善其數據壓縮和解壓縮的性能。
18.如權利要求17所述的系統,其中該系統包括壓縮/解壓縮庫,而壓縮/解壓縮庫又能夠用于改善某些處理器上的壓縮和解壓縮操作的性能。
19.一種用于在流量指揮站環境中提供動態數據解壓縮的方法,包括: 提供具有一個或多個流量指揮站實例的流量指揮站,該流量指揮站配置為從客戶端接收請求并且把請求傳送到具有一個或多個服務器池的起源服務器; 提供高速緩存,該高速緩存能夠被啟用,供起源服務器中的一個或多個使用,所述高速緩存用于高速緩存對應于起源服務器內容的一個或多個數據集合,其中,如果高速緩存被啟用,則流量指揮站在高速緩存壓縮數據之前壓縮要在高速緩存中存儲的數據;并且 其中高速緩存的數據能夠響應于來自客戶端的請求而根據客戶端的需求或者以壓縮格式或者以解壓縮格式提供給客戶端。
20.如權利要求19所述的方法,其中,響應于需要非壓縮數據的特定客戶端,流量指揮站把請求傳送到起源服務器,以獲得響應,或者,如果流量指揮站確定該數據的拷貝目前以壓縮格式存儲在其高速緩存中,則解壓縮那個數據并且把該數據的解壓縮變體返回給客戶端。
21.如權利要求19所述的方法,其中客戶端能夠向流量指揮站指示響應能夠包括壓縮數據,或者響應不能包括壓縮數據并且只有非壓縮數據是能夠被接受的,并且其中流量指揮站相應地操作。
22.如權利要求21所述的方法,其中所述指示能夠由客戶端作為請求組成部分的一部分,諸如HTTP請求首部,傳送到流量指揮站。
23.如權利要求19所述的方法,其中每個起源服務器能夠配置為向客戶端提供圖像文件和其它內容,并且流量指揮站能夠配置為響應于請求而把從那個起源服務器接收到的文件的選擇高速緩存在其高速緩存中特定的時間段。
24.如權利要求19所述的方法,其中流量指揮站配置為使用硬件輔助的壓縮基元來進一步改善其數據壓縮和解壓縮的性能。
25.如權利要求24所述的方法,進一步包括提供壓縮/解壓縮庫,而壓縮/解壓縮庫又能夠用于改善某些處理器上壓縮和解壓縮操作的性能。
26.一種非臨時性的計算機可讀介質,包括存儲在其上的指令,當所述指令被一個或多個計算機讀取并執行時,使這一個或多個計算機執行步驟,包括: 提供具有一個或多個流量指揮站實例的流量指揮站,該流量指揮站配置為從客戶端接收請求并且把請求傳送到具有一個或多個服務器池的起源服務器; 提供高速緩存,該高速緩存能夠被啟用以供起源服務器中的一個或多個使用,所述高速緩存用于高速緩存對應于起源服務器內容的一個或多個數據集合,其中,如果高速緩存被啟用,則流量指揮站在高速緩存壓縮數據之前壓縮要在高速緩存中存儲的數據;并且 其中高速緩存的數據能夠響應于來自客戶端的請求而根據客戶端的需求或者以壓縮格式或者以解壓 縮格式提供給客戶端。
【文檔編號】G06F17/30GK103827828SQ201280047079
【公開日】2014年5月28日 申請日期:2012年9月26日 優先權日:2011年9月27日
【發明者】B·庫克雷賈, P·孔達杜 申請人:甲骨文國際公司