專利名稱::在次最佳網(wǎng)格環(huán)境中維持應用工作的制作方法
技術領域:
:本發(fā)明一般涉及網(wǎng)格環(huán)境,特別是涉及在網(wǎng)格環(huán)境中管理應用工作。更具體地說,本發(fā)明涉及通過根據(jù)應用的簡表重新配置應用,在次最佳網(wǎng)格環(huán)境中維持應用工作,所述應用的簡表表示了網(wǎng)格環(huán)境中的工作需求。
背景技術:
:從在兩個計算機系統(tǒng)之間進行第一次連接開始到現(xiàn)在,通過連接在兩個計算機系統(tǒng)之間傳送數(shù)據(jù)、資源和其他信息的新的方法持續(xù)發(fā)展。在典型的網(wǎng)絡體系結構中,當兩個計算機系統(tǒng)正在通過連接交換數(shù)據(jù)時,計算機系統(tǒng)之一被認為是發(fā)送請求的客戶端,而另一個被認為是處理該請求并返回結果的服務器。在增加處理請求的速度的努力中,服務器系統(tǒng)在尺寸上和速度上持續(xù)擴展。此外,在對每秒到達多個請求時的峰值周期的處理的努力中,經(jīng)常將服務器系統(tǒng)連接在一起作為一個組,并在成組的服務器之間分配請求。已經(jīng)開發(fā)了多種對服務器進行分組的方法,諸如群集,多系統(tǒng)共享數(shù)據(jù)(sysplex)環(huán)境和企業(yè)系統(tǒng)。對于服務器群集,一個服務器通常被指定來管理輸入請求和輸出響應的分配。其他服務器通常并行工作來處理來自客戶端的經(jīng)分配的請求。因此,在群集中的多個服務器中的一個服務器可以服務于客戶請求而客戶不會檢測到服務器群集正在處理請求。通常,服務器或者服務器組工作在特定網(wǎng)絡平臺上,諸如Unix或者Unix的某種變體,并為運行的應用提供托管環(huán)境。每個網(wǎng)絡平臺可以提供從數(shù)據(jù)庫集成、群集服務、到工作量管理的安全和問題確定的范圍內(nèi)的功能(Unix是OpenGroup的商標)。每個網(wǎng)絡平臺通常提供不同應用的實現(xiàn)方式、語義行為和應用編程接口(API)。然而,僅僅將服務器組在一起以擴大處理能力是一種用于提高網(wǎng)絡中的響應時間的效率的受限制的方法。因此,在公司網(wǎng)絡中,日益增加地,不僅僅是對服務器分組,而是將服務器和服務器系統(tǒng)的組作為分布式資源組織起來。存在更多的努力來在公司網(wǎng)絡中和公司網(wǎng)絡的外部的服務器之間進行協(xié)作、共享數(shù)據(jù)、共享周期以及改善其他交互模式。此外,存在更多的努力來將非必要的元素從一個公司網(wǎng)絡外包(outsource)給服務提供者網(wǎng)絡。此外,存在一種趨勢來協(xié)調(diào)在不受同一管理系統(tǒng)支配但仍然解決安全、政策、支付和成員資格的問題的資源之間共享的資源。例如,在個人桌面上的資源通常不受與公司服務器群集的資源相同的管理系統(tǒng)的支配。甚至公司網(wǎng)絡中的不同的管理組可以實現(xiàn)截然不同的管理系統(tǒng)。將具有不同安全協(xié)議(每個安全協(xié)議由不同的管理系統(tǒng)控制)的、位于不同區(qū)域的、工作在不同網(wǎng)絡平臺上的服務器和其他計算系統(tǒng)可用的資源分散的問題導致了網(wǎng)格技術的發(fā)展,該技術使用用于運行網(wǎng)格環(huán)境的開放標準。網(wǎng)格環(huán)境支持在動態(tài)的、分布式的虛擬組織中的多種資源的共享和協(xié)調(diào)使用。當從由具有不同策略和管理系統(tǒng)的不同組織進行操作的、地理上分布式的系統(tǒng)中選擇資源被組織來處理作業(yè)請求時,在網(wǎng)格環(huán)境中創(chuàng)建虛擬組織。用于將網(wǎng)格環(huán)境與僅僅是另外一種管理系統(tǒng)的環(huán)境進行區(qū)分的網(wǎng)格環(huán)境的重要屬性是跨多種不同的資源集合所維持的服務質(zhì)量。優(yōu)選地,網(wǎng)格環(huán)境比僅僅提供資源做的更多;網(wǎng)格環(huán)境提供帶有特定級別服務的資源,包括響應時間、吞吐量、可用性、安全性和多個資源類型的協(xié)作分配,以滿足復雜的用戶要求。然而,在提供服務質(zhì)量的努力中,網(wǎng)格環(huán)境中的問題在于,當網(wǎng)絡系統(tǒng)的現(xiàn)實在于最優(yōu)性能不是總可獲得時,如何滿足性能需求。首先,網(wǎng)絡系統(tǒng)的現(xiàn)實在于,應用典型地被寫入來在具有特定工作需求的特定平臺上執(zhí)行。特別是,通常根據(jù)在特定平臺上的最優(yōu)條件下運行的度量來規(guī)定應用的工作需求。因此,當運行在非本地平臺或者資源上時,應用行為有著很大的不同。因此,當在網(wǎng)格環(huán)境中將多個異構的系統(tǒng)鏈接在一起時,存在當應用在非本地平臺上執(zhí)行時如何維持服務質(zhì)量的問題。特別是,當前沒有裝置來表示在網(wǎng)格環(huán)境中執(zhí)行的每個應用的工作需求,在所述網(wǎng)格環(huán)境中,用來執(zhí)行作業(yè)的可用資源可以在某個時間間隔內(nèi)迅速地改變。此外,網(wǎng)絡系統(tǒng)的現(xiàn)實在于應用通常是編寫的,其中應用的模塊被編寫來在具有相對靜態(tài)的資源池的特定平臺上執(zhí)行。因此,當為相對靜態(tài)的資源池編寫的應用遇到次最佳工作條件時,整個應用關閉。此外,在網(wǎng)格環(huán)境中,應用僅僅是網(wǎng)格體系結構的一個級別的功能。除了應用級別之外,多個級別和類型的服務可以由應用來實現(xiàn)。當這些服務層運行在網(wǎng)格環(huán)境中的多個異構平臺上時,存在相同的維持應用的服務質(zhì)量的問題。因此,鑒于上述觀點,需要一種方法、系統(tǒng)和程序來在網(wǎng)格環(huán)境中管理軟件層功能,并且特別是,來改變應用或者服務行為以維持服務質(zhì)量。因此,需要一種方法、系統(tǒng)和程序來表示在網(wǎng)格環(huán)境中使用的應用或者服務的工作需求,從而當在網(wǎng)格環(huán)境中檢測到次最佳性能時,可以基于應用的工作需求來重新配置應用或者服務的工作行為。
發(fā)明內(nèi)容在一實施例中,將應用提交給網(wǎng)格環(huán)境中的多個資源節(jié)點中的至少一個資源節(jié)點。然后,服務可用性管理代理監(jiān)視該至少一個資源節(jié)點的性能狀態(tài)。服務可用性管理代理將性能狀態(tài)與當應用正工作在該至少一個資源節(jié)點上時所規(guī)定的工作需求進行比較。特別是,為放置該至少一個資源節(jié)點的平臺而規(guī)定工作需求。此外,應用的簡表跨多個類型的平臺為應用規(guī)定工作需求。如果性能狀態(tài)不滿足工作需求,則服務可用性管理代理調(diào)節(jié)該至少一個資源節(jié)點的應用和網(wǎng)格環(huán)境的其他資源節(jié)點的使用,從而在網(wǎng)格環(huán)境中出現(xiàn)次最佳狀態(tài)時使應用持續(xù)工作。服務可用性管理代理可以調(diào)節(jié)應用使用的資源類型和數(shù)量。首先,服務可用性管理代理可以對于可替換資源節(jié)點所在的平臺類型,定位滿足為應用規(guī)定的工作需求的該資源節(jié)點,并重新將應用定位到可替換資源節(jié)點上。第二,服務可用性管理代理可以從應用簡表中標識應用的第一模塊并發(fā)送用于該至少一個資源節(jié)點的指令以關閉該第一模塊。特別是,模塊是通過應用協(xié)調(diào)的獨立的處理單元。在關閉模塊后,服務可用性管理代理確定應用是否仍可運行,并且如果應用仍可運行,則服務可用性管理代理監(jiān)視資源節(jié)點以確定是否需要關閉附加模塊。通常,應用簡表的目的是表示跨多個異構資源平臺的應用的工作需求,和表示應用的模塊關閉(breakdown)的優(yōu)先級,從而在檢測到應用的次最佳條件時可以調(diào)節(jié)應用對資源的使用。在一實施例中,應用的簡表為XML方案,它指定應用的屬性,以及在不同平臺上工作時和在關閉應用模塊之時應用的性能范圍。在可替換實施例中,應用的簡表可以通過其他協(xié)議的模式和數(shù)據(jù)文件來實現(xiàn)。在附帶的權利要求中闡明了被認為是本發(fā)明新穎特性的特征。然而,通過參考以下結合附圖的闡述性實施例的詳細描述,將最好地理解本發(fā)明本身以及其優(yōu)選使用模式、另外的目標和優(yōu)點,在附圖中圖1描述了計算機系統(tǒng)的一實施例,該計算機系統(tǒng)可以在網(wǎng)格環(huán)境中實現(xiàn),并且在該計算機系統(tǒng)中可以實現(xiàn)本發(fā)明;圖2是例示網(wǎng)格環(huán)境中的通常類型的組件的一實施例的框圖;圖3是描述可以在網(wǎng)格環(huán)境中實現(xiàn)的體系結構的一個示例的框圖;圖4是根據(jù)本發(fā)明的方法、系統(tǒng)和程序從網(wǎng)格管理系統(tǒng)的觀點描述了在網(wǎng)格環(huán)境中工作的系統(tǒng)的框圖;圖5是描述了可以實現(xiàn)本發(fā)明的網(wǎng)格環(huán)境的邏輯基礎設施的一個實施例的闡述性表示;圖6是描述了根據(jù)本發(fā)明的方法、系統(tǒng)和程序的SAMA控制器的一實施例的框圖;圖7是例示根據(jù)本發(fā)明的方法、系統(tǒng)和程序,通過重新路由應用來調(diào)節(jié)資源使用的一種方法的框圖;圖8描述了例示根據(jù)本發(fā)明的方法、系統(tǒng)和程序,通過重新配置應用的工作行為來調(diào)節(jié)資源使用的另一種方法的框圖;圖9A-9B描述了用于通過工作在次最佳條件下的網(wǎng)格環(huán)境中的應用來調(diào)節(jié)網(wǎng)格資源的使用的過程和程序的高級別邏輯流程圖;和圖10描述了用于在網(wǎng)格環(huán)境中處理狀態(tài)請求的過程和程序的高級別邏輯流程圖。具體實施例方式現(xiàn)在參考附圖并具體參考圖1,描述了計算機系統(tǒng)的一實施例,該計算機系統(tǒng)可以在網(wǎng)格環(huán)境中實現(xiàn),并且在該計算機系統(tǒng)中可以實現(xiàn)本發(fā)明。如將要進一步描述的,網(wǎng)格環(huán)境包括被管理來提供資源的多個計算機系統(tǒng)。此外,如將要進一步描述的,本發(fā)明可以在各種計算機系統(tǒng)中執(zhí)行,包括在網(wǎng)格環(huán)境中管理的若干不同工作系統(tǒng)下工作的各種計算系統(tǒng),移動系統(tǒng)和電子設備。在一實施例中,計算機系統(tǒng)100包括總線122或者用于在計算機系統(tǒng)100中傳送信息的其他設備和至少一個處理設備(諸如處理器112),其耦合到總線122上用來處理信息。總線122優(yōu)選地包括低延遲路徑和較高延遲路徑,它們通過橋和適配器進行連接,并在計算機系統(tǒng)100中由多個總線控制器進行控制。當作為服務器系統(tǒng)實現(xiàn)時,計算機系統(tǒng)100典型地包括被設計來提高網(wǎng)絡服務能力的多個處理器。處理器112可以是通用處理器,諸如IBM的PowerPC處理器,在正常工作期間,該處理器在操作系統(tǒng)和可以從諸如隨機存取存儲器(RAM)114的動態(tài)存儲設備和諸如只讀存儲器(ROM)116的靜態(tài)存儲設備訪問的應用軟件的控制下處理數(shù)據(jù)(IBM和PowerPC是國際商業(yè)機器公司的商標)。操作系統(tǒng)可以為用戶提供圖形用戶界面(GUI)。在優(yōu)選實施例中,應用軟件包含機器可執(zhí)行指令,當在處理器112上執(zhí)行時,該機器可執(zhí)行指令執(zhí)行圖9A-9B、10的流程圖所述的操作和這里所述的其他操作??商鎿Q地,本發(fā)明的步驟可以通過包含用于執(zhí)行這些步驟的硬件化的邏輯的特定硬件組件來執(zhí)行,或者通過已編程的計算機組件和定制的硬件組件的任意組合來執(zhí)行。本發(fā)明可以作為在機器可讀媒體上包括的計算機程序產(chǎn)品而被提供,機器可讀媒體上存儲了用于對計算機系統(tǒng)100進行編程以執(zhí)行根據(jù)本發(fā)明的過程的機器可執(zhí)行指令。這里所使用的術語“機器可讀媒體”包括參與向處理器112或計算機系統(tǒng)100的其他組件提供用于執(zhí)行的指令的任意媒體。這種媒體可以采用多種形式,包括但是不局限于非易失性媒體、易失性媒體和傳輸媒體。非易失性媒體的常見形式例如包括軟盤、軟磁盤、硬盤、磁帶或者任何其他磁媒體、光盤ROM(CD-ROM)或者任何其他光媒體,打孔卡或者任何其他帶有孔圖案的物理媒體、可編程ROM(PROM)、可擦寫PROM(EPROM)、電EPROM(EEPROM)、閃速存儲器、任何其他存儲芯片或者盒式磁帶(cartridge)、或者計算機系統(tǒng)100可以讀取并適合存儲指令的任何其他媒體。在本發(fā)明中,非易失性媒體的示例是海量存儲設備118,如圖所示,其是計算機系統(tǒng)100的內(nèi)部組件,但是將會理解,它還可以由外部設備提供。易失性媒體包括動態(tài)存儲器,諸如RAM114。傳輸媒體包括同軸電纜、銅線或者光纖,包括構成總線122的線。傳輸媒體還可以采用聲波或者光波的形式,諸如在射頻或者紅外數(shù)據(jù)傳輸期間生成的那些聲波或者光波。此外,本發(fā)明可以作為計算機程序產(chǎn)品下載,其中計算機指令可以從諸如虛擬資源160的遠程虛擬資源通過到與總線122耦合的通信接口132的網(wǎng)絡鏈路134(例如調(diào)制解調(diào)器或者網(wǎng)絡連接)以載波或者其他傳播媒體中包含的數(shù)據(jù)信號的方式傳輸?shù)秸埱笥嬎銠C系統(tǒng)100。虛擬資源160可以包括可從單個系統(tǒng)或者多個系統(tǒng)進行訪問的資源的虛擬表示,其中多個系統(tǒng)中的每一個都可以被看作工作在獨立平臺上的離散資源集合,但是由網(wǎng)格管理器作為虛擬資源進行協(xié)調(diào)。通信接口132提供了耦合到網(wǎng)絡鏈路134的雙向數(shù)據(jù)通信,網(wǎng)絡鏈路134可以連接在例如局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)或者因特網(wǎng)服務提供商(ISP),它們提供了對網(wǎng)絡102的訪問。特別是,網(wǎng)絡鏈路134可以提供對一個或者多個網(wǎng)絡(諸如網(wǎng)絡102)的有線和/或者無線網(wǎng)絡通信,通過這些網(wǎng)絡,對諸如虛擬資源160的虛擬資源的使用在由網(wǎng)格管理系統(tǒng)150提供時是可訪問的。網(wǎng)格管理系統(tǒng)150可以是包括點對點網(wǎng)絡的多種類型網(wǎng)絡的一部分,或者可以是單個計算機的一部分,諸如計算機系統(tǒng)100。作為一個示例,網(wǎng)絡102可以指世界范圍的網(wǎng)絡和網(wǎng)關集合,它們使用特定協(xié)議(諸如傳輸控制協(xié)議(TCP)和網(wǎng)際協(xié)議(IP))來相互進行通信。網(wǎng)絡102使用攜帶數(shù)字數(shù)據(jù)流的電、電磁或者光信號。經(jīng)過各種網(wǎng)絡的信號和在網(wǎng)絡鏈路134上和經(jīng)過通信接口132的信號是傳播信息的載波的示例性形式,其攜帶數(shù)字數(shù)據(jù)進入或者離開計算機系統(tǒng)100。將會理解,可以實現(xiàn)各種可替換類型的網(wǎng)絡、網(wǎng)絡的組合和網(wǎng)絡的基礎設施。當作為服務器系統(tǒng)實現(xiàn)時,計算機系統(tǒng)100典型地包括可以通過連接到輸入/輸出控制器的外圍組件互連(PCI)總線橋訪問的多個通信接口。按照這種方式,計算機系統(tǒng)100允許到多個網(wǎng)絡計算機的連接。此外,盡管沒有描述,但可以將多個外圍組件和內(nèi)部/外部設備添加到計算機系統(tǒng)100,它們連接于與總線122的多個級別之一相耦合的多個控制器、適配器和擴展槽。例如,顯示設備、音頻設備、鍵盤或者光標控制設備都可以作為外圍組件添加。本領域普通技術人員將會明白,圖1中描述的硬件可以變化。此外,本領域普通技術人員將會明白,所描述的示例并不意味著隱含對本發(fā)明的體系結構上的限定?,F(xiàn)在參考圖2,框圖例示了在網(wǎng)格環(huán)境中的通常類型組件的一實施例。在本實施例中,網(wǎng)格環(huán)境240的組件包括與網(wǎng)格管理系統(tǒng)150交互的客戶端系統(tǒng)200,網(wǎng)格管理系統(tǒng)150與服務器群集222、服務器224、工作站和臺式計算機226、數(shù)據(jù)存儲系統(tǒng)228和網(wǎng)絡230進行交互。出于例示的目的,沒有描述網(wǎng)格環(huán)境240中連接組件的網(wǎng)絡的網(wǎng)絡位置和類型。然而,將要理解的是,網(wǎng)格環(huán)境240中的組件可以駐留于可以通過相互重疊的多種類型的網(wǎng)絡來實現(xiàn)的網(wǎng)絡基礎設施體系結構之上。網(wǎng)絡基礎設施的范圍可以是從多個大型企業(yè)系統(tǒng)到點對點系統(tǒng)到單計算機系統(tǒng)。此外,將要理解的是,網(wǎng)格環(huán)境240中的組件僅僅是網(wǎng)格環(huán)境中若干類型組件的代表。網(wǎng)格環(huán)境可以僅被包含在單個計算機系統(tǒng)中,或者被包含在多個企業(yè)系統(tǒng)中。諸如網(wǎng)格環(huán)境240的網(wǎng)格環(huán)境的中心目標是對被視為虛擬資源160的來自多個離散系統(tǒng)的資源進行組織和遞送??蛻舳讼到y(tǒng)200、服務器群集222、服務器224、工作站和臺式計算機226、數(shù)據(jù)存儲系統(tǒng)228、網(wǎng)絡230和創(chuàng)建網(wǎng)格管理系統(tǒng)150的系統(tǒng)可以是異構的,并且通過獨立管理系統(tǒng)進行區(qū)域性分布,但是其被使能通過由網(wǎng)格管理系統(tǒng)150使能的網(wǎng)格基礎設施來交換信息、資源和服務。此外,服務器群集222、服務器224、工作站和臺式計算機226、數(shù)據(jù)存儲系統(tǒng)228和網(wǎng)絡230可以是地理上跨國家和大洲分布,或者相互可在本地訪問。在本示例中,客戶端系統(tǒng)200與網(wǎng)格管理系統(tǒng)150交互??蛻舳讼到y(tǒng)200可以表示向網(wǎng)格管理系統(tǒng)150發(fā)送請求的任何計算機系統(tǒng)。特別是,客戶端系統(tǒng)200可以將作業(yè)請求和作業(yè)發(fā)送到網(wǎng)格管理系統(tǒng)150。此外,雖然在本實施例中客戶端系統(tǒng)200被描述為利用請求來訪問網(wǎng)格環(huán)境240,但是在可替換實施例中客戶端系統(tǒng)200還可以在網(wǎng)格環(huán)境240中工作。雖然虛擬資源160中的系統(tǒng)是并行描述的,但在實際中,該系統(tǒng)可以是系統(tǒng)層次結構的一部分,其中,虛擬資源160中的某些系統(tǒng)可以位于客戶端系統(tǒng)200,而其他系統(tǒng)需要訪問外部網(wǎng)絡。此外,重要的是要注意,虛擬資源160中所描述的系統(tǒng)可以被物理包含于客戶端系統(tǒng)200中。網(wǎng)格管理系統(tǒng)150的一個功能是管理來自客戶端系統(tǒng)200的作業(yè)和作業(yè)請求,并控制將每個作業(yè)分配到虛擬資源160中的所選出的計算系統(tǒng)上,以使用虛擬資源160中的可用計算系統(tǒng)中的特定資源。然而,從客戶端系統(tǒng)200的觀點上,虛擬資源160處理請求并返回結果,而不用區(qū)分虛擬資源160中的哪個計算系統(tǒng)實際執(zhí)行該請求。為了實現(xiàn)網(wǎng)格環(huán)境240,網(wǎng)格管理系統(tǒng)150便利了網(wǎng)格服務。網(wǎng)格服務可以根據(jù)多種體系結構來進行設計,這些體系結構包括但是不局限于開放網(wǎng)格服務體系結構(OGSA)。特別是,網(wǎng)格管理系統(tǒng)150指的是通過將計算系統(tǒng)鏈接在異構網(wǎng)絡環(huán)境中而創(chuàng)建網(wǎng)格的管理環(huán)境,所述異構網(wǎng)絡環(huán)境的特征在于通過網(wǎng)格服務共享資源。網(wǎng)格環(huán)境240在被網(wǎng)格管理系統(tǒng)150管理時可以提供單一類型的服務或者多種類型的服務。例如,計算網(wǎng)格、拾遺網(wǎng)格和數(shù)據(jù)網(wǎng)格是在網(wǎng)格環(huán)境中提供的服務類型的示例類別。計算網(wǎng)格可以管理高性能服務器的計算資源。拾遺網(wǎng)格可以跨臺式計算機系統(tǒng)對CPU資源和數(shù)據(jù)存儲資源進行拾遺。數(shù)據(jù)網(wǎng)格可以管理例如多個組織或者企業(yè)可訪問的數(shù)據(jù)存儲資源。將要明白的是,網(wǎng)格環(huán)境不限于單一類型的網(wǎng)格類別。參考圖3,框圖例示了可以在網(wǎng)格環(huán)境中實現(xiàn)的體系結構的一個示例。如所述,體系結構300包括多個功能層。如同將要進一步描述的,本發(fā)明是在體系結構的一個或者多個層中實現(xiàn)的過程,所述體系結構諸如體系結構300,它在網(wǎng)格環(huán)境(諸如圖2所述的網(wǎng)格環(huán)境)中實現(xiàn)。重要的是注意到,體系結構300僅僅是可以在網(wǎng)格環(huán)境中實現(xiàn)的以及可以實現(xiàn)本發(fā)明的體系結構的一個示例。此外,重要的是注意到,可以在網(wǎng)格環(huán)境中實現(xiàn)多個體系結構。在體系結構300中,首先,物理與邏輯資源層330組織網(wǎng)格中的系統(tǒng)的資源。物理資源包括但是不局限于服務器、存儲媒體和網(wǎng)絡。邏輯資源將物理層虛擬化并聚集在可用資源中,所述可用資源諸如操作系統(tǒng)、處理能力、存儲器、I/O處理、文件系統(tǒng)、數(shù)據(jù)庫管理器、目錄、存儲器管理器和其他資源。接著,Web服務層320在網(wǎng)格服務310和物理與邏輯資源330之間提供接口。Web服務層320實現(xiàn)在網(wǎng)際協(xié)議(IP)或者其他網(wǎng)絡傳輸層之上執(zhí)行的服務接口,它包括但是不局限于Web服務描述語言(WSDL)、簡單對象訪問協(xié)議(SOAP)和可擴展標記語言(XML)。此外,開放網(wǎng)格服務基礎設施(OSGI)標準322通過擴展Web服務320而構建在當前Web服務320之上,以提供為網(wǎng)格資源建模所需要的動態(tài)和可管理的Web服務的能力。特別是,通過實現(xiàn)具有Web服務320的OGSA標準322,使用OGSA來設計的網(wǎng)格服務310可相互操作。在可替換實施例中,其他基礎設施或者附加的基礎設施可以在Web服務層320的頂部實現(xiàn)。網(wǎng)格服務層310包括多種服務。例如,網(wǎng)格服務層310可以包括使用OGSA來設計的網(wǎng)格服務,使得在創(chuàng)建網(wǎng)格服務時實現(xiàn)統(tǒng)一標準??商鎿Q地,可以在多種體系結構下設計網(wǎng)格服務。網(wǎng)格服務可以被分組為四個主要功能。然而,將要理解的是,網(wǎng)格服務也可以執(zhí)行其他功能。首先,資源管理服務302管理物理與邏輯資源的使用。資源可以包括但是不局限于處理資源、存儲器資源和存儲資源。對這些資源的管理包括接收作業(yè)請求、調(diào)度作業(yè)請求、分配作業(yè)以及管理作業(yè)結果的檢索。資源管理服務302優(yōu)選地監(jiān)視資源負載,將作業(yè)分配到網(wǎng)格的較不忙碌部分以平衡資源負載,并承受非期望的活動峰值。特別是,用戶可以規(guī)定優(yōu)選性能級別,從而資源管理服務302分配作業(yè)以在網(wǎng)格中維持該優(yōu)選性能級別。第二,信息服務304管理網(wǎng)格中的計算系統(tǒng)之間的信息傳送和通信。由于可以實現(xiàn)多種通信協(xié)議,因此信息服務304優(yōu)選地使用多種類型的通信協(xié)議來管理跨多個網(wǎng)絡的通信。第三,數(shù)據(jù)管理服務306管理網(wǎng)格中的數(shù)據(jù)傳送和存儲。特別是,數(shù)據(jù)管理服務306可以將數(shù)據(jù)移動到網(wǎng)格中的節(jié)點,所述節(jié)點中將要執(zhí)行需要數(shù)據(jù)的作業(yè)??梢詫崿F(xiàn)特定類型的傳輸協(xié)議,諸如網(wǎng)格文件傳輸協(xié)議(GridFTP)。最后,安全服務308為了在網(wǎng)格中工作的每個系統(tǒng)的連接層上的安全而應用安全協(xié)議。安全服務308可以實現(xiàn)安全協(xié)議,諸如開放安全套接層(SSL),以提供安全的傳輸。此外,安全服務308可以提供單個注冊機制,從而一旦用戶被認證,就創(chuàng)建代理證書,并且該代理證書當在網(wǎng)格中執(zhí)行動作時為用戶所用。多種服務可以一同工作以提供網(wǎng)格計算系統(tǒng)的若干關鍵功能。在第一示例中,在網(wǎng)格中分配計算作業(yè)。數(shù)據(jù)管理服務306可以將計算作業(yè)劃分為獨立的網(wǎng)格服務請求數(shù)據(jù)包,其隨后由資源管理服務302進行分配并進行管理。結果由數(shù)據(jù)管理服務306收集并進行整理。在第二示例中,跨網(wǎng)格中多個計算系統(tǒng)的存儲資源被看作由數(shù)據(jù)管理服務306管理并由資源管理服務302監(jiān)視的單一虛擬數(shù)據(jù)存儲系統(tǒng)。應用層340包括使用網(wǎng)格服務層310中可用的一個或者多個網(wǎng)格服務的應用。有利的是,應用通過網(wǎng)格服務層310和Web服務320與物理與邏輯資源330進行接口,從而使多種異構系統(tǒng)能夠相交互和相互操作。例如,應用可以在網(wǎng)站“www.ibm.com”上得到。網(wǎng)站為用戶提供了進入點,以發(fā)送作業(yè)請求而從服務(諸如目錄搜索引擎或者企業(yè)到企業(yè)服務)中進行選擇。重要的是注意到,盡管應用和網(wǎng)格服務位于網(wǎng)格體系結構300的不同層中,但通常所指的應用也包括通過應用而暴露的網(wǎng)格服務?,F(xiàn)在參考圖4,根據(jù)本發(fā)明的方法、系統(tǒng)和程序從網(wǎng)格管理系統(tǒng)的觀點描述了在網(wǎng)格環(huán)境中工作的系統(tǒng)的框圖。如圖1所述,計算機系統(tǒng)包括多個硬件組件。然而,作為網(wǎng)格環(huán)境的一部分,這些硬件組件被看作是資源。例如,系統(tǒng)400包括應用資源402、兩個CPU資源404和406、存儲器資源408和存儲資源410。在系統(tǒng)400中的資源典型地屬于在網(wǎng)格環(huán)境中觀察時的資源類型,然而,在可替換實施例中,可以提供其他類型的資源。此外,例如,在系統(tǒng)400中的資源可以是物理地位于單一計算機系統(tǒng)中,或者跨由網(wǎng)絡連接的多個計算機系統(tǒng)進行分布。作為圖2所述的網(wǎng)格管理系統(tǒng)的一部分,網(wǎng)格管理器和路由器(GM)424提供在系統(tǒng)400的資源和發(fā)送請求的客戶端系統(tǒng)之間的接口。特別是,帶有GM424的資源監(jiān)視器422監(jiān)視系統(tǒng)400中每個可用資源的工作狀態(tài)。GM424優(yōu)選地將狀態(tài)報告發(fā)送到網(wǎng)格環(huán)境中的其他網(wǎng)格管理器和路由器,以指示系統(tǒng)400中資源的可用性。此外,狀態(tài)報告可以描述系統(tǒng)400的計算機硬件、操作系統(tǒng)和資源。例如,在系統(tǒng)400加入或者離開網(wǎng)格環(huán)境時,在預定的時間間隔以及在特定的預定事件中檢測到閾值時,可以生成狀態(tài)報告,所述特定的預定事件包括但是不局限于硬件故障或者應用或者服務的一部分失效?,F(xiàn)在參考圖5,闡述性表示描述了可以實現(xiàn)本發(fā)明的網(wǎng)格環(huán)境的邏輯基礎設施的一個實施例。盡管圖2描述了在網(wǎng)格環(huán)境的通用組件的示例,但在本圖中,闡述了在網(wǎng)格環(huán)境540中,如何在網(wǎng)格環(huán)境中邏輯地看待通用組件的示例。特別是,網(wǎng)格管理系統(tǒng)功能被邏輯地散布在多個GM中,諸如GM504、GM510和GM520。此外,虛擬資源被邏輯地散布在多個資源(RS)中,諸如RS506、RS508、RS512、RS514、RS522和RS524。重要的是注意到,資源可能不是物理資源的直接表示,而是一個或者多個物理資源和/或者物理資源組的邏輯表示。在示例中,客戶端系統(tǒng)200發(fā)送作業(yè)請求到GM504。GM504搜索可用以處理在作業(yè)請求中規(guī)定的作業(yè)的資源。特別是,GM504檢查RS506和RS508是否可以處理在作業(yè)請求中規(guī)定的作業(yè),以及是否可以發(fā)送查詢到其他GM,諸如GM510或GM520。GM510和520返回關于處理作業(yè)請求的資源的可用性的報告。特別是,作業(yè)請求優(yōu)選地包括通過特定應用進行的對于網(wǎng)格服務的請求。通常,應用是自包含的,但是暴露出網(wǎng)格服務層。對于處理作業(yè)請求所必須的資源是對于處理由所訪問的應用和服務所規(guī)定的請求所必須的那些資源。為了闡述的目的,RS506和RS508被看作是本地資源或者是在同一離散資源集合中的資源,其中作業(yè)從客戶端系統(tǒng)200提交到所述離散資源集合。在以下示例中,當RS506和508不滿足來自客戶端系統(tǒng)200的對作業(yè)的性能要求時,則可以分配額外的資源,包括在同一離散資源集合中的其他資源、對要求資源的容量、來自內(nèi)部網(wǎng)格的資源和最終來自外部網(wǎng)格的資源。更具體的說,在示例中,GM510、RS512和RS514是由第一企業(yè)操作用來提供對于第一規(guī)定價格的第一規(guī)定數(shù)量的網(wǎng)格服務的一個網(wǎng)格基礎設施“網(wǎng)格A”的一部分企業(yè)。然后,GM520、RS522和RS524是由第二企業(yè)操作用來提供對于第二規(guī)定價格的第二規(guī)定數(shù)量的網(wǎng)格服務的另一個網(wǎng)格基礎設施“網(wǎng)格B”的一部分。當GM504發(fā)送作業(yè)請求到GM510和GM520時,每個GM優(yōu)選地報告是否可以處理作業(yè)請求和處理該請求的價格。相對于客戶端系統(tǒng)200,網(wǎng)格A和B可以是工作在與客戶端系統(tǒng)200相同的企業(yè)系統(tǒng)中的內(nèi)部網(wǎng)格或者外部網(wǎng)格。在接收到資源可用性的報告后,GM504收集用于處理該作業(yè)的選項,并將選項返回客戶端系統(tǒng)200。然后客戶端系統(tǒng)200可以決定選擇優(yōu)選選項并根據(jù)所選出的選項發(fā)送作業(yè)以完成處理。GM504管理將作業(yè)結果返回到客戶端系統(tǒng)200。在由客戶端系統(tǒng)200選出的選項中使用的資源形成用于處理作業(yè)的虛擬組織。例如,如果客戶端系統(tǒng)200基于從GM510返回的選項,選擇一個處理作業(yè)的選項,則可以形成一虛擬組織以處理作業(yè),該虛擬組織將包括GM504、GM510、RS512和RS514。根據(jù)本發(fā)明的一個優(yōu)點,服務可用性管理代理(SAMA)530在網(wǎng)格環(huán)境540中優(yōu)選地是可訪問的。SAMA為網(wǎng)格環(huán)境540執(zhí)行監(jiān)視網(wǎng)格資源、策略調(diào)整、應用簡表管理、分析處理和問題分派的功能。SAMA530可以由動態(tài)策略控制,在執(zhí)行差錯管理時所述動態(tài)政策管理它的行為。特別是,當使應用和服務降級到最小工作級別或者降級到根本沒有服務的地步的次最佳條件出現(xiàn)時,在網(wǎng)格環(huán)境540中可能出現(xiàn)錯誤。這種次最佳性能出現(xiàn)的原因可能是系統(tǒng)故障、網(wǎng)絡基礎設施撤銷(dropping)或者過載或者在網(wǎng)格環(huán)境540中出現(xiàn)的其他故障。特別是,當在網(wǎng)格環(huán)境540中檢測到次最佳條件時,SAMA530優(yōu)選地管理網(wǎng)格資源的使用,以允許應用和服務繼續(xù)工作。特別是,SAMA530可以調(diào)整提供給應用和服務的資源類型和數(shù)量,努力保持應用和服務的運行。例如,SAMA530可以將應用或服務移動到新的資源節(jié)點集。此外,例如,SAMA530可以對應用的工作行為進行重新配置以使用較少的資源。特別是,SAMA530可以被合并在單個系統(tǒng)中或者跨多個系統(tǒng)分布。此外,在圖3的網(wǎng)格體系結構300中,可以在多個級別中實現(xiàn)SAMA530。例如,可以將SAMA530部分地作為Web服務或者部分地作為資源管理服務來實現(xiàn)。重要的是要注意,SAMA530可以管理應用和服務二者對網(wǎng)格資源的使用,為了舉例的目的,將描述對應用的網(wǎng)格資源的管理。此外,將要理解的是,SAMA530可以通過在網(wǎng)格環(huán)境540中工作的其他控制器和代理來管理網(wǎng)格資源的使用?,F(xiàn)在參考圖6,是根據(jù)本發(fā)明的方法、系統(tǒng)和程序的SAMA控制器的一實施例的框圖。如圖所述,SAMA530包括多個控制器和一個SAMA數(shù)據(jù)庫610。首先,資源監(jiān)視器606監(jiān)視在網(wǎng)格資源中的資源的性能和可用性。更具體的,例如,資源監(jiān)視器可以監(jiān)視資源使用、容量和吞吐量。推論分析控制器604優(yōu)選地從工作在網(wǎng)格環(huán)境中的系統(tǒng)接收消息,并解析該消息以確定特定的請求。特別是,消息可以包括作業(yè)請求。作業(yè)請求可以調(diào)用為網(wǎng)格可用的應用所公布的一個或者多個特定服務。每個應用優(yōu)選地擁有存儲在簡表612中的簡表。出于舉例的目的,網(wǎng)格應用簡表數(shù)據(jù)庫612包括每個應用的簡表的XML表示的文檔類型定義(DTD)。重要的是要注意,盡管管理資源使用的簡表的應用的示例專注在應用的資源使用上,但可以為在網(wǎng)格體系結構中的所有功能層(包括服務)規(guī)定簡表。在表格1中闡述了應用簡表的示例性方案。在示例中,闡述了應用屬性信息的類型的樣本,它可以被包括在應用簡表中。特別是,可以規(guī)定應用的名稱、版本、描述、開發(fā)者名稱、擁有者名稱和代碼大小。下一步,在示例中,對在網(wǎng)格環(huán)境中可用于使應用工作的每個平臺,規(guī)定了應用的最小性能和最大性能的需求的樣本。此外,包括了應用的模塊和基于平臺的所期望性能。模塊定義可以包括例如模塊名稱、模塊數(shù)據(jù)、所需資源數(shù)量和優(yōu)先級編號。平臺定義可以包括例如平臺名稱、平臺的版本和描述、最大和最小存儲器大小、對稱式多處理器(SMP)系統(tǒng)的最大和最小CPU需求、最大和最小CPU時鐘速度以及工作名稱和版本。此外,由于安全需求,對于應用將要在其上工作的任何平臺,應用簡表可以規(guī)定特定類型的所需要的平臺證書,其中所述證書指示出該平臺已經(jīng)經(jīng)歷了由某種安全標準(諸如通用標準(CC))確保的某個級別的保證機制。將要理解的是,盡管應用簡表的本示例是XML表示,但也可以實現(xiàn)其他類型的簡表的表示。將要理解的是,該示例性方案還可以被應用于網(wǎng)格環(huán)境中的服務、代理和其他控制器。此外,如本領域技術人員將要理解的,在本發(fā)明的實現(xiàn)中,可以將其他類型的信息包括在應用簡表中。簡表管理控制器602將應用簡表的最大和最小工作需求與當前工作條件進行比較,以確定網(wǎng)格是否在最佳條件下工作。如果網(wǎng)格沒有在最佳條件下運行,則簡表管理控制器602優(yōu)選地確定是否可對應用進行調(diào)度,使其在另外一個或多個資源節(jié)點上運行。特別是,簡表管理控制器602將額外的資源節(jié)點的平臺與在應用簡表中所規(guī)定的應用的平臺需求進行比較。此外,如果額外的節(jié)點不可用,則簡表管理控制器602確定是否可以對應用的模塊進行降級或者關閉,同時仍然維持根據(jù)應用簡表的最小工作條件。特別是,簡表管理控制器602可以處理應用簡表,以確定為應用標識的模塊。在一個示例中,為每個模塊分配資源大小需求和要除去(prune)或者關閉的優(yōu)先級。簡表管理控制器602優(yōu)選地根據(jù)每個模塊的優(yōu)先級和資源大小需求來關閉模塊。可替換地,在SAMA530接收到的消息可以包括對于網(wǎng)格環(huán)境的可用性的狀態(tài)請求,以在客戶端系統(tǒng)發(fā)送作業(yè)之前處理作業(yè)。特別是,服務清單數(shù)據(jù)庫616維持網(wǎng)格中可用的服務和應用的當前狀態(tài)。服務清單數(shù)據(jù)庫616優(yōu)選地只要模塊被關閉就進行更新,從而基于服務清單數(shù)據(jù)庫616中的狀態(tài)而高效地返回對狀態(tài)請求的響應。在簡表管理控制器602調(diào)節(jié)網(wǎng)格資源的使用之前,推論分析控制器604可將應用請求或者所監(jiān)視的次最佳條件與策略數(shù)據(jù)庫614中的網(wǎng)格策略進行比較。特別是,網(wǎng)格策略可以規(guī)定網(wǎng)格環(huán)境的整體工作需求。此外,在簡表管理控制器602正在調(diào)節(jié)網(wǎng)格資源的使用時,網(wǎng)格策略可以規(guī)定特定應用可用的資源的類型和數(shù)量。表1<xmlversion=”1.0”encoding=“UTF-8”><!--***************************************************************************************ApplicationProfileDTD-Version1.0***************************************************************************************+:Oneormorepermitted*:Zeroormorepermitted:Optional***************************************************************************************--><!--ApplicationProfileDefinition--><!ELEMENTApplication(ApplicationData,AppVitalSecurity+)><!-Applicationattributeinformation--><!ELEMENTApplicationData><!ATTLISTApplicationDataNameCDATA#REQUIREDVersionCDATA#REQUIREDDescriptionCDATA#REQUIREDDeveloperNameCDATA#REQUIREDOwnerNameCDATA#REQUIREDCodeSizeCDATA#REQUIRED><!ELEMENTAppVital(PruneModule*,Platform+)><!ATTLISTAppVitalminimalPerformanceCDATA#REQUIREDmaximumPerformanceCDATA#REQUIRED<!-PruneModuleDefinition--><!ELEMENTPruneModuleEMPTY><!ATTLISTPruneModuleModuleNameCDATA#REQUIREDModuleDataCDATA#REQUIREDResourceAmtCDATA#REQUIREDPriorityNumberCDATA#REQUIRED<!-PlatformsupportedDefinition--><!ELEMENTPlatformEMPTY><!ATTLISTPlatformNameCDATA#REQUIREDVersionCDATA#REQUIREDDescriptionCDATA#REQUIREDMaxMemorySizeCDATA#REQUIREDMinMemorySizeCDATA#REQUIREDMaxCPUCDATA#REQUIREDMinCPUCDATA#REQUIREDMaxSpeedCDATA#REQUIREDMinCDATA#REQUIREDOSNameCDATA#REQUIREDOSVersionCDATA#REQUIREDevalNameCDATA#IMPLIEDevalProviderCDATA#IMPLIEDevalLevelCDATA#IMPLIEDevalDateIssuedCDATA#IMPLIED><!-SecurityInformationDefinition--><!ELEMENTSecurityEMPTY><!ATTLISTSecurityKeyType(SYMMETRIC|ASYMMETRIC)CDATA#REQUIREDalgorithmNameCDATA#REQUIREDalgorithmAttributeCDATA#IMPLIEDKeyLengthCDATA#REQUIREDKeyIndentifierCDATA#REQUIREDKeyUsage(Authentication|Encryption|Signature)CDATA#REQUIREDeExportable(TRUE|FALSE)CDATA#REQUIREDcertificateType(X509V1|X509V3|OTHER)CDATA#IMPLIEDcertificateNameCDATA#IMPLIEDcertificateAttributeCDATA#IMPLIEDcSProviderType(Software|Hardware)CDATA#REQUIREDssmNameCDATA#IMPLIEDssmVersionCDATA#IMPLIEDssmExtNameCDATA#IMPLIEDssmExtVersionCDATA#IMPLIEDhsmNameCDATA#IMPLIEDhsmVersionCDATA#IMPLIEDhsmFirmNameCDATA#IMPLIEDhsmFirmVersionCDATA#IMPLIEDhsmExtNameCDATA#IMPLIEDhsmExtVersionCDATA#IMPLIEDevalNameCDATA#IMPLIEDevalProviderCDATA#IMPLIEDevalLevelCDATA#IMPLIEDevalDateIssuedCDATA#IMPLIED>現(xiàn)在參考圖7,所描述的框圖闡述了根據(jù)本發(fā)明的方法、系統(tǒng)和程序,通過重新路由應用來調(diào)節(jié)資源使用的一種方法。如所述,應用700首先運行在工作在平臺706的節(jié)點A的資源上。應用700運行在平臺706上的工作需求優(yōu)選地在應用700的簡表中定義。如果根據(jù)該簡表,應用700在平臺706上運行的性能是次最佳的,則SAMA可以搜索可用來滿足應用700的工作需求的其他資源。在該示例中,運行在平臺708上的節(jié)點B是可用來滿足應用700的應用簡表規(guī)定的平臺708的工作需求。一旦為應用700定位了新節(jié)點,SAMA就可以引導作業(yè)路由器,以將應用從節(jié)點A重新引導到節(jié)點B,并開始監(jiān)視節(jié)點B的性能。盡管本示例的描述是參考將應用從一個平臺上的一個節(jié)點移動到另一平臺上的另一節(jié)點上,但將要理解的是,應用可以從相同平臺中的一個資源節(jié)點移動到另一資源節(jié)點,或者可以從一個群集的資源節(jié)點移動到另一群集的資源節(jié)點?,F(xiàn)在參考圖8,所描述的框圖闡述了根據(jù)本發(fā)明的方法、系統(tǒng)和程序,通過重新配置應用的工作行為來調(diào)節(jié)資源使用的另一種方法。如所述,應用700包括多個獨立的處理模塊A-N。模塊A-N可以由單個資源或者多個資源進行處理。此外,取決于模塊所需要的資源大小,可以跨多個資源處理單個模塊。特別是,在應用700的簡表中,優(yōu)選地為每個模塊規(guī)定關閉優(yōu)先級。在該示例中,應用700的模塊A、B和N在網(wǎng)格環(huán)境中的一個或者多個節(jié)點上執(zhí)行。網(wǎng)格環(huán)境僅僅能夠提供應用700的次最佳性能。因此,SAMA確定應用700的模塊是否可以被關閉,從而應用700的若干部分可以繼續(xù)工作,而不必關閉整個應用。在該示例中,向模塊B分配最高關閉優(yōu)先級。SAMA可以確定該最高關閉優(yōu)先級的模塊所消耗的資源到了應該關閉該模塊的程度。SAMA可以發(fā)送指令到運行模塊B的一個或多個節(jié)點以關閉該模塊。如果在關閉模塊B后性能仍然保持在次最佳,則SAMA可以發(fā)送指令以關閉額外的模塊?,F(xiàn)在參考圖9A-9B,例示了通過工作在次最佳條件下的網(wǎng)格環(huán)境中的應用來調(diào)節(jié)網(wǎng)格資源的使用的過程和程序的高級別邏輯流程圖。如所述,過程開始于框900,然后前進到框902???02描述了對是否接收到作業(yè)請求的確定。如果未接收到作業(yè)請求,則過程在框902重復。如果接收到作業(yè)請求,則過程進入到框904。框904描述檢索通過發(fā)出作業(yè)請求的應用所調(diào)用的至少一個應用的應用簡表。接著,框905描述根據(jù)應用簡表和網(wǎng)格策略來調(diào)度資源。其后,框906描述將該作業(yè)提交到所選擇的網(wǎng)格資源,并且過程進入框907???07闡述了監(jiān)視運行應用的資源的網(wǎng)格性能。其后,框908描述了對于在與應用簡表進行比較時是否檢測到應用的次最佳條件的確定。如果沒有檢測到次最佳條件,則過程返回框907。如果檢測到次最佳條件,則過程進入框910???10描述了搜索其他節(jié)點以重新定位應用,以滿足來自應用簡表的對于應用正在運行的特定平臺的應用工作需求。接著,框912描述了對于重新定位的節(jié)點是否可用的確定。該確定可以首先需要基于網(wǎng)格策略來確定哪些資源對于應用是可用的。然后,可以做出哪些可用資源滿足為支持可用資源的平臺所規(guī)定的應用簡表的工作需求的確定。如果重新定位節(jié)點可用,則框920描述將應用重新定位在重新定位節(jié)點,并在應用被調(diào)用時過程返回框907。如果重新定位節(jié)點不可用,則過程進入到框914???14描述了分析應用的簡表以確定應用的第一優(yōu)先級模塊。接著,框916描述了對于SAMA是否應該關閉模塊的確定。特別是,SAMA可以確定關閉模塊是否將釋放足夠的資源以增加應用的整體性能。此外,網(wǎng)格策略和額外應用簡表信息可以控制SAMA是否決定關閉模塊。如果SAMA不應該關閉模塊,則過程進入到框932,這將進一步進行描述。如果SAMA應該關閉模塊,則過程進入框918???18描述了發(fā)送XML消息到運行應用的模塊,其中該消息包括對重新配置應用的認證和授權。將要理解的是,可以實現(xiàn)其他事務協(xié)議。接著,框922描述了對于是否接收到模塊已經(jīng)關閉的確認的確定。如果沒有接收到該確認,則過程在框922重復一段時間。如果接收到該確認,則過程進入到框924???24描述了基于資源性能來重新評估網(wǎng)格狀態(tài)。接著,框926描述了對于是否需要附加步驟來重新配置應用的確認。特別是,如果在關閉一個模塊之后應用繼續(xù)工作在次最佳條件下,則應用可能需要附加的重新配置。如果需要附加步驟,則過程進入框932,這將進一步進行描述。如果不需要附加步驟,則過程進入到框928。框928描述了允許應用通過降級后的模塊來運行。接著,框930描述了通過降級后的級別來更新可用應用的清單,然后所述過程結束。如前所述,所述過程可以進入到框932???32描述了對于應用在降級后的狀態(tài)下是否仍然可以工作的確定。如果應用無法繼續(xù)工作,則所述過程進入到框936???36描述了向請求者警告錯誤信息,并且所述過程結束??商鎿Q地,如果應用仍然可以工作,則所述過程進入到框934???34描述了分析應用簡表,以確定應用的下一優(yōu)先級模塊,并且所述過程進入到框916?,F(xiàn)在參考圖10,描述了用于在網(wǎng)格環(huán)境中處理狀態(tài)請求的過程和程序的高級別邏輯流程圖。如所述,過程開始于框1000,然后進入到框1002???002描述了接收到請求,以預先確定用于應用的資源充足性。接著,框1004描述檢查服務清單數(shù)據(jù)庫以找到當前的資源充足性。可以發(fā)送監(jiān)視請求到潛在受影響的資源,以確定當前的資源可用性。最后,框1006描述了返回資源充足性的XML狀態(tài)請求響應,并且所述過程結束。盡管已經(jīng)參考優(yōu)選實施例具體地示出并描述了本發(fā)明,但本領域技術人員將要理解,可以在形式上和細節(jié)上進行各種改變而不會背離本發(fā)明的精神和范圍。特別是,重要的是要注意,盡管本發(fā)明的描述集中于工作在網(wǎng)格應用、服務、代理和控制器的語境中的發(fā)明,但是一般而言,本發(fā)明還可以應用于普通Web服務的語境中和分布式體系結構中。權利要求1.一種用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,包括將應用提交到網(wǎng)格環(huán)境中的多個資源節(jié)點中的至少一個資源節(jié)點;監(jiān)視所述至少一個資源節(jié)點的性能狀態(tài);將所述性能狀態(tài)與在所述應用正工作在所述至少一個資源節(jié)點時所規(guī)定的工作需求進行比較;以及響應于所述性能狀態(tài)不滿足所述工作需求,調(diào)節(jié)對所述至少一個資源節(jié)點的所述應用的使用,使得在所述網(wǎng)格環(huán)境中出現(xiàn)次最佳條件時所述應用繼續(xù)工作。2.如權利要求1所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,其中,調(diào)節(jié)對所述至少一個資源節(jié)點的所述應用的使用還包括在所述網(wǎng)格環(huán)境中的所述多個資源節(jié)點中定位至少一個其他資源節(jié)點,所述至少一個其他資源節(jié)點滿足當所述應用正在所述至少一個其他資源節(jié)點上工作時為所述應用規(guī)定的所述工作需要;以及將所述應用重新定位在所述網(wǎng)格環(huán)境中的所述至少一個其他資源節(jié)點上。3.如權利要求1所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,其中,調(diào)節(jié)對所述至少一個資源節(jié)點的所述應用的使用還包括標識將要關閉的所述應用的第一模塊;以及向所述至少一個資源節(jié)點發(fā)送消息來關閉所述第一模塊。4.如權利要求3所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,其中,標識將要關閉的所述應用的第一模塊還包括搜索所述應用的應用簡表以標識所述第一模塊,其中,所述應用簡表定義了所述第一模塊并確定所述第一模塊的優(yōu)先級。5.如權利要求3所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,還包括確定所述應用在沒有所述第一模塊時是否能夠繼續(xù)工作;以及響應于對于所述應用在沒有所述第一模塊時不能繼續(xù)工作的確定,向請求所述應用的客戶端系統(tǒng)返回所述應用的錯誤消息;以及響應于對于所述應用在沒有所述第一模塊時能夠繼續(xù)工作的確定,確定如果在關閉所述第一模塊后所述性能狀態(tài)不滿足所述工作需求,那么下一個模塊是否應該被標識為將要關閉。6.如權利要求1所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,其中,所述至少一個資源節(jié)點工作在規(guī)定了所述工作請求的至少一個平臺上。7.如權利要求1所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,還包括響應于接收到所述應用的作業(yè)請求,訪問所述應用的簡表,其中,所述簡表為其上分布有所述多個資源節(jié)點的多個平臺規(guī)定所述應用的所述工作需求。8.如權利要求7所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,其中,所述應用的所述簡表還包括所述應用的多個屬性的XML表示,以及當在所述多個平臺中的每一個上工作時所述應用的性能范圍。9.如權利要求1所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,還包括響應于接收到所述應用的作業(yè)請求,訪問所述應用的簡表,其中,所述簡表規(guī)定了所述應用的至少一個模塊,以及用于在調(diào)節(jié)對所述至少一個資源節(jié)點的所述使用時關閉所述至少一個模塊的優(yōu)先級。10.如權利要求9所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,其中,所述應用的所述簡表還包括所述應用的多個屬性的XML表示,以及用于在關閉所述至少一個模塊時所述應用實現(xiàn)的性能范圍。11.如權利要求1所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的方法,其中,所述應用是工作在所述網(wǎng)格環(huán)境中的獨立應用、服務、代理和控制器中的一個。12.一種用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),包括網(wǎng)格管理控制器,用于控制工作在網(wǎng)格環(huán)境中可控的多個資源中的至少一個資源節(jié)點上的應用的路由;監(jiān)視裝置,用于監(jiān)視所述至少一個資源節(jié)點的性能狀態(tài);比較裝置,用于將所述性能狀態(tài)與在所述應用正工作在所述至少一個資源節(jié)點時所規(guī)定的工作需求進行比較;以及調(diào)節(jié)裝置,用于響應于所述性能狀態(tài)不滿足所述工作需求,調(diào)節(jié)對所述至少一個資源節(jié)點的所述應用的使用。13.如權利要求12所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),其中,所述調(diào)節(jié)裝置還包括用于在所述網(wǎng)格環(huán)境中的所述多個資源節(jié)點中定位至少一個其他資源節(jié)點的裝置,所述至少一個其他資源節(jié)點滿足當所述應用正在所述至少一個其他資源節(jié)點上工作時為所述應用規(guī)定的所述工作需要;以及用于將所述應用重新路由到所述網(wǎng)格環(huán)境中的所述至少一個其他資源節(jié)點的裝置。14.如權利要求12所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),其中,所述調(diào)節(jié)裝置還包括用于標識將要關閉的所述應用的第一模塊的裝置;以及用于向所述至少一個資源節(jié)點發(fā)送消息以關閉所述第一模塊的裝置。15.如權利要求14所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),其中,所述用于標識將要關閉的所述應用的第一模塊的裝置還包括所述應用的簡表,其中所述應用簡表定義了所述第一模塊并確定所述第一模塊的優(yōu)先級;以及用于搜索所述應用簡表以標識所述第一模塊的裝置。16.如權利要求14所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),還包括用于確定所述應用在沒有所述第一模塊時是否能夠繼續(xù)工作的裝置;以及用于響應于關于所述應用在沒有所述第一模塊時不能繼續(xù)工作的確定,向請求所述應用的客戶端系統(tǒng)返回所述應用的錯誤消息;以及用于響應于關于所述應用在沒有所述第一模塊時能夠繼續(xù)工作的確定,確定如果在關閉所述第一模塊后所述性能狀態(tài)不滿足所述工作需求,那么下一個模塊是否應該被標識為將要關閉的裝置。17.如權利要求12所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),還包括用于響應于接收到所述應用的作業(yè)請求,訪問所述應用的簡表的裝置,其中,所述簡表為其上分布有所述多個資源節(jié)點的多個平臺規(guī)定所述應用的所述工作需求。18.如權利要求17所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),其中,所述應用的所述簡表還包括所述應用的多個屬性的XML表示,以及當在所述多個平臺中的每一個上工作時所述應用的性能范圍。19.如權利要求12所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),還包括用于響應于接收到所述應用的作業(yè)請求,訪問所述應用的簡表的裝置,其中,所述簡表規(guī)定所述應用的至少一個模塊,以及用于在調(diào)節(jié)對所述至少一個資源節(jié)點的所述使用時關閉所述至少一個模塊的優(yōu)先級。20.如權利要求19所述的用于在最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),其中,所述應用的所述簡表還包括所述應用的多個屬性的XML表示,以及在關閉所述至少一個模塊時所述應用實現(xiàn)的性能范圍。21.如權利要求12所述的用于在次最佳網(wǎng)格環(huán)境中維持應用工作的系統(tǒng),其中,所述應用是工作在所述網(wǎng)格環(huán)境中的獨立應用、服務、代理和控制器中的一個。22.一種計算機程序,包括適于執(zhí)行如權利要求1到權利要求11中任意一個所述的步驟的計算機程序代碼工具。全文摘要提供了一種用于維持次最佳網(wǎng)格環(huán)境中的應用工作的方法、系統(tǒng)和程序。應用簡表表述跨多個異構資源平臺的應用的工作要求,以及表述應用的模塊關閉的優(yōu)先級,從而在檢測到應用的次最佳條件時可以調(diào)節(jié)應用對資源的使用。所述應用被提交給網(wǎng)格環(huán)境中的多個資源節(jié)點中的至少一個資源節(jié)點。隨后,服務可用性管理代理監(jiān)視所述至少一個資源節(jié)點的性能狀態(tài)。所述服務可用性管理代理將所述性能狀態(tài)與應用簡表中為所述至少一個資源節(jié)點的平臺規(guī)定的工作要求進行比較。如果所述性能狀態(tài)不滿足所述工作要求,則所述服務可用性管理代理根據(jù)所述應用簡表來調(diào)節(jié)所述應用對資源節(jié)點的使用,使得在網(wǎng)格環(huán)境中出現(xiàn)次最佳條件時所述應用繼續(xù)工作。文檔編號G06F9/46GK1902588SQ200480040314公開日2007年1月24日申請日期2004年12月16日優(yōu)先權日2004年1月14日發(fā)明者V·V·迪盧奧福奧,C·費倫斯泰因,R·A·汗密爾頓二世,J·約瑟夫申請人:國際商業(yè)機器公司