亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

多層計算環(huán)境中用于性能管理的系統(tǒng)和方法

文檔序號:7948124閱讀:788來源:國知局
專利名稱:多層計算環(huán)境中用于性能管理的系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明涉及分布式計算環(huán)境的一般管理,特別涉及多層計算環(huán)境中用于應用性能管理的系統(tǒng)和方法。
背景技術(shù)
信息技術(shù)(IT)利用混合有不同種類應用的逐漸復雜的多層生產(chǎn)環(huán)境來負責提供應用服務。IT解決方案正盡力在性能和可用性上滿足所需的服務水平,并同時提升效率和資源使用。通過結(jié)合IT資源和商務需求來達到這種效果,擴展IT解決方案的功能以滿足對計算資源不斷改變的需求。性能及可用性管理的傳統(tǒng)方式和工具是不停的“監(jiān)控—調(diào)試—定位”循環(huán)的各種變形,其包括識別問題是否存在(即監(jiān)控)、提高總體吞吐量以克服該問題(即調(diào)試)和執(zhí)行根本原因分析,以揭示問題的每個具體實例的確切原因(即定位)。這種方式無法滿足快速變化的IT環(huán)境的復雜性和可變性。
現(xiàn)在參見圖1,該圖為本領(lǐng)域公知的以標號50表示的多層計算環(huán)境的示意圖。計算環(huán)境50包括運行第一應用的第一客戶端62、運行第二應用的第二客戶端64、第一層52、第二層54、第三層56、第四層58和第五層60。第一層52為WEB服務器,第二層54為應用服務器,即應用服務器A。第三層56為另一應用服務器,即應用服務器B。第四層58也為應用服務器,即應用服務器C。第五層60為數(shù)據(jù)庫。第一層52與第一客戶端62、第二客戶端64及第二層54相連。第二層54還與第三層56和第四層58相連。第三層56還與第四層58和第五層60相連。第四層58還與第五層60相連。
“層”表示一種特定類型的處理,該處理為所提供的所有IT服務的一部分(例如WEB服務器層上的表現(xiàn)層處理或數(shù)據(jù)庫層上的數(shù)據(jù)處理)。通常情況下,每一層都運行在不同的主機上。
第一應用發(fā)起一個用戶請求R1并發(fā)送該用戶請求R1至第一層52。用戶請求R1是由用戶發(fā)起的所有事務(transaction)的一部分。例如,用戶請求R1可以是從特定應用中檢索信息的基于WEB的查詢。用戶請求R1可以要求在計算環(huán)境50中的不同層的服務,并且可生成附加請求,以獲得這些服務。接收到請求的層可以應答發(fā)送請求的層,或向不同層發(fā)送新的請求。最終,響應于初始的用戶請求R1,返回應答。如果計算環(huán)境50中的兩個層彼此直接相連,則給定的層僅能夠從另一層請求服務。
分布式計算環(huán)境50的整體管理需要獲知各層是如何處理其工作負荷的。例如,假定某一層資源短缺,則系統(tǒng)管理員可以通過垂直地(即,在同一主機內(nèi))或水平地(即,在多個主機內(nèi))創(chuàng)建該層的復制來調(diào)整該層。例如,在計算環(huán)境50下,系統(tǒng)管理員可以將附加應用服務器A2(未示出)添加到第二層54的應用服務器A,其中應用服務器A2是應用服務器A的復制。同理,如果某一層存在過多資源,則系統(tǒng)管理員可以將空閑資源轉(zhuǎn)移至資源短缺的另一層。系統(tǒng)管理員可以進一步配置某一層,以便提高整體性能或指出用于對該層上所運行應用進行優(yōu)先級劃分的修改。這是一個用于性能管理的特定層應用監(jiān)控的實例。需要注意的是,請求僅可以到達在計算環(huán)境50中的某些層。此外,可以使用多條路徑將相同的請求到達某些層。例如,在計算環(huán)境50中,請求可通過第三層56的應用服務器B或第四層58的應用服務器C到達第五層60數(shù)據(jù)庫。由于在整體環(huán)境中多個請求路徑并不一致,所以解決在一層上資源短缺的問題沒有必要保證可跨越多個層的整體應用的性能。在任一層中的處理瓶頸都會使得使用該層的所有應用功能延遲。
第一層52接收到用戶請求R1。第一層52分配處理程序集(enclave)X1來處理用戶請求R1。在處理用戶請求R1的同時,在處理程序集X1中執(zhí)行的應用邏輯確定在第二層54不提供附加信息或操作的情況下,處理程序集X1不能完成用戶請求R1的處理。然后,第一層52向第二層54發(fā)送請求R2,以請求附加信息或操作。第二層54分配程序集X2來處理請求R2。在處理程序集X2中執(zhí)行的應用邏輯確定請求R2需要由第四層58提供的進一步信息或操作。然后,第二層54向第四層58發(fā)送后續(xù)請求R3。第四層58分配處理程序集X4來處理請求R3。
處理程序集X4完成執(zhí)行。第四層58響應于第二層54的先前請求R3向第二層54返回應答R3’。處理程序集X2接收應答R3’并且繼續(xù)處理。一旦處理程序集X2完成執(zhí)行,則第二層54響應于第一層52的先前請求R2向第一層52返回應答R2’。處理程序集X1接收應答R2’并且繼續(xù)處理。一旦處理程序集X1完成執(zhí)行,則第一層返回對用戶請求R1的應答R1’,現(xiàn)在已完成用戶請求R1的服務。
在計算環(huán)境50中,每個不同的層和不與其直接相連的層分隔。例如,從第二層54到與其直接相連的第四層58的請求R3沒有必要包含在第二層54接收的來自第一層52的先前請求R2的相關(guān)信息,R3也沒有必要包含用戶請求R1的相關(guān)信息。給定層無法獲得與該層上正被處理的請求相關(guān)的某些信息,例如哪個用戶發(fā)起了該事務,哪些請求先于正在該層被處理的請求,先于該請求的請求特征。例如,第二層54不能識別請求R2的特征,例如發(fā)送至第一層52的用戶請求R1是否先于該請求,或者是否由來自第一應用62的用戶請求R1發(fā)起了該事務。結(jié)果,如果對于在某一層內(nèi)處理請求的處理程序集分配優(yōu)先級,那么僅考慮在該層上可用的最少信息來分配該優(yōu)先級。該信息包含請求特征(例如由請求所使用的層登陸憑證)和關(guān)于處理該請求的處理程序集的可能信息(例如數(shù)據(jù)庫會話標識)。盡管在本地給定層上有區(qū)分不同優(yōu)先級的機制,但一般情況下,請求都是基于相等優(yōu)先級進行處理的(例如先到先服務)。由于在處理計算環(huán)境50中的特定層時不能考慮其它層,所以必須基于各個層進行性能管理。典型情況下,負責管理多層計算環(huán)境(如計算環(huán)境50)的系統(tǒng)管理員通過為給定層調(diào)整資源分配來嘗試提升性能。
題名為“用于監(jiān)控多個包含操作系統(tǒng)內(nèi)核中運行的接口的分布式應用的系統(tǒng)及方法”由Agarwal等人提交的申請?zhí)枮?,958,010的美國專利提出監(jiān)控分布式計算系統(tǒng)在整個企業(yè)范圍內(nèi)運行的系統(tǒng)及方法,以開發(fā)應用于系統(tǒng)性能、使用趨勢、安全審計、能力計劃和其它的商業(yè)事務級的管理數(shù)據(jù)。具有分布式計算構(gòu)架的系統(tǒng)包含多個工作站、服務器及網(wǎng)絡設(shè)備。每個工作站表示連接到網(wǎng)絡的計算機系統(tǒng)。每個工作站能夠從任一服務器請求服務。每個工作站具有用于和網(wǎng)絡交換數(shù)據(jù)的通信棧。該系統(tǒng)還包含多個監(jiān)控代理和具有與其相連的數(shù)據(jù)庫的控制臺模塊。每個監(jiān)控代理具有外部事件接口,所述外部事件接口提供關(guān)于企業(yè)各組成的事件信息。每個監(jiān)控代理與每個服務器或工作站相關(guān)聯(lián)。
所述監(jiān)控代理物理上可以位于與其關(guān)聯(lián)的客戶端或服務器上。監(jiān)控代理監(jiān)控并收集在客戶端與網(wǎng)絡之間以及在服務器與網(wǎng)絡之間交換的數(shù)據(jù)。每個監(jiān)控代理可以是軟件模塊、硬件設(shè)備或這兩者的組合。每個監(jiān)控代理將表示收集到的數(shù)據(jù)的信息傳遞給控制臺模塊??刂婆_模塊將這些信息存儲在數(shù)據(jù)庫中,以便于技術(shù)人員對其進行分析。運行在控制臺模塊上的應用程序可以閱覽收集的數(shù)據(jù),以顯示任一進程的系統(tǒng)性能或企業(yè)組成。系統(tǒng)管理員可以發(fā)展企業(yè)級使用統(tǒng)計表和響應時間、發(fā)展圖表和報告,并進行其它相關(guān)數(shù)據(jù)分析,以確定與企業(yè)運行相關(guān)的用戶定義的統(tǒng)計表。
題名為“應用的端到端響應時間的測量和分解”由Maccabee等人提交的申請?zhí)枮?,108,700的美國專利提出一種用于測量和報告端到端商業(yè)事務的可用性和性能的方法和系統(tǒng)。該系統(tǒng)運行在客戶端-服務器應用構(gòu)架上。該系統(tǒng)包括三個邏輯組件即事件生成、事務生成和報告生成,同時也包括通過系統(tǒng)配置實現(xiàn)的整體系統(tǒng)管理。
事件生成組件存在于在構(gòu)架中正在被測量的每個計算機上。每個計算機都有一個代理、多個的傳感器和多個處理器。傳感器可以與運行商務應用的平臺組件交互,可以監(jiān)控應用程序活動,以及檢測狀態(tài)變化。在適當?shù)臅r候,每個傳感器生成用于描述狀態(tài)變化的事件、事件發(fā)生的時間和位置以及識別事件所唯一必要的額外數(shù)據(jù)。事件包含時間戳和隨后由系統(tǒng)用于使該事件和事務中其它事件關(guān)聯(lián)的相關(guān)數(shù)據(jù)。傳感器將生成的事件轉(zhuǎn)發(fā)至它們各自的代理中。這些代理臨時存儲該數(shù)據(jù),并可以將該數(shù)據(jù)發(fā)送給在該事件中已注冊信息的其它系統(tǒng)組件。處理器分析這些事件并推導出狀態(tài)的變化。狀態(tài)的變化可以直接與商業(yè)事務平臺組件中發(fā)生的操作相關(guān),也可以通過組合從傳感器或其它處理器先前生成的事件來獲得狀態(tài)的變化,從而描述所達到的狀態(tài)。處理器將生成的事件轉(zhuǎn)發(fā)給它們各自的代理。
該事務生成組件通常存在于網(wǎng)絡中的一計算機上,并含有控制器。該控制器從被其控制的代理接收事件。基于事務生成規(guī)則對事件進行檢查,并且關(guān)聯(lián)和整理成事務。系統(tǒng)管理員確定生成哪些事務。
報告生成組件包括管理器。該管理器從控制器收集事務。對所收集的事務進行操作,以獲得與商業(yè)事務的可用性及性能相關(guān)的信息。在從圖形用戶界面(GUI)輸入特定或定期的請求時,可生成報告或連續(xù)圖形監(jiān)控。報告生成處理包括對事務初始選擇的定義和事務的處理,也包括用于將事務事件數(shù)據(jù)統(tǒng)一成可用性和性能信息的分類和聚集方法。
題名為“用于分布式應用性能分解的嵌入式相關(guān)性能測量的方法和系統(tǒng)”由Mills等人提交的申請?zhí)枮?002/0129137 A1的美國專利提出在與分布式應用關(guān)聯(lián)的事務中用于嵌入式相關(guān)性能測量的技術(shù)。依照應用性能分解來使用這些技術(shù)。將數(shù)據(jù)嵌入到用于在分布式計算網(wǎng)絡中的應用組件之間傳輸事務的通信協(xié)議中,而并不是改變實際事務數(shù)據(jù)本身。嵌入的數(shù)據(jù)可以包含時間戳和持續(xù)時間測量數(shù)據(jù)。嵌入的數(shù)據(jù)的格式由已定義的關(guān)鍵字前綴、用于識別定時源的可變后綴組成,接著是冒號分隔符和空格,以及接著是時間戳和持續(xù)時間信息。
分布式應用的后續(xù)處理階段可以解釋通信協(xié)議,以收集先前處理階段的處理持續(xù)時間,以關(guān)于事務的處理作出確定。將測量信息嵌入至由該測量信息所描述的同一分布式應用中,以便于事務與可獲知事務性能特征同時或同一時期完成。
可用的通信協(xié)議是超文本傳輸協(xié)議(HTTP)??捎玫姆植际接嬎悱h(huán)境是萬維網(wǎng)(WWW)。應用組件可以是運行在客戶端上的客戶端應用和運行在應用服務器上的服務器應用。例如,客戶端應用為WEB瀏覽器,服務器應用運行于WEB服務器上。應用事務是向應用服務器請求內(nèi)容以及由應用服務器進行響應的客戶端應用。生成性能信息,以從客戶端應用的角度來測量往返響應時間,以及將該響應時間分解成由服務器應用用于服務請求和生成應答所采用的時間。特別地,在HTTP頭添加劃線來傳輸性能測量數(shù)據(jù),使客戶端接收在HTTP應答報頭中的服務器測量持續(xù)時間。

發(fā)明內(nèi)容
依據(jù)所公開的技術(shù),提供了一種用于監(jiān)控多層計算環(huán)境中的所選層的裝置。所述裝置包括環(huán)境代理和動態(tài)層擴展。所述環(huán)境代理與所選層關(guān)聯(lián),并且與其它的環(huán)境代理相連,每個其它的環(huán)境代理與各自層關(guān)聯(lián)。動態(tài)層擴展與環(huán)境代理以及與所選層的特定預定點(例如至少所選層的請求進入端口)相連。動態(tài)層擴展監(jiān)控通過所選層的請求通信量,被監(jiān)控的請求通信量包括在所述請求進入端口接收到的來自所述計算環(huán)境的相鄰層的至少一個進入請求。動態(tài)層擴展識別在被監(jiān)控的請求通信量中的每個請求,并至少將請求標識符發(fā)送給環(huán)境代理。環(huán)境代理還從與相鄰層關(guān)聯(lián)的環(huán)境代理接收與進入請求的請求環(huán)境相關(guān)的信息。環(huán)境代理依據(jù)接收到的請求標識符將與進入請求的請求環(huán)境相關(guān)的信息與進入請求關(guān)聯(lián)。
動態(tài)層擴展還可以與所選層的請求退出端口相連,此被監(jiān)控的請求通信量還包括從所選層退出至相鄰層的至少一個退出請求。動態(tài)層擴展獲得退出請求的請求環(huán)境,并向環(huán)境代理至少發(fā)送請求標識符和與退出請求的請求環(huán)境相關(guān)的信息。環(huán)境代理依據(jù)接收到信息和請求標識符將進入請求與退出請求相關(guān)聯(lián)。環(huán)境代理還向與退出請求被發(fā)送到的相鄰層關(guān)聯(lián)的環(huán)境代理提供與退出請求的請求環(huán)境相關(guān)的信息。
依據(jù)所公開的技術(shù),還提供一種在包括多個層的多層計算環(huán)境中用于應用性能管理的系統(tǒng)。該系統(tǒng)包括對于至少兩個所述被監(jiān)控層的每個層的各自的動態(tài)層擴展和各自的環(huán)境代理。動態(tài)層擴展至少與被監(jiān)控層的請求進入端口相連。環(huán)境代理與動態(tài)層擴展以及與直接連接至所述各自層的層關(guān)聯(lián)的其它所述環(huán)境代理相連。動態(tài)層擴展監(jiān)控通過所選層的請求通信量,被監(jiān)控的請求通信量包括在請求進入端口收到的來自相鄰層的至少一個進入請求。動態(tài)層擴展識別在被監(jiān)控請求通信量中的每個請求,并至少發(fā)送請求標識符給環(huán)境代理。環(huán)境代理也從與相鄰層關(guān)聯(lián)的環(huán)境代理接收與進入請求的請求環(huán)境相關(guān)的信息。環(huán)境代理依據(jù)接收到的請求標識符將與進入請求的請求環(huán)境相關(guān)的信息與進入請求關(guān)聯(lián)。該系統(tǒng)還包括環(huán)境網(wǎng)絡管理服務器。該環(huán)境網(wǎng)絡管理服務器與環(huán)境代理相連。該環(huán)境網(wǎng)絡管理服務器收集和分析從環(huán)境代理接收到的性能數(shù)據(jù)。
依據(jù)所公開的技術(shù),還提供一種在包括多個層的多層計算環(huán)境中用于監(jiān)控所述多個層的所選被監(jiān)控層的應用性能管理方法。該方法包括,對于多個層的至少兩個被監(jiān)控的層中的每個層,接收與至少一個進入請求的請求環(huán)境相關(guān)的請求環(huán)境信息的步驟,所述信息至少包括請求標識符和事務標識符。該方法還包括監(jiān)控通過所述被監(jiān)控層的請求通信量的步驟,所述被監(jiān)控的請求通信量至少包括所述至少一個進入請求。該方法還包括依據(jù)所述請求標識符,識別所述至少一個進入請求的步驟,以及依據(jù)所述事務標識符,將所述至少一個進入請求和事務相關(guān)聯(lián)的步驟。
依據(jù)所公開的技術(shù),還提供一種在包括多個層的多層計算環(huán)境中用于監(jiān)控所述多個層的所選被監(jiān)控層的應用性能管理方法。該方法包括,對于多個層的至少兩個被監(jiān)控的層中的每個層,監(jiān)控通過所述被監(jiān)控層的請求通信量的步驟,所述被監(jiān)控請求通信量包括至少一個進入請求和退出請求,所述所選層向相鄰層發(fā)送所述退出請求。該方法還包括確定與所述進入請求的請求環(huán)境相關(guān)的環(huán)境信息的步驟,以及識別在所述被監(jiān)控請求通信量中包括的每一個請求的步驟。該方法還包括將所述進入請求與所述退出請求相關(guān)聯(lián)的步驟,以及向與所述相鄰層關(guān)聯(lián)的另一環(huán)境代理發(fā)送信息的步驟,所述信息與所述退出請求的請求環(huán)境相關(guān)。


根據(jù)以下結(jié)合附圖所進行的詳細描述,所公開的技術(shù)將更容易理解和認識,其中;圖1為本領(lǐng)域公知的多層計算環(huán)境的示意圖;圖2為依據(jù)所公開技術(shù)的實施例而建立和實施的應用性能管理系統(tǒng)的示意圖;圖3為在圖2所示系統(tǒng)的兩個環(huán)境代理之間中繼的信息的示意圖;圖4為在圖2所示系統(tǒng)的兩個層上的取樣請求生命周期的示意圖;圖5為依據(jù)所公開技術(shù)的實施例而建立和實施的應用性能管理系統(tǒng)的示意圖;圖6為圖5所示多層計算環(huán)境的兩個層的示意圖;圖7為圖5所示系統(tǒng)的動態(tài)層擴展的示意圖;圖8為圖5所示系統(tǒng)的環(huán)境代理的示意圖;圖9為示出依據(jù)所公開技術(shù)的另一實施例而實施的在獲得請求環(huán)境的處理和隨后處理中所包括的階段的框圖;圖10為示出依據(jù)所公開技術(shù)的另一實施例而實施的在圖5所示系統(tǒng)的本地層上獲得UOW分配的處理以及將請求與UOW關(guān)聯(lián)的處理所包括的階段的框圖;以及圖11為示出依據(jù)所公開的技術(shù)的另一個實施例而實施的在獲得已發(fā)送至圖5所示系統(tǒng)的遠處的層的退出請求的處理以及將發(fā)送的請求與請求環(huán)境關(guān)聯(lián)的處理所包括的階段的框圖。
具體實施例方式
通過提供一種用于多層計算環(huán)境中的應用性能管理的系統(tǒng)和方法使得所公開技術(shù)克服了現(xiàn)有技術(shù)的缺點。該系統(tǒng)監(jiān)控每一層的請求進入端口和請求退出端口,并通過多個環(huán)境代理(context agent)來檢測來自或到達給定層的請求的進入或退出。在多層計算環(huán)境中,每一個環(huán)境代理都與一個層關(guān)聯(lián),并且能夠和其它環(huán)境代理通信。環(huán)境代理收集對于與該環(huán)境代理關(guān)聯(lián)的層的請求執(zhí)行相關(guān)聯(lián)的信息。環(huán)境代理識別用戶請求的請求環(huán)境。環(huán)境代理將用戶請求劃分成請求類別。環(huán)境代理將退出與其關(guān)聯(lián)的層的請求特征中繼至與該請求被發(fā)送到的層關(guān)聯(lián)的隨后的環(huán)境代理。
環(huán)境代理將請求與用戶請求關(guān)聯(lián),并也將請求與在同一事務中其它先前的請求相關(guān)聯(lián)。環(huán)境代理依據(jù)請求類別和本地存儲的動態(tài)服務類別策略來為請求分配服務類別。環(huán)境代理可以進行干預來影響請求的處理,例如在層的請求進入端口調(diào)整隊列中請求的次序,更改用于執(zhí)行請求的處理程序集的優(yōu)先級,更改用于執(zhí)行請求的處理程序集的處理類型,指示層分配或拒絕用于處理請求的計算資源(例如中央處理單元-CUP,存儲器等),保持請求并釋放處理程序集,或終止請求。環(huán)境網(wǎng)絡管理服務器可以概括在多個層之間的不同類型請求的操作,并可以設(shè)置適合的跨層服務類別策略。從而,在多層計算環(huán)境下的不同層之間,系統(tǒng)可在事務層次上提供環(huán)境相關(guān)的資源管理。
所公開的技術(shù)提供在IT基礎(chǔ)鏈中所有層之間的主動(proactive)事務工作負荷管理的功能。系統(tǒng)結(jié)合多種IT基礎(chǔ)層,例如WEB、應用程序、數(shù)據(jù)庫和中間件服務器。系統(tǒng)自動概括工作負荷,協(xié)助為此工作負荷分類,并使用戶創(chuàng)建適合的服務類別性能策略。該系統(tǒng)將這些策略連續(xù)應用于在計算環(huán)境中的多個層之間的事務。該系統(tǒng)利用現(xiàn)有的IT基礎(chǔ)設(shè)施,并對現(xiàn)有的IT基礎(chǔ)設(shè)施強化,使其能夠以與商業(yè)利益一致的最優(yōu)服務水平提供穩(wěn)定的服務。在本具體實施例的描述中使用以下術(shù)語·以下用到的術(shù)語“層”是指提供某類服務的實體,其中該服務為所提供的所有IT事務的一部分。該服務可以是WEB服務器層上的表現(xiàn)層處理、應用服務器層上的應用程序功能、數(shù)據(jù)庫層上的數(shù)據(jù)處理等。盡管在一臺主機上可以有多個層,但通常每一層都運行在不同的主機上,一個層可包括存在于多個主機上的多個組件。以下,在至少一個層上運行的主機被稱為“層主機”。層的實例包括但不僅限于Java 2平臺、企業(yè)版(J2EE)應用服務器實例;J2EE應用服務器實例的群集;包括對數(shù)據(jù)庫服務器的訪問組件(如Java數(shù)據(jù)庫連接/開放式數(shù)據(jù)庫連接(JDBC/ODBC)的驅(qū)動器)的數(shù)據(jù)庫服務器;數(shù)據(jù)庫群集等。
·術(shù)語“事務”表示由用戶發(fā)起的單個處理,例如在商業(yè)應用中的商業(yè)處理過程中的一個階段。事務的實例可以是在線拍賣服務中的一次出價,或金融機構(gòu)中新用戶的開戶。事務是由用戶請求開始的在多個層之間的請求鏈組成。因此,每個請求都與唯一的用戶請求(例如事務的用戶請求)關(guān)聯(lián)。通過唯一的標識符可以識別每個事務,這種標識符稱為“事務ID”。需要注意的是,“相關(guān)事務組”是指具有關(guān)聯(lián)性的多個事務(例如每個事務都代表單一的商務處理過程中的不同階段)。對事務中請求的處理不僅考慮該事務,還考慮該請求所屬的相關(guān)事務組。
·以下所用術(shù)語“請求”是指為提供作為事務一部分的某種服務而從一層向另一層發(fā)送的系統(tǒng)請求。通過唯一的標識符可以識別每個請求,這種標識符被稱為“請求ID”。每個請求都會在被調(diào)用層上產(chǎn)生一個工作單元(UOW)。請求的實例包括但不限于向WEB服務器發(fā)送超文本鏈接協(xié)議(HTTP)請求的客戶端WEB瀏覽器;向應用服務器發(fā)送遠程方法呼叫(RMI)調(diào)用的JAVA程序;在遠端應用服務器上(通過RMI)調(diào)用實體BEAN的J2EE應用服務器會話BEAN等。
·以下所用術(shù)語“用戶請求”是指由用戶或應用發(fā)起的初始請求,該請求由未被本文所公開的技術(shù)監(jiān)控的層發(fā)起。用戶請求是組成事務的請求鏈中的第一個。請求鏈可以表示為樹型結(jié)構(gòu),其中用戶請求在該樹的根節(jié)點。
·以下所用術(shù)語“UOW”是指在分配給該層的可用請求的處理程序集上執(zhí)行的應用程序代碼(即UOW調(diào)用)。UOW與源和目的關(guān)聯(lián),可以包括參數(shù)(用于指示應用程序代碼的操作),并使用在單個層中的層級資源。
·以下所用術(shù)語“處理程序集”是指在給定層中執(zhí)行UOW的任何線程、子處理、數(shù)據(jù)庫會話等。在層中對請求進行排隊,直至分配可用的處理程序集和對該處理程序集分配應用程序代碼(即,UOW)。處理程序集為輪流執(zhí)行不同應用程序代碼的常規(guī)執(zhí)行單元。
·以下所用術(shù)語“請求環(huán)境”是指初始從用戶請求獲得的并隨著事務請求鏈發(fā)送到隨后請求的特征組,其在這個過程中可以在任一層被修改。請求環(huán)境使所公開的技術(shù)能夠識別、跟蹤和按優(yōu)先級排列作為由用戶請求發(fā)起的單個事務的一部分所得到的請求鏈。例如,請求環(huán)境可以包括提交請求的用戶特征、作為請求主題的項目特征、發(fā)起請求的地理位置、請求生成的時間和日期、請求所屬的相關(guān)事務組等。請求環(huán)境的某些部分在隨后層可以被修改。例如,在第一層被加入請求環(huán)境的用戶請求的服務類別可以被隨后的層所修改(即使用所公開技術(shù)的另一個實施例)。
·以下所用術(shù)語“請求類別”是指共享一個或多個預定請求環(huán)境特征的一類事務。例如,“股票投資組合概要查詢”就可以屬于“股票投資組合概要查詢”請求類別,也可以和另一個事務(例如“股票投資組合歷史查詢”)一起作為更大范圍的“股票投資組合查詢”請求類別的一部分。每個請求類別都依據(jù)動態(tài)服務類別策略進行處理。一旦對該用戶請求分配請求類別,則在由該用戶請求發(fā)起的事務中對每一個隨后的請求自動分配請求類別。
·以下所用術(shù)語“服務類別”指用于表示對請求進行處理的重要性級別的各種參數(shù)的等級的組。該參數(shù)可以包括分配給請求的優(yōu)先級、分配給請求的CPU百分比、分配給請求的存儲空間、使得輸入/輸出(I/O)設(shè)備分配給請求和對請求進行訪問的優(yōu)先級等。根據(jù)合適的動態(tài)服務類別策略,由各個環(huán)境代理將服務類別分配給在給定層執(zhí)行的請求。
·以下所用術(shù)語“服務類別策略”是指這樣一種規(guī)則,即對于在其上正處理請求層,將服務類別分配給在請求類別中的請求。每一個環(huán)境代理都包含特定層服務類別策略的組,其中每個特定服務類別策略對于與該環(huán)境代理關(guān)聯(lián)的特定層將服務類別映射到請求類別。“跨層服務類別策略數(shù)據(jù)庫”描述了對于在多層計算環(huán)境中所有的層從服務類別到請求類別的映射組。需要注意的是用戶可以定義一組服務類別策略。這種策略下面被稱為“用戶定義的服務類別策略”。
·術(shù)語“動態(tài)服務類別策略”包含了當前有效的請求類別到服務類別的映射。支持多個服務類別策略,并且在系統(tǒng)運行的不同時間可以安排不同的策略,以反映工作負載的變化或者各種系統(tǒng)事件,或者僅僅是一個特別的決定。
現(xiàn)在請參見圖2,該圖為依據(jù)所公開技術(shù)的實施例而建立和實施的應用性能管理系統(tǒng)的示意圖,該系統(tǒng)通常用100表示。系統(tǒng)100運行在多層計算環(huán)境中,所述多層計算環(huán)境通常用132表示。計算環(huán)境132包括運行第一應用的第一客戶端112、運行第二應用的第二個客戶端114、第一層102、第二層104、第三層106、第四層108和第五層110。第一層102為WEB服務器。第二層104為應用服務器,即應用服務器A。第三層106為另一個應用服務器,即應用服務器B。第四層108也為應用服務器,即應用服務器C。第五層110為數(shù)據(jù)庫。
第一層102與第一客戶端112、第二個客戶端114和第二層104相連。第二層104還與第三層106相連。第三層106還與第四層108和第五層110相連。第四層108還與第五層110相連。運行在第一客戶端112的第一應用發(fā)起用戶請求R1。運行在第二客戶端114上的第二應用發(fā)起用戶請求118。
系統(tǒng)100包括環(huán)境代理122、124、126、128和130,和環(huán)境網(wǎng)絡管理服務器(CNMS)120。在如圖2所示的實例中,存在與每一層關(guān)聯(lián)的單獨的環(huán)境代理。特別地,環(huán)境代理122、124、126、128和130分別與第一層102、第二層104、第三層106、第四層108和第五層110相關(guān)聯(lián)。環(huán)境代理122、124、126、128和130都與CNMS 120相連。根據(jù)計算環(huán)境132中的層的連接關(guān)系,每個環(huán)境代理也會與其他環(huán)境代理相連。特別地,環(huán)境代理122與環(huán)境代理124相連,環(huán)境代理124還與環(huán)境代理126相連,環(huán)境代理126還與環(huán)境代理128和環(huán)境代理130相連以及環(huán)境代理128也與環(huán)境代理130相連。
第一客戶端112需要來自第一層102的服務,因此第一客戶端112向第一層102發(fā)送用戶請求R1。用戶請求R1在第一層102的請求進入端口排隊等候。第一層102分配可用的處理程序集X1來處理用戶請求R1。在處理用戶請求R1的同時,在處理程序集X1中執(zhí)行的應用邏輯確定在第二層104不提供附加信息或操作的情況下,處理程序集X1不能完成用戶請求R1的處理。因此,第一層102向第二層104發(fā)送新請求R2,以請求附加信息或存在。第二層104分配可用的處理程序集X3來處理請求R2。在處理程序集X2中執(zhí)行的應用邏輯確定處理程序集X2需要由第三層106提供的進一步信息或操作。因此,第二層104向第三層106發(fā)送新請求R3。第三層106分配可用的處理程序集X3來處理請求R3。需要注意的是,每個請求R1,R2,R3都是從第一客戶端112上運行的應用所發(fā)起的單個事務的一部分。
處理程序集X3完成處理。第三層106響應于來自第二層104的先前請求R3,向第二層104返回應答R3’。在處理程序集X2中執(zhí)行的應用邏輯接收應答R3’并繼續(xù)執(zhí)行。一旦處理程序集X2完成執(zhí)行,則第二層104響應于來自第一層102的先前請求R2,向第一層102返回應答R2’。在處理程序集X1中執(zhí)行的應用邏輯接收到應答R2’并繼續(xù)執(zhí)行。一旦處理程序集X1已經(jīng)完成處理,則第一層102返回對用戶請求R1的應答R1’,現(xiàn)在已完成用戶請求R1的服務。
每個環(huán)境代理都在請求進入端口和請求退出端口(在圖2和圖3中表示的小圓圈)監(jiān)控與其相關(guān)聯(lián)的層。環(huán)境代理通過檢測請求進入或退出所關(guān)聯(lián)的層來監(jiān)控經(jīng)過所關(guān)聯(lián)的層的通信量。如果該請求為用戶請求(即,請求鏈中的初始請求),則第一層的環(huán)境代理識別用戶請求的請求環(huán)境,將用戶請求分成請求類別,并基于動態(tài)服務類別策略為用戶請求分配服務類別。每個環(huán)境代理都具有策略高速緩存(未示出),其包含對于與各環(huán)境代理相關(guān)聯(lián)的層的特定層服務類別策略的組。CNMS 120利用特定層動態(tài)服務類別策略周期性地更新每個環(huán)境代理。如果該請求不是用戶請求,則環(huán)境代理從與發(fā)起請求的層相關(guān)聯(lián)的環(huán)境代理接收與請求的請求環(huán)境相關(guān)的信息以及與請求相關(guān)的附加信息(即“環(huán)境信息”)。需要注意的是,在環(huán)境代理中繼至另一環(huán)境代理的環(huán)境信息中包括的最少信息至少是請求ID、事務ID、請求類別和與該請求關(guān)聯(lián)的環(huán)境相關(guān)數(shù)據(jù)。環(huán)境相關(guān)數(shù)據(jù)可以包括請求環(huán)境本身,或者對處于另一位置的請求環(huán)境的指示(例如,指針)。
環(huán)境代理將接收到的環(huán)境信息和在該層上執(zhí)行的請求進行關(guān)聯(lián)。環(huán)境代理依據(jù)分配給請求的服務類別,通過各層可以影響請求的處理。例如,環(huán)境代理可以在層的請求進入端口調(diào)整請求隊列的次序,命令層分配或拒絕用于執(zhí)行該請求的來自該層的計算資源。如果環(huán)境代理檢測到請求已經(jīng)退出了相關(guān)聯(lián)的層,則環(huán)境代理將環(huán)境信息中繼至與該請求被發(fā)送到的層相關(guān)聯(lián)的另一環(huán)境代理。所述另一環(huán)境代理將接收到的環(huán)境信息與相關(guān)請求和在與所述另一環(huán)境代理關(guān)聯(lián)的層上執(zhí)行請求的處理程序集進行關(guān)聯(lián)。
需要注意的是,環(huán)境代理監(jiān)控層的請求進入端口和請求退出端口,而不是廣泛的監(jiān)控層自身內(nèi)發(fā)生的活動(例如執(zhí)行請求的處理程序集)。結(jié)果,從軟件的角度,系統(tǒng)100并不干預給定層的實際操作或在該層中執(zhí)行的用戶應用代碼,系統(tǒng)100為層添加最小附加負載。
環(huán)境代理還通過動態(tài)層擴展(DTE-圖2中未示出)連接相關(guān)聯(lián)的層。DTE使環(huán)境代理收集與在該層上執(zhí)行UOW相關(guān)的數(shù)據(jù)。為了實現(xiàn)該目的,環(huán)境代理可以將原始數(shù)據(jù)發(fā)送到CNMS 120。環(huán)境代理還可以把統(tǒng)計數(shù)據(jù)發(fā)送到CNMS 120,以用于集中分析。環(huán)境代理可以從CNMS 120接收信息(例如行為映像(下面參考圖6定義))和用于處理不同類型請求類別的新動態(tài)服務類別策略。環(huán)境代理在隨后的圖8介紹中進行詳細闡述。
特別地,環(huán)境代理122監(jiān)控第一層102,并檢測到用戶請求R1已經(jīng)進入第一層102。環(huán)境代理122識別用戶請求R1的請求環(huán)境,并將用戶請求R1與處理該請求的處理程序集X1相關(guān)聯(lián)。環(huán)境代理122將用戶請求R1分類為適合的請求類別。環(huán)境代理122通過在環(huán)境代理122中存儲的服務類別策略組中檢索適當?shù)膭討B(tài)服務類別策略來確定在第一層102中的用戶請求R1的服務類別,并將確定的服務類別分配給用戶請求R1。環(huán)境代理122將分配的服務類別添加到請求環(huán)境中。當新請求R2退出第一層102并進入第二層104時,環(huán)境代理122監(jiān)測到請求R2與用戶請求R1相關(guān)。然后環(huán)境代理122向環(huán)境代理124發(fā)送與用戶請求R1的請求環(huán)境相關(guān)的信息、以及請求ID、請求類別和與請求R2相關(guān)的事務ID。
現(xiàn)在請參見圖3,該圖為在圖2所示系統(tǒng)的兩個環(huán)境代理之間中繼的信息的示意圖。環(huán)境代理122發(fā)送消息134給環(huán)境代理124。消息134包括請求R2的請求ID、請求R2的事務ID、環(huán)境代理122為請求R2劃分的請求類別和請求R2的請求環(huán)境。環(huán)境代理124接收消息134,并通過在環(huán)境代理124所存儲的服務類別策略組中檢索適當?shù)膭討B(tài)服務類別策略來確定在第二層104上將被執(zhí)行的請求R2的服務類別。環(huán)境代理124將所確定的服務類別分配給請求R2。例如,請求R2的請求類別為組“15”。環(huán)境代理124檢索將服務類別映射至在第二層104上執(zhí)行的請求類別為“15”的請求的動態(tài)服務類別策略。合適的服務類別策略為該請求分配優(yōu)先級“5”、CPU分配“90”、存儲器分配“48”和I/O設(shè)備訪問優(yōu)先級“2”。然后,環(huán)境代理124可以依據(jù)所分配的服務類別來影響請求R2的處理。
系統(tǒng)100基于請求環(huán)境執(zhí)行應用性能管理。系統(tǒng)100識別請求,與每個請求關(guān)聯(lián)的特征在與該層所關(guān)聯(lián)的環(huán)境代理上可用。這些特征可以包括在哪里發(fā)起請求、在事務中哪些請求先于該請求和該請求是什么類型。例如,環(huán)境代理124識別出在第二層104上運行的請求R2與由第一層102處理并且在第一客戶端112發(fā)起的用戶請求R1相關(guān)聯(lián)。由于給定層的環(huán)境代理知道請求環(huán)境和在各層正被執(zhí)行的每個請求的請求類別,因此環(huán)境代理可基于服務類別策略來確定各請求的適當?shù)奶囟▽臃疹悇e。CNMS 120可以對于各不同請求類別來設(shè)置在多個層之間的整體管理策略,并因此更新環(huán)境代理。
現(xiàn)在請參見圖4,該圖為在圖2所示系統(tǒng)的兩個層上的取樣請求生命周期的示意圖,所述取樣請求生命周期通常用140表示。取樣生命周期140描述了當請求在多層計算環(huán)境132(圖2)中接受服務時該請求所經(jīng)歷的多個階段。上文提到,請求可以產(chǎn)生能在相同層中的內(nèi)部(通過向正執(zhí)行UOW的相同層發(fā)送請求)或外部(向其它層發(fā)送請求)進一步生產(chǎn)附加請求的UOW調(diào)用。因此,用戶請求通常生成一系列UOW調(diào)用,其中的每個調(diào)用都可以在不同的層上執(zhí)行。這些UOW調(diào)用可以是同步的(即,執(zhí)行UOW調(diào)用的處理程序集等到被調(diào)用的UOW應答之后再繼續(xù)處理),也可以是異步的(即,執(zhí)行UOW調(diào)用的處理程序集不等待被調(diào)用的UOW應答而繼續(xù)處理UOW調(diào)用)。在以上兩種情況下,被調(diào)用層N+1上的UOW專用于由調(diào)用層N所請求的服務。在同步處理方式下,出現(xiàn)這樣的情況,即在層N上的調(diào)用UOW等待在層N+1上的被調(diào)用UOW結(jié)束(即,在層N+1上的UOW被釋放)。在其它情況下,在層N+1上被調(diào)用的UOW可以由調(diào)用層多次引用,直至在層N+1上被調(diào)用的UOW結(jié)束。
在階段142中,在計算環(huán)境132中第一請求被發(fā)送給層N(即任一個代表層)。第一請求在層N上對于先前層或用戶應用產(chǎn)生UOW調(diào)用,以提供服務。第一請求在層N上的隊列158中等候。
在階段144中,在層N上第一請求退出隊列158并對其分配UOW,即UOW-A。UOW分配包括從層N中的處理程序集162中的一個分配可用處理程序集,和調(diào)度在該處理程序集上運行的請求應用程序代碼。當目標層資源可用并且能夠在層N上將應用程序代碼分配給可用處理程序集時,發(fā)生UOW分配操作。在取樣本生命周期140中,UOW-A在層N上開始執(zhí)行。
在階段146,UOW-A向?qū)覰+1發(fā)出第二請求。隨后層N+1調(diào)用UOW-B來執(zhí)行層N的請求。在階段148,層N+1調(diào)用UOW-B來執(zhí)行由層N發(fā)送的第二請求。所述第二請求在層N+1上的隊列160中等候。在階段150,第二請求退出隊列160,并且對所述第二請求分配UOW-B。UOW-B的分配導致從層N+1中的處理程序集164中的一個分配可用處理程序集給UOW調(diào)度的應用程序代碼,以及調(diào)度在該處理程序集上運行的請求應用程序代碼。然后,由此UOW-B開始在層N+1上運行。需要注意的是,由于UOW-B調(diào)用是同步的,因此處理UOW-A的處理程序集在等待來自UOW-B的應答的同時并不繼續(xù)處理。
在UOW-B調(diào)用是異步的情況下,處理UOW-A的處理程序集從層N+1接收對于從UOW-A發(fā)送給層N+1的第二請求已被接受的確認。在接收到該確認時,處理UOW-A的處理程序集繼續(xù)執(zhí)行,直至該處理程序集最終返回對第一請求的應答。在層N+1接受異步的第二請求之后,所述第二請求在隊列160中等候。隨后,由處理所述第二請求的一個或多個處理程序集讀取所述第二請求,直至這些處理程序集中的一個也將第二請求從隊列160中移除。處理第二請求的每個處理程序集也可以將第二請求變成新用戶請求,所述新用戶請求可以自身開始另一請求鏈,從而開始新的事務。
例如,包括異步請求的事務可以是用戶確認在電子商務網(wǎng)站上對書籍購買的事務。購買請求向用戶返回用于通知訂單正在處理中的屏幕,并且通知用戶(例如,通過電子郵件或文本消息)。同時將同一購買請求放置于隨后通過以下處理程序集來處理購買請求的消息隊列中,所述處理程序集包括向信用卡公司發(fā)送最終確認請求的處理程序集;向倉庫發(fā)送購買訂單請求的處理程序集;向計費系統(tǒng)發(fā)送結(jié)賬請求的處理程序集等。
在階段152中,UOW-B響應于UOW-A的先前調(diào)用向UOW-A發(fā)送應答,UOW-B的執(zhí)行現(xiàn)在完成。第二請求現(xiàn)在終止。在階段154中,UOW-A接收到應答,并繼續(xù)執(zhí)行,此時UOW-B實際上已被層N+1釋放。然后,UOW-A可以繼續(xù)執(zhí)行。在調(diào)用UOW發(fā)送請求的時間和調(diào)用UOW從被調(diào)用UOW接收到應答的時間之間的時間段被稱為“潛伏”期,或稱作對給定UOW請求的響應時間。
在階段156中,UOW-A完成執(zhí)行,并且第一請求終止。需要注意的是,在完成之前,UOW-A可以要求另一層的服務,并調(diào)用進一步請求來提供此服務。
需要注意的是,在階段150中在UOW-B被分配并在層N+1上開始執(zhí)行后,可能發(fā)生無法恢復的錯誤(例如程序異常)。依據(jù)所公開技術(shù)的實施例,與層N+1關(guān)聯(lián)的環(huán)境代理將記錄錯誤,并將此錯誤與在層N上由被調(diào)用的UOW-A的用戶請求所開始的事務相關(guān)聯(lián),從而提供發(fā)生在層N+1上的錯誤的特征。
現(xiàn)在參見圖5,該圖為依據(jù)所公開技術(shù)的實施例而建立和實施的應用性能管理系統(tǒng)的示意圖,該系統(tǒng)通常用200表示。系統(tǒng)200運行在多層計算環(huán)境中,所述多層計算環(huán)境通常用248表示。計算環(huán)境248包括客戶端214、第一層202、第二層204、第三層206、第四層208和第五層210。第一層202為WEB服務器。第二層204為應用服務器A。第三層206為應用服務器B。第二層204和第三層206都處于單個主機212上。第四層208為另一應用服務器,即應用服務器C。第五層210為數(shù)據(jù)庫。第一層202與客戶端214和主機212相連。主機212還與第四層208和第五層210相連。第四層208還與第五層210相連。
系統(tǒng)200包括多個動態(tài)層擴展222、224、226、228和230,多個環(huán)境代理232、234、236和238,多個本地日志240、242、244和246,環(huán)境網(wǎng)絡管理服務器(CNMS)216,服務水平目標(SLO)策略數(shù)據(jù)庫218和管理工作站220。每一層都包含動態(tài)層擴展(DTE)。具有與每個層相關(guān)聯(lián)的環(huán)境代理。具有與每個環(huán)境代理相關(guān)聯(lián)的本地日志。根據(jù)在計算環(huán)境中層的連接關(guān)系,給定層的環(huán)境代理與該層中的DTE(或幾個DTE)相連,與和環(huán)境代理相關(guān)聯(lián)的本地日志相連,以及與其它環(huán)境代理相連。每個環(huán)境代理還與CNMS 216相連。CNMS 216與SLO策略數(shù)據(jù)庫218相連。管理工作站220與CNMS 216和SLO策略數(shù)據(jù)庫218相連。
特別地,第一層202包含DTE 222。環(huán)境代理232與第一層202相關(guān)聯(lián)。本地日志240與環(huán)境代理232相關(guān)聯(lián)。第二層204包含DTE 224。第三層206包含DTE 226。由于第二層204和第三層206都處于主機212上,所以僅存在與第二層204和第三層206兩者相關(guān)聯(lián)的單個環(huán)境代理234。需要注意的是,環(huán)境代理234與DTE 224和DTE 226都直接相連。本地日志242與環(huán)境代理234關(guān)聯(lián)。第四層208包含DTE 228。環(huán)境代理236與第四層208關(guān)聯(lián)。本地日志244與環(huán)境代理236相關(guān)聯(lián)。最后,第五層210包含DTE 230。環(huán)境代理238與第五層210相關(guān)聯(lián)。本地日志246與環(huán)境代理238相關(guān)聯(lián)。環(huán)境代理232與環(huán)境代理234相連。環(huán)境代理234還與環(huán)境代理236和環(huán)境代理238相連。環(huán)境代理236還與環(huán)境代理238相連。
動態(tài)層擴展在特定的預定點與層相連。這些預定點為層的請求進入端口、層的請求退出端口和在該層內(nèi)的可能附加區(qū)域(例如層控制端口)。根據(jù)所公開技術(shù)的請求端口是在由層處理請求之前或者由層處理請求之后用于管理這些請求的層中的模塊。這種請求端口可以是到在層入口的請求隊列的連接點(即,入口、出口或者任何其它的訪問機制)。由于請求需要來自由處理程序集在層上運行的應用程序代碼的服務,因此各請求端口都是處于應用級而不是網(wǎng)絡級。需要注意的是,依據(jù)所公開技術(shù)的請求端口不是處于網(wǎng)絡級(例如不是TCP/IP或UDP端口)。
所述DTE位于與該層所關(guān)聯(lián)的同一層主機上(即DTE位于層正在運行的至少一主機上)。DTE的功能之一在于獲得請求環(huán)境。DTE還監(jiān)控層的請求進入端口和請求退出端口,以檢測進入請求和退出請求。DTE為用戶請求分配事務ID,并獲得進入或退出該層的每個請求的請求ID。DTE在以下圖7描述中進行詳細闡述。
環(huán)境代理保持在給定請求、該請求的被調(diào)用UOW和與該請求在同一事務中的用戶請求的請求環(huán)境之間的關(guān)聯(lián)。環(huán)境代理將分配給每一請求的請求環(huán)境(即環(huán)境相關(guān)數(shù)據(jù))中繼至處理其它層的其它環(huán)境代理。環(huán)境代理可以中繼整個請求環(huán)境,也可以中繼請求環(huán)境中的一部分。而且,環(huán)境代理可以將請求環(huán)境本身或指示(例如指針)中繼至處于另一位置的請求環(huán)境。需要注意的是,環(huán)境代理沒有必要處于與該層相同的主機上,但是在所公開技術(shù)的優(yōu)選實施例中卻屬于這種情況。環(huán)境代理在下面圖8的描述中將進行詳細闡述。CNMS 216收集并分析性能數(shù)據(jù)。SLO策略數(shù)據(jù)庫218存儲跨層服務類別策略,并不斷被更新。
現(xiàn)在參見圖6,該圖為圖5所示多層計算環(huán)境中的兩個層的示意圖。需要注意的是,圖6所示的第四層208和第五層210表示在計算環(huán)境248中任意兩個連續(xù)的層(例如層N和層N+1)。
進入第四層208的請求在第四層208的請求進入端口的隊列262中等候。第四層208調(diào)用UOW來執(zhí)行該請求。該請求退出隊列262,并且第四層208通過從處理程序集252將可用處理程序集分配給UOW以及調(diào)度在該處理程序集上運行的請求應用程序代碼,來將UOW分配給該請求。UOW在第四層208上執(zhí)行。然后,該UOW可以從第五層210請求服務。所述新請求在請求退出端口退出第四層208,并在第五層210的請求進入端口的隊列264中等候。第五層210調(diào)用UOW來執(zhí)行所述新請求。所述新請求退出隊列264,并且第五層210通過從處理程序集254將可用的處理程序集分配給UOW以及調(diào)度在該處理程序集上運行的新請求的應用程序代碼,來將UOW分配給新請求。DTE 228監(jiān)控第四層208的請求進入端口和請求退出端口,以分別檢測進入或退出第四層208的請求。
動態(tài)層擴展涉及在不更改應用程序代碼的情況下在請求的整個生命周期內(nèi)對該請求進行跟蹤。DTE動態(tài)地連接到層環(huán)境,其中DTE偵聽除了應用程序代碼之外的請求環(huán)境。請求跟蹤包括獲得請求環(huán)境、將請求與層上的UOW關(guān)聯(lián)和從層上的UOW接觸與請求的關(guān)聯(lián)。DTE還收集來自層的性能、可用性及錯誤的指標。DTE還可以例如通過調(diào)整層請求進入端口的請求隊列次序、分配用于處理請求的計算資源(例如CUP、存儲器、I/O等)或者更改處理程序集或分配資源的優(yōu)先級等方式來動態(tài)調(diào)整該層上請求的處理。將參考這里描述的圖9、10和11來詳細闡述這些任務。
需要注意的是,存在兩種在環(huán)境代理之間中繼請求環(huán)境的選擇帶內(nèi)和帶外。在帶內(nèi)環(huán)境中繼中,當請求退出某層而進入下一層時,將請求環(huán)境添加到請求本身(即,到有效負載上)。因此,當請求及其隨后請求在不同層間被處理時,將所更新的請求環(huán)境添加到請求調(diào)用中。相反,帶外中繼不涉及將請求環(huán)境添加到請求調(diào)用的處理。而是環(huán)境代理相互間直接發(fā)送環(huán)境信息。環(huán)境代理向另一個環(huán)境代理發(fā)送請求環(huán)境。DTE檢索來自該環(huán)境代理的請求。需要注意的是,與系統(tǒng)200(圖5)類似的系統(tǒng)的每個環(huán)境代理都使用帶外技術(shù)將請求環(huán)境中繼到另一環(huán)境代理。
再參見圖5,系統(tǒng)200進行行為映像處理(activity profiling)。行為映像處理包括創(chuàng)建行為映像。行為映像包括在請求跟蹤期間獲得的綜合事務、層和系統(tǒng)級性能指標與統(tǒng)計分析。例如,性能指標可以包括在層上的請求所用時間、請求服務時間、消耗的CPU時間等。行為映像數(shù)據(jù)是根據(jù)時間來收集的,并用于監(jiān)控(即在GUI上的顯示)和支持由用戶生成用戶定義的服務類別策略的操作。行為映像控制臺(未示出)是用于顯示由環(huán)境代理所收集的性能和可用性集成數(shù)據(jù)的GUI組件。該性能和可用性集成數(shù)據(jù)包括按不同種類(例如層、請求類別、事務等)的行為映像數(shù)據(jù)的概要視圖(summaryview)。位于CNMS 216中的行為映像處理引擎(未示出)執(zhí)行行為映像處理。
每個環(huán)境代理都具有收集在每個層中的執(zhí)行細節(jié)信息的任務。DTE使環(huán)境代理能夠收集與在該層上UOW的執(zhí)行相關(guān)的數(shù)據(jù)。然后,環(huán)境代理將所收集的信息發(fā)送給CNMS 216。對于每個UOW所存儲的信息包括開始時間、該UOW被分配的請求的請求ID、該UOW被分配的請求的事務ID、該UOW被分配的請求的請求類別、用戶細節(jié)、生產(chǎn)網(wǎng)絡地址的細節(jié)、該UOW被分配的請求的服務類別、結(jié)束時間、資源消耗(例如CPU)等。
環(huán)境代理將與當前正在執(zhí)行UOW相關(guān)的信息存儲到存儲器中(未示出)。當UOW在該層上完成執(zhí)行時,環(huán)境代理將該信息傳送到最近歷史數(shù)據(jù)存儲點中(未示出),該存儲點存儲在與環(huán)境代理相同的本地層主機的磁盤(未示出)上。在某一時間段之后,環(huán)境代理將信息的條目從最近歷史數(shù)據(jù)存儲點轉(zhuǎn)移到概要數(shù)據(jù)存儲點(未示出)。將概信息存儲為概要超過給定時間段(例如在半小時的時間段內(nèi)所收集的指標平均值)。摘要數(shù)據(jù)存儲點中的信息是輪換存儲的。輪換是基于周期存儲的(即在積累了一定量的輪換之后這些信息進行循環(huán))。
系統(tǒng)200還包括服務類別策略。如上文所述,服務類別策略是指對于在其上正處理請求的層,將請求類別分配給在請求類別中的請求的規(guī)則。位于環(huán)境代理中的實時服務類別策略引擎依據(jù)請求環(huán)境中信息(例如請求類別、先前執(zhí)行的具有相同請求環(huán)境的請求的性能特征)以及依據(jù)活動服務類別策略將適合的服務類別分配給概請求。另外,服務類別的分配還可以考慮附加的信息,例如對于每個請求類別的性能指標組。該組性能指標具有請求類別的特征,并創(chuàng)建對于典型性能操作的基線。該過程使用了在所有層之間創(chuàng)建的日志數(shù)據(jù)和與其相關(guān)聯(lián)的請求類別。這些請求類別在SLO策略數(shù)據(jù)庫218中以樹型結(jié)構(gòu)存儲。服務類別策略引擎添加并更新與每個請求類別相關(guān)的信息,并據(jù)此更新SLO策略數(shù)據(jù)庫218。
在第一層中對于用戶請求確定服務類別,然后在請求環(huán)境中,該服務類別隨請求從一層傳遞至另一層(從一個環(huán)境代理到另一個環(huán)境代理)。無需訪問CNMS 216就可以確定動態(tài)服務類別策略以及到服務類別的映射。另外,每個環(huán)境代理在其中具有最新的策略高速緩存(未示出),從而在本地執(zhí)行到合適的服務類別的映射。
在周期性時間間隔、或在必要時和在需要時(例如,當用戶希望查看在性能控制臺上當前運行的請求時),行為映像處理引擎對關(guān)于完成的和當前運行的請求的信息來輪詢本地環(huán)境代理?;蛘?,在固定時間間隔、或在到達閾值(即記錄的數(shù)量)時,行為映像處理引擎可以指示每個環(huán)境代理開始將新記錄發(fā)送至該行為映像處理引擎。行為映像處理引擎收集對于每個請求的數(shù)據(jù),進行計算(例如平均值、方差等),并且在不同的時間間隔將結(jié)果存儲在SLO策略數(shù)據(jù)庫218中,作為分析每個請求類別的基線。基于存儲在SLO策略數(shù)據(jù)庫218中的可用數(shù)據(jù),位于CNMS 216中的服務類別策略生成引擎創(chuàng)建一組規(guī)則,這些規(guī)則用作對新服務類別策略的推薦。CNMS 216使用這些推薦來確定服務類別策略。在SLO策略數(shù)據(jù)庫218中存儲這些服務類別策略。
需要注意的是,SLO策略數(shù)據(jù)庫218存儲自動生成的策略和用戶定義的服務類別策略。用戶可以通過系統(tǒng)200的用戶界面(未示出)或通過編輯環(huán)境代理的配置文件來創(chuàng)建一組服務類別策略(即,用戶定義的服務類別策略)。用戶定義的服務類別策略的創(chuàng)建包括行為映像的用戶分析,以及由CNMS 216獲得對被提議的服務類別策略的許可。
環(huán)境代理從CNMS 216接收更新的服務類別策略。需要注意的是,無論新服務類別策略是自動生成還是用戶定義的,對環(huán)境代理來說都是透明的。環(huán)境代理對請求分配位于環(huán)境代理的本地策略高速緩存中的適合的特定層動態(tài)服務類別策略中所指定的服務類別。
或者,環(huán)境代理可以對請求分配與在某些情況下(例如,如果層當前不能提供用于實現(xiàn)該服務類別所需的全部資源,如果大量的高優(yōu)先級請求進入該層并導致對于低優(yōu)先級請求的資源短缺等)由動態(tài)服務類別所指定的不同的服務類別。又或者,環(huán)境代理可以更改請求的請求類別,隨后為請求分配由用于新請求類別的適合特定層動態(tài)服務類別策略所指定的服務類別。
系統(tǒng)200還執(zhí)行請求分類。這種分類包括根據(jù)不同的標準將多個請求(其中的每個請求都由它們的事務ID和請求環(huán)境指定)分類成請求類別。自動請求分類處理收集與請求關(guān)聯(lián)的一般信息(例如,頭信息、諸如查詢字符串的參數(shù)、在HTTP請求類型的情況下的統(tǒng)一資源定位符(URL)參數(shù)等)。當相同請求類別的另一個請求到達時,該請求將以與處理該請求類別中的其它請求相類似的方式進行處理。依照在相關(guān)行為映像中的請求類別性能特征,請求類別可以分成不同的種類(例如,具有大于兩秒的響應時間的請求類別組)。請求類別分組處理可以應用于報告的目的,以實現(xiàn)請求類型性能數(shù)據(jù)的較高級概要視圖。
系統(tǒng)200也支持用戶定義的分類處理,在所述用戶定義的分類處理中,用戶基于用于自動分類處理的同一請求信息來創(chuàng)建對請求進行分類的規(guī)則。用戶可以通過系統(tǒng)200的用戶界面(未示出)來創(chuàng)建分類規(guī)則。自動請求分類處理使用了一種如H.Zhu和T.Yang(2000年加州大學圣芭芭拉分校計算機科學系技術(shù)報告TRCS00-13的“動態(tài)WEB內(nèi)容的基于類的高速緩存管理”)所述的“基于類的高速緩存管理”算法。分類處理的輸出是表示請求類別和父類別的樹型(即在自動請求分類處理中)或者是分類規(guī)則組(即在用戶定義的分類處理)。分類處理所有的結(jié)果都存儲在SLO策略數(shù)據(jù)庫218中。
如在動態(tài)服務類別策略中所定義的,系統(tǒng)200也用于對每一層和每個被監(jiān)控的層來強化服務類別。由DTE和環(huán)境代理兩者來執(zhí)行策略強化??梢酝ㄟ^控制在每層中的請求排隊(即在該層中實際處理的請求的順序),或通過臨時更改在執(zhí)行期間運行該請求的處理程序集的處理優(yōu)先級來實現(xiàn)所述強化操作。
所述強化操作的實現(xiàn)取決于特定的層結(jié)構(gòu)。例如,在數(shù)據(jù)庫層中的實現(xiàn)可以包括使用數(shù)據(jù)庫資源管理方案,以根據(jù)適當?shù)姆疹悇e策略控制會話資源分配。這種實現(xiàn)的另一實例是通過以下操作來使用J2EE應用服務器的應用,以在應用服務器層中實現(xiàn)所述強化操作,其中所述操作包括擴展應用服務器WEB隊列以支持請求優(yōu)先級化分,擴展企業(yè)級JavaBEAN(EJB)隊列以支持優(yōu)先級化分,控制Java線程優(yōu)先級等。
現(xiàn)在參見圖7,該圖為圖5系統(tǒng)的動態(tài)層擴展的示意圖。需要注意的是,圖5所示第四層208的DTE 228是表示在系統(tǒng)200中所有的動態(tài)層擴展。DTE 228包括多個軟連接(hook)或用于進入第四層208的偵聽點。用標號266和268表示的這些連接用于收集請求相關(guān)信息和性能數(shù)據(jù)。這些連接也可以更改用于執(zhí)行UOW的處理程序集的優(yōu)先級。連接將所收集到的信息放置在專用消息隊列270中。軟連接和偵聽技術(shù)依賴于特定環(huán)境。例如,該環(huán)境可以是WEB服務器、基于JAVA的J2EE應用服務器、數(shù)據(jù)庫、消息發(fā)送服務器等。需要注意的是,偵聽點266或268可以由控制者實時激活或停止。
DTE 228還包括在第四層208上運行的進程。該進程處理來自偵聽點的消息,將消息通信至環(huán)境代理236,將消息返回至偵聽點,并執(zhí)行DTE的管理控制功能(例如,開始/停止跟蹤請求,設(shè)置或去除軟連接)。DTE 228包括DTE后臺程序(daemon)272、DTE管理器274、DTE消息發(fā)送模塊276、DTE日志事件處理器278和DTE通信接口280。
DTE后臺程序272是在該層中運行的人工創(chuàng)建的處理程序集。該DTE后臺程序272執(zhí)行與不需保持請求的通知事件關(guān)聯(lián)的異步處理。報告事件有兩種情況。在第一種情況下,不需要保持請求,直至接收到響應。例如,當報告一請求已經(jīng)結(jié)束時,不需要對該請求進行延遲,直至在已經(jīng)實際通知環(huán)境代理之后。第二種情況下,在處理重新開始前,該請求需要保持某一時間段。例如,當獲得請求的服務類別或執(zhí)行請求的分類處理時,在由環(huán)境代理確定請求類別和服務類別之前,不能開始處理,否則可使用錯誤的服務類別或錯誤的請求類別進行處理。
DTE后臺程序272用于處理第一種情況,即不需保持請求的情況。處理是異步進行的,從而請求沒有被延遲。由此請求很快(幾乎立即)被釋放。DTE后臺程序272具有與其關(guān)聯(lián)的隊列270。在由偵聽點266和268通知請求進入或請求退出之后,DTE后臺程序272從隊列270中提取這些通知,并執(zhí)行任何必要的附加處理。
DTE管理器274使DTE228接收與應如何處理請求相關(guān)的消息。例如,這些消息可以包括停止跟蹤請求、繼續(xù)跟蹤請求但停止優(yōu)先級化分等。DTE消息模塊276使用消息與環(huán)境代理236進行通信。例如,這種消息可以包括UOW的開始和結(jié)束、UOW和給定請求的關(guān)聯(lián)等。DTE日志事件處理器278記錄涉及DTE運行的跟蹤信息為日志,以及記錄由DTE 228發(fā)出的報警為日志。這些記錄為日志事件可以被發(fā)送到多個目的地,例如本地文件、系統(tǒng)消息控制臺、系統(tǒng)日志等。DTE日志事件處理器278支持多個工業(yè)標準協(xié)議,例如簡單網(wǎng)絡管理協(xié)議(SNMP)等。DTE通信接口280用作DTE 228和環(huán)境相關(guān)代理236之間的接口。DTE通信接口280將從環(huán)境代理236的代理消息發(fā)送模塊286發(fā)送的消息中繼至DTE 228。DTE通信接口280還將從DTE228的DTE消息發(fā)送模塊276發(fā)送的消息中繼至環(huán)境代理236。支持多個通信協(xié)議,每個DTE使用在其構(gòu)架上可用的最有效的通信方法,例如進程間通信,傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)等。
現(xiàn)在參見圖8,該圖為圖5所示系統(tǒng)的環(huán)境代理的示意圖。需要注意的是,圖5所示的第四層208的環(huán)境代理236表示在系統(tǒng)200中所有的環(huán)境代理。環(huán)境代理236經(jīng)由多種機制(例如TCP/IP、進程間通信信道等)從DTE228接收通知。所述通知為層內(nèi)所發(fā)生的事件通知,例如請求環(huán)境的獲得、UOW的開始、UOW的結(jié)束、UOW的資源消耗、在遠處的層上UOW的調(diào)用/分配、在遠處的層上UOW的應答/釋放等。環(huán)境代理236包括代理日志事件處理器282、代理通信接口284、代理消息發(fā)送模塊286、環(huán)境表管理器288、分類管理器290、策略管理器292和代理管理器294。
環(huán)境代理236將代理日志事件處理器282用于內(nèi)部事務管理的目的,以及用于記錄由環(huán)境代理236發(fā)出的報警作為日志。代理日志事件處理器282記錄進入環(huán)境表的信息作為日志(下文將進行介紹),也用于內(nèi)部跟蹤和消息發(fā)送的目的,例如用以檢測在環(huán)境代理236內(nèi)部發(fā)生的運行異常(即問題或錯誤)。這些被記錄為日志的事件可以被發(fā)送給多個目的地,例如本地文件、系統(tǒng)消息控制臺、系統(tǒng)日志等。代理日志事件處理器282支持如SNMP等的多個工業(yè)標準協(xié)議。
代理通信接口284用作DTE 228和環(huán)境代理236之間的接口。代理通信接口284將從DTE 228的DTE消息發(fā)送模塊276發(fā)送的消息中繼至環(huán)境代理236。代理通信接口284還將從環(huán)境代理236的代理消息發(fā)送模塊286發(fā)送的消息中繼至DTE 228??纱嬖诙鄠€用于連接DTE 228和環(huán)境代理236的信道,以保障在上述兩者之間快速可靠的通信,并且這些信道中至少有幾條信道是一直打開的,例如高優(yōu)先級信道和管理信道。對于不同類型的消息,還存在每種類型信道的多個連接。因此,代理通信接口284可用于容納這些不同的可能性。
代理消息發(fā)送模塊286向與遠處的層相關(guān)聯(lián)的其它環(huán)境代理通知請求已經(jīng)被發(fā)送給所述遠處的層。代理消息發(fā)送模塊286還使用消息與DTE 228通信。例如,這種消息包括UOW的開始或結(jié)束,UOW和請求的關(guān)聯(lián)等。代理消息發(fā)送模塊286通過代理通信接口284與DTE 228進行通信。
環(huán)境表管理器288用作環(huán)境代理的記錄器。環(huán)境表管理器288中維護有稱為“環(huán)境表”的交叉參考表,其用于將運行在層上的UOW和它們的請求環(huán)境相關(guān)聯(lián)。請求環(huán)境可以來自當前層(即在用戶請求的情況下),從來自請求執(zhí)行鏈的先前層中繼,或以上兩者(即請求環(huán)境被修改或在其中加入新信息)。請求環(huán)境表儲存與每個請求相關(guān)的信息(例如,事務ID、請求類別、服務類別、請求源等)。在代理消息模塊286接收到來自DTE 228的消息之后,代理消息模塊286訪問環(huán)境表,并查詢信息記錄。環(huán)境表管理器288基于與請求相關(guān)的信息和環(huán)境表中存儲的數(shù)據(jù)來識別請求。由此,環(huán)境代理236獲得與進入該層的請求相關(guān)的信息,例如請求類別、服務類別以及與請求關(guān)聯(lián)的其它相關(guān)信息。
分類管理器290和策略管理器292用于處理進入第一層的每個用戶請求。當用戶請求第一次進入計算環(huán)境中時,在環(huán)境表中不存在與該用戶請求相關(guān)的信息。因此需要對此用戶請求進行分類。在分類階段,收集在請求進入端口關(guān)于用戶請求已知的所有信息。例如,如果用戶請求是HTTP請求,則這種信息包括HTTP頭、查詢字符串、URL參數(shù)等。對于在每一層中使用的每種類型的協(xié)議,都具有對用戶請求實際分類的通用插件。
分類處理通過將技術(shù)請求相關(guān)的信息(例如HTTP請求)解釋成與商務處理(例如檢索銀行帳戶余額)相關(guān)的正式請求類別來從用戶請求中提取商務前景信息。將用戶請求處于特定的請求類別。用戶請求可以被識別為商務處理的一部分或一組相關(guān)事務。例如,帳戶余額的檢索可以是申請抵押這一較大過程的一部分。當從環(huán)境代理236將信息傳送到CNMS 216時,CNMS216可以確定行為映像,并檢測對于請求類別的請求行為趨勢。
策略管理器292為請求分配服務類別。策略管理器292接收分類管理器290的輸出,并基于請求類別、請求環(huán)境和動態(tài)服務類別策略,來確定給定請求的服務類別。例如,策略管理器292可以設(shè)置某一請求類別的所有請求,以具有比不同請求類別的所有請求較高優(yōu)先級的服務類別。環(huán)境代理通過依據(jù)動態(tài)服務類別策略更新具有合適的服務類別的請求環(huán)境來對于在與其關(guān)聯(lián)的層上正處理的請求分配服務類別。
跨層服務類別策略數(shù)據(jù)庫包括在多層計算環(huán)境下對于所有層的從服務類別到請求類別的映射組。根據(jù)正處理請求的層,可對屬于某請求類別的每一請求分配不同的服務類別。參見圖2,可以在第一層102上對用戶請求R1分配具有較低優(yōu)先級的服務類別,在第二層104上對請求R2分配具有較高優(yōu)先級的服務類別,以及在第三層106上對請求R3分配具有中等優(yōu)先級的服務類別??鐚臃疹悇e策略存儲在SLO策略數(shù)據(jù)庫218中。跨層服務類別策略可以自動生成(即系統(tǒng)定義),也可以由系統(tǒng)的用戶定義。
另外,本層的主管(例如數(shù)據(jù)庫管理員)可以對該層進行管理控制,如果認為必要可以修改該層的服務類別策略。層主管可通過該層的環(huán)境代理來更改分配給請求的服務類別。層主管對該層上的運行所有處理具有充分的總體認識。需要注意的是,還可以存在系統(tǒng)的總主管,該總主管通常是運行用戶應用本身,并對系統(tǒng)全局負責的人。
需要注意的是,在對用戶請求的初始分類和策略分配之后,當環(huán)境代理將此信息從一層中繼至另一層時(即存儲在每一層的環(huán)境表中),請求類別被保持用于同一事務的隨后的請求。通過這種方式,在每一層環(huán)境代理識別請求所屬的請求類別,請求所在的特定層服務類別以及與請求相關(guān)的其它信息。
代理管理器294是對于CNMS 216的接口。代理管理器294向CNMS 216通知歷史數(shù)據(jù)。例如,DTE指示UOW已經(jīng)結(jié)束時,與該UOW關(guān)聯(lián)的信息不需保存在環(huán)境表中。然后,將所述信息從環(huán)境表發(fā)送到代理管理器294,其中代理管理器294對所述信息進行存檔,并周期性地將所述信息發(fā)送給CNMS 216。代理管理器294還從CNMS 216接收新動態(tài)服務類別策略、環(huán)境代理的新配置等。代理管理器294也可以被實時查詢,以獲得狀態(tài)指示。所述狀態(tài)指示可以包括環(huán)境表中當前存儲什么信息,哪些UOW正在運行等。
現(xiàn)在參見圖9,此圖為示出依據(jù)所公開技術(shù)的另一實施例而實施的在獲得請求環(huán)境的處理和隨后處理中所包括的階段的框圖。在過程310,獲得了請求環(huán)境。新用戶請求被識別,并且其請求環(huán)境被DTE軟連接所偵聽。參見圖5,DTE 222獲得進入第一層202的用戶請求的請求環(huán)境。
在過程312,獲得的請求環(huán)境被標準化。DTE將該請求環(huán)境轉(zhuǎn)換成與所有類型的層(例如數(shù)據(jù)庫,應用服務器等)相同的標準格式。DTE對用戶請求分配唯一的標識符(即事務ID),該標識符用于識別在由用戶請求發(fā)起的事務中的該用戶請求和隨后的請求。DTE還從該層獲得用戶請求的請求ID。參見圖5,DTE 222將獲得的請求環(huán)境轉(zhuǎn)換成標準格式,對用戶請求分配事務ID,并獲得用戶請求的請求ID。
在過程314,DTE向與該層關(guān)聯(lián)的環(huán)境代理發(fā)送請求環(huán)境、事務ID和請求ID。DTE通知環(huán)境代理已經(jīng)發(fā)送了新請求環(huán)境。參見圖5,DTE 222向環(huán)境代理232發(fā)送該用戶請求的請求環(huán)境、事務ID和請求ID。
在過程316,用戶請求被分類。環(huán)境代理應用基于請求環(huán)境來確定請求類別的特定層分類方案。參見圖5,環(huán)境代理232將用戶請求分類為某一請求類別。
在過程318,從在本地策略高速緩存中存儲的服務類別策略中檢索適合的動態(tài)服務類別策略。環(huán)境代理使用請求類別和可能的其它請求環(huán)境字段來檢索動態(tài)服務類別策略。參見圖5,環(huán)境代理232依據(jù)對于第一層202特定的用戶請求的請求類別檢索用于用戶請求的適合的動態(tài)服務類別策略。
在過程320,依據(jù)檢索到的服務類別策略來確定用戶請求的服務類別,并將此服務類別分配給請求。隨后環(huán)境代理可以將被分配的服務類別添加到請求環(huán)境中。參見圖5,環(huán)境代理232將檢索到的合適的服務類別策略的服務類別分配給用戶請求,并將服務類別添加到請求環(huán)境中。
在過程322,對于由用戶請求調(diào)用的UOW確定層優(yōu)先級。從服務類別中提取用于執(zhí)行UOW的處理程序集的本地優(yōu)先級。參見圖5,環(huán)境代理232從分配的服務類別中提取已分配給用于執(zhí)行UOW的用戶請求的處理程序集的本地優(yōu)先級。
在過程324,環(huán)境代理將請求類別和優(yōu)先級劃分信息發(fā)送回DTE。此信息對于某些任務是必要的,例如更改在DTE中發(fā)生的處理程序集的優(yōu)先級。參見圖5,環(huán)境代理232向DTE 222發(fā)送對于執(zhí)行UOW的處理程序集的所分配的請求類別和本地優(yōu)先級。
在過程326,將請求環(huán)境和相關(guān)信息(例如請求類別和事務ID)轉(zhuǎn)發(fā)至其它環(huán)境代理和環(huán)境代理的內(nèi)部組件,其中最特別地包括儲存請求的以及可檢索請求環(huán)境和相關(guān)信息以用于進一步引用的環(huán)境表。參見圖5,環(huán)境代理232將請求環(huán)境和與請求相關(guān)的附加信息(例如請求ID,事務ID,請求類別等)轉(zhuǎn)發(fā)至與其相連的其它環(huán)境代理(例如環(huán)境代理234)以及環(huán)境代理232的內(nèi)部組件,例如環(huán)境表管理器288、分類管理器290和策略管理器292(參見圖8)。
現(xiàn)在參見圖10,該圖為示出依據(jù)所公開技術(shù)的另一實施例而實施的在圖5所示系統(tǒng)的本地層上獲得UOW分配的處理以及將請求與UOW關(guān)聯(lián)的處理所包括的階段的框圖。如上文所述,UOW是在該層上在與請求關(guān)聯(lián)的處理程序集中執(zhí)行的應用邏輯。在過程340,由DTE獲得UOW分配。當由該層初始調(diào)用UOW時,在進入請求進入在層的請求進入端口的隊列時,在進入請求保持排隊時,或者一旦在該層中資源可用時和請求退出隊列時,可進行所述獲得處理。參見圖5,DTE 228獲得由第四層208分配的UOW。
在過程342,DTE確定與UOW分配相關(guān)聯(lián)的進入請求的請求ID?;趶南惹皩影l(fā)送的信息(包括請求環(huán)境和連接UOW與請求的關(guān)聯(lián)鍵,例如socket標識符等)來確定請求ID。參見圖5,DTE 228基于從先前連接的層(例如第三層206)收到的信息確定與獲得的UOW分配相關(guān)聯(lián)的進入請求的請求ID。
在過程342發(fā)生時,可以出現(xiàn)請求環(huán)境和連接鍵還未到達DTE的情況。因此,可通過等待所述信息,或者通過在隨后的階段分配臨時請求ID并且將進入請求與UOW關(guān)聯(lián)來配置該系統(tǒng),以繼續(xù)進行處理。
在過程344,DTE向環(huán)境代理發(fā)送與UOW識別相關(guān)的信息和進入請求的已確定的請求ID。UOW識別信息是用于識別執(zhí)行UOW的處理程序集的唯一特征組。由環(huán)境代理使用UOW識別信息來跟蹤UOW。參見圖5,DTE228向環(huán)境代理236發(fā)送用于UOW的關(guān)聯(lián)信息(例如像socket標識符的連接UOW和請求的關(guān)聯(lián)鍵)和進入請求的所確定的請求ID。
在過程346,環(huán)境代理檢索在與UOW識別信息或請求ID相關(guān)的環(huán)境表中的條目。參見圖5,環(huán)境代理232通過與獲得的UOW分配或確定的請求ID關(guān)聯(lián)的環(huán)境表管理器288(圖8)定位在環(huán)境表中的條目。
如果該條目被找到,則在過程348,使用UOW識別信息和相關(guān)信息來更新該條目。參見圖5,環(huán)境代理232使用所獲得的UOW分配和相關(guān)信息的識別信息通過環(huán)境表管理器288(圖8)來更新在環(huán)境表中的相關(guān)條目。
如果該條目未被找到,則在過程350,向環(huán)境表添加一個新條目。所述新條目包括進入請求的請求ID和所關(guān)聯(lián)的UOW分配的識別信息。缺省的請求類別和服務類別與新添加的條目關(guān)聯(lián)。參見圖5,環(huán)境代理232通過環(huán)境表管理器288(圖8)向環(huán)境表添加一個新條目,其中所述新條目包括進入請求的請求ID和UOW分配的識別信息,并將缺省請求類別和服務類別與新添加的條目關(guān)聯(lián)。
在過程352,環(huán)境代理確定用于執(zhí)行UOW的處理程序集的本地優(yōu)先級,并在需要的情況下收集請求統(tǒng)計信息。參見圖5,環(huán)境代理232提取用于執(zhí)行UOW的處理程序集的本地優(yōu)先級,其中所述UOW由來自分配給該請求的服務類別的請求所調(diào)用。
在過程354,環(huán)境代理對分配給進入請求的服務列表進行強化。參見圖5,環(huán)境代理232例如通過更改用于執(zhí)行由該請求調(diào)用的UOW的處理程序集的優(yōu)先級水平、更改處理程序集的執(zhí)行類型或者分配或拒絕用于處理該請求的計算資源來影響在第一層202的進入請求的處理。
需要注意的是,如果環(huán)境代理接收到與請求相關(guān)的新關(guān)聯(lián)信息,則環(huán)境代理可隨后更改服務類別、請求類別或請求環(huán)境的其他參數(shù)。這發(fā)生在這樣的情況下,即請求環(huán)境從遠處的環(huán)境代理到達與該層關(guān)聯(lián)的環(huán)境代理的情況(例如參見圖5,環(huán)境代理234從環(huán)境代理232接收關(guān)于請求的信息)。由于時間原因,環(huán)境代理可以獲得與請求關(guān)聯(lián)的UOW分配,然后在以后的階段接收該請求的請求環(huán)境。
現(xiàn)在參見圖11,該圖為示出依據(jù)所公開的技術(shù)的另一個實施例而實施的在獲得已發(fā)送至圖5所示系統(tǒng)的遠處的層的退出請求的處理以及將發(fā)送的請求與請求環(huán)境關(guān)聯(lián)的處理所包括的階段的框圖。在過程370,由第一層的DTE獲得從第一層發(fā)送到第二層的請求。參見圖5,將請求從第一層202發(fā)送到第二層204。DTE 222在第一層202上獲得退出請求。
在過程372,DTE確定退出請求的請求ID。參見圖5,DTE 222確定從第一層202發(fā)送到第二層204的退出請求的請求ID。
在過程374,DTE向本地環(huán)境代理發(fā)送與UOW識別信息相關(guān)的信息和退出請求的已確定的請求ID。參見圖5,DTE 228向本地環(huán)境代理236發(fā)送與UOW識別信息相關(guān)的信息和退出請求的已確定的請求ID。
在過程376,本地環(huán)境代理在環(huán)境代理表中檢索與退出請求的請求ID或UOW識別信息相關(guān)的條目。參見圖5,環(huán)境代理232通過環(huán)境表管理器288(圖8)在環(huán)境表中定位與已確定的退出請求ID或UOW識別信息相關(guān)的條目。
如果該條目被找到,則在過程378中,使用UOW識別信息和相關(guān)信息來更新該條目。例如,可使用當前不在該條目中的退出請求的請求環(huán)境中的信息來更新該條目。參見圖5,環(huán)境代理232使用UOW識別信息以及使用在相關(guān)條目中先前存儲的退出請求的請求環(huán)境中的信息通過環(huán)境表管理器288(圖8)來更新在環(huán)境表中的條目。
如果該條目未被找到,則在過程380中,向環(huán)境表添加一個新條目。所述新條目包括退出請求的請求ID和所關(guān)聯(lián)的UOW分配的識別信息。將請求類別、服務類別以及請求環(huán)境中存儲的其它請求特征信息添加到新條目中。如果在請求環(huán)境中不存在某些特征,那么將缺省特征(例如,請求類別和服務類別)與新添加條目關(guān)聯(lián)。參見圖5,環(huán)境代理232通過環(huán)境表管理器288(圖8)向環(huán)境表添加一個新條目,其中所述新條目包括退出請求的請求ID和存儲在退出請求的請求環(huán)境中的請求的特征。
在過程382,本地環(huán)境代理發(fā)送消息給遠程環(huán)境代理(即退出請求被發(fā)送給的環(huán)境代理)。該消息包括退出請求的請求ID、事務ID和請求類別。參見圖5,與第一層202關(guān)聯(lián)的環(huán)境代理232發(fā)送消息給與第二層204關(guān)聯(lián)的環(huán)境代理235。該消息包括退出請求的請求ID、事務ID及其請求類別。
在所公開技術(shù)的另一個實施例中,可以存在與多層主機相關(guān)聯(lián)的單獨的環(huán)境代理。需要注意的是,環(huán)境代理與DTE通信的方式使環(huán)境代理處于網(wǎng)絡上的任何位置。還需要注意的是,環(huán)境代理通過對請求和UOW附加層標識符來保持對其的跟蹤,從而對每個層提供分別的記錄。例如,由于安全的考慮或者將環(huán)境代理添加至層主機所產(chǎn)生的用戶額外負載的考慮,可使用這種實施例。
本領(lǐng)域的技術(shù)人員應該理解,所公開技術(shù)并不限于以上特別示出和描述出的內(nèi)容。然而,所公開技術(shù)的范圍僅由如下權(quán)利要求來限定。
權(quán)利要求
1.一種用于監(jiān)控多層計算環(huán)境中的所選層的裝置,所述裝置包括環(huán)境代理,其與所述計算環(huán)境的所述所選層相關(guān)聯(lián),以及與其它環(huán)境代理相連,每個所述其它環(huán)境代理與所述計算環(huán)境的各個層相關(guān)聯(lián);和動態(tài)層擴展,所述動態(tài)層擴展與所述環(huán)境代理相連,以及至少與所述所選層的請求進入端口相連,至少用于監(jiān)控通過所述所選層的請求通信量,所述被監(jiān)控的請求通信量包括在所述請求進入端口接收到的來自所述計算環(huán)境的相鄰層的至少一個進入請求,所述動態(tài)層擴展向所述環(huán)境代理提供請求信息,所述請求信息至少用于識別包含在所述被監(jiān)控的請求通信量中的每個請求,其中所述環(huán)境代理從與所述相鄰層關(guān)聯(lián)的另一環(huán)境代理接收環(huán)境信息,所述接收到的環(huán)境信息與所述至少一個進入請求的請求環(huán)境相關(guān);和其中對所述至少一個進入請求中的每一個進入請求,所述環(huán)境代理將所述環(huán)境信息分別與所述請求信息相關(guān)聯(lián)。
2.根據(jù)權(quán)利要求1所述的裝置,其中所述動態(tài)層擴展還至少與所述所選層的請求退出端口相連,并且其中所述被監(jiān)控的請求通信量還包括在所述請求退出端口接收到的至少一個退出請求,所述所選層向所述計算環(huán)境的另一相鄰層提供所述至少一個退出請求,其中所述環(huán)境代理使得所述至少一個退出請求和所述至少一個進入請求相關(guān)聯(lián);并且,向與所述另一相鄰層相關(guān)聯(lián)的另一環(huán)境代理發(fā)送與所述至少一個退出請求的請求環(huán)境相關(guān)的環(huán)境信息。
3.根據(jù)權(quán)利要求1所述的裝置,其中所述動態(tài)層擴展還與所述所選層的層控制端口相連。
4.根據(jù)權(quán)利要求3所述的裝置,其中所述環(huán)境代理還更改用于執(zhí)行所述至少一個進入請求的處理程序集的優(yōu)先級水平。
5.根據(jù)權(quán)利要求3所述的裝置,其中所述環(huán)境代理還更改用于執(zhí)行所述至少一個進入請求的處理程序集的執(zhí)行類型。
6.根據(jù)權(quán)利要求1或3所述的裝置,其中所述環(huán)境代理還調(diào)整在所述請求進入端口的隊列中的所述至少一個進入請求的次序。
7.根據(jù)權(quán)利要求1或3所述的裝置,其中所述環(huán)境代理還指示所述所選層分配用于處理所述至少一個進入請求的計算資源。
8.根據(jù)權(quán)利要求1或3所述的裝置,其中所述環(huán)境代理還指示所述所選層拒絕用于處理所述至少一個進入請求的計算資源。
9.根據(jù)權(quán)利要求1所述的裝置,其中所述環(huán)境信息至少包括請求標識符、事務標識服務、請求類別和環(huán)境相關(guān)數(shù)據(jù)。
10.根據(jù)權(quán)利要求9所述的裝置,其中所述環(huán)境相關(guān)數(shù)據(jù)包括所述至少一個進入請求的整個所述請求環(huán)境。
11.根據(jù)權(quán)利要求9所述的裝置,其中所述環(huán)境相關(guān)數(shù)據(jù)包括所述至少一個進入請求的所述請求環(huán)境的一部分。
12.根據(jù)權(quán)利要求9所述的裝置,其中所述環(huán)境相關(guān)數(shù)據(jù)包括所述至少一個進入請求的所述請求環(huán)境的指示。
13.根據(jù)權(quán)利要求2所述的裝置,其中所述環(huán)境代理包括代理通信接口,用于在所述動態(tài)層擴展和所述環(huán)境代理之間中繼消息;代理消息發(fā)送模塊,用于通知所述另一環(huán)境代理所述至少一個退出請求已經(jīng)被發(fā)送到所述另一相鄰層,所述代理消息發(fā)送模塊還使用此消息與所述動態(tài)層擴展進行通信;和環(huán)境表管理器,用于維護一張參考表,該參考表使得運行在所述所選層上的至少一個工作單元和已分配所述工作單元的所述至少一個進入請求的所述請求環(huán)境相關(guān)聯(lián),所述參考表為環(huán)境表,所述環(huán)境表還存儲與所述至少一個進入請求所相關(guān)的信息,所述環(huán)境表管理器還基于在所述環(huán)境表中存儲的信息來識別至少一個進入請求。
14.根據(jù)權(quán)利要求13所述的裝置,其中所述環(huán)境代理還包括分類管理器,基于所述接收到的環(huán)境信息來用于對所述至少一個進入請求進行分類,所述分類管理器還識別所述至少一個進入請求作為事務的一部分。
15.根據(jù)權(quán)利要求13所述的裝置,其中所述環(huán)境代理還包括策略管理器,用于依據(jù)動態(tài)服務類別策略和所述至少一個進入請求的所述分類,來對所述至少一個進入請求分配服務類別策略。
16.根據(jù)權(quán)利要求13所述的裝置,其中所述環(huán)境代理還包括代理日志事件處理器,用于執(zhí)行事件日志記錄、內(nèi)部跟蹤和消息發(fā)送,以及檢測在所述環(huán)境代理內(nèi)的操作異常。
17.根據(jù)權(quán)利要求13所述的裝置,其中所述環(huán)境代理還包括代理管理器,用于對信息進行存檔、將歷史數(shù)據(jù)發(fā)送至環(huán)境網(wǎng)絡管理服務器(CNMS)、從所述CNMS接收動態(tài)服務類別策略和附加數(shù)據(jù)。
18.根據(jù)權(quán)利要求3所述的裝置,其中所述動態(tài)層擴展包括動態(tài)層擴展后臺程序,用于執(zhí)行與不保持所述至少一個進入請求的通知事件關(guān)聯(lián)的異步處理;動態(tài)層擴展消息發(fā)送模塊,用于使用消息與所述環(huán)境代理進行通信;和動態(tài)層擴展通信接口,用于在所述動態(tài)層擴展和所述環(huán)境代理之間中繼消息。
19.根據(jù)權(quán)利要求18所述的裝置,其中所述動態(tài)層擴展還包括動態(tài)層擴展管理器,用于使所述動態(tài)層擴展接收與應如何處理所述至少一個進入請求相關(guān)的消息。
20.根據(jù)權(quán)利要求18所述的裝置,其中所述動態(tài)層擴展包括動態(tài)層擴展日志事件處理器,用于記錄涉及所述動態(tài)層擴展的跟蹤信息為日志,以及記錄由所述動態(tài)層擴展發(fā)出的報警為日志。
21.根據(jù)權(quán)利要求1所述的裝置,其中所述環(huán)境代理處于與所述所選層的同一主機上。
22.根據(jù)權(quán)利要求3所述的裝置,其中所述動態(tài)層擴展從所述所選層收集性能、可用性和錯誤的指標。
23.一種用于監(jiān)控多層計算環(huán)境中的所選層的裝置,所述裝置包括環(huán)境代理,其與所述所選層相關(guān)聯(lián),以及與至少一個其它環(huán)境代理相連,每個所述至少一個其它環(huán)境代理與所述計算環(huán)境的各個層相關(guān)聯(lián);和動態(tài)層擴展,所述動態(tài)層擴展與所述環(huán)境代理相連,以及與所述所選層的請求進入端口和請求退出端口中的至少一個相連,所述動態(tài)層擴展至少中的至少一個監(jiān)控通過所述所選層的請求通信量,所述被監(jiān)控的請求通信量包括在所述請求進入端口接收到的至少一個進入請求和在所述退出端口接收到的至少一個各自的退出請求,所述所選層向相鄰層提供所述至少一個各自的退出請求,所述動態(tài)層擴展獲得所述至少一個進入請求的請求環(huán)境,所述動態(tài)層擴展向所述環(huán)境代理提供請求信息和環(huán)境信息,所述請求信息至少用于識別包含在所述被監(jiān)控的請求通信量中的每個請求,所述環(huán)境信息與所述至少一個進入請求的所述被獲得的請求環(huán)境相關(guān)聯(lián),其中所述環(huán)境代理將所述至少一個進入請求與所述至少一個退出請求相關(guān)聯(lián),和其中所述環(huán)境代理向與所述相鄰層相關(guān)聯(lián)的另一環(huán)境代理提供環(huán)境信息,該環(huán)境信息與所述至少一個各自的退出請求的請求環(huán)境相關(guān)。
24.根據(jù)權(quán)利要求23所述的裝置,其中所述至少一個進入請求為從用戶應用接收的用戶請求。
25.根據(jù)權(quán)利要求23所述的裝置,其中所述環(huán)境信息至少包括請求標識符、事務標識符、請求類別和環(huán)境相關(guān)數(shù)據(jù)。
26.根據(jù)權(quán)利要求23所述的裝置,其中所述環(huán)境代理依據(jù)所述環(huán)境信息將所述至少一個進入請求劃分成請求類別。
27.根據(jù)權(quán)利要求26所述的裝置,其中所述環(huán)境代理包含特定層服務類別策略組,每個所述特定層服務類別策略都將服務類別映射到用于所述所選層的請求類別,其中動態(tài)服務類別策略包含當前有效的請求類別到服務類別的映射;和其中所述環(huán)境代理基于所述請求類別和在所述特定層服務類別策略組中的適合的動態(tài)服務類別策略對所述至少一個進入請求分配服務類別。
28.根據(jù)權(quán)利要求26所述的裝置,其中所述環(huán)境代理包含特定層服務類別策略組,每個所述特定層服務類別策略都將服務類別映射到用于所述所選層的請求類別,其中動態(tài)服務類別策略包含當前有效的請求類別到服務類別的映射;和其中所述環(huán)境代理對所述至少一個進入請求分配服務類別,所述服務類別與所述請求類別和所述特定層服務類別策略組中的適合的動態(tài)服務類別策略所指定的服務類別不同。
29.根據(jù)權(quán)利要求27或28所述的裝置,其中所述服務類別包括將要分配給所述至少一個進入請求的優(yōu)先級。
30.根據(jù)權(quán)利要求27或28所述的裝置,其中所述服務類別包括將要分配給所述至少一個進入請求的中央處理單元的百分比。
31.根據(jù)權(quán)利要求27或28所述的裝置,其中所述服務類別包括將要分配給所述至少一個進入請求的存儲器。
32.根據(jù)權(quán)利要求27或28所述的裝置,其中所述服務類別包括對于所述至少一個進入請求而分配和訪問輸入和輸出設(shè)備的優(yōu)先級。
33.根據(jù)權(quán)利要求27或28所述的裝置,其中周期性地更新所述服務類別策略。
34.根據(jù)權(quán)利要求27或28所述的裝置,其中由所述多層計算環(huán)境的用戶來定義所述服務類別策略。
35.根據(jù)權(quán)利要求27或28所述的裝置,其中所述環(huán)境代理向所述請求環(huán)境添加所述被分配的服務類別。
36.根據(jù)權(quán)利要求23所述的裝置,其中所述動態(tài)層擴展還與所述所選層的層控制端口相連。
37.根據(jù)權(quán)利要求36所述的裝置,其中所述環(huán)境代理還更改用于執(zhí)行所述至少一個進入請求的處理程序集的優(yōu)先級水平。
38.根據(jù)權(quán)利要求36所述的裝置,其中所述環(huán)境代理還更改用于執(zhí)行所述至少一個進入請求的處理程序集的執(zhí)行類型。
39.根據(jù)權(quán)利要求23或36所述的裝置,其中所述環(huán)境代理還調(diào)整在所述請求進入端口的隊列中的所述至少一個進入請求的次序。
40.根據(jù)權(quán)利要求23或36所述的裝置,其中所述環(huán)境代理還指示所述所選層分配用于處理所述至少一個進入請求的計算資源。
41.根據(jù)權(quán)利要求23或36所述的裝置,其中所述環(huán)境代理還指示所述所選層拒絕用于處理所述至少一個進入請求的計算資源。
42.根據(jù)權(quán)利要求23所述的裝置,其中所述動態(tài)層擴展對于包含在所述被監(jiān)控的請求通信量中的每一個請求分配事務標識符。
43.根據(jù)權(quán)利要求23所述的裝置,其中所述動態(tài)層擴展獲得包含在所述被監(jiān)控的請求通信量的每一個請求的請求標識符。
44.根據(jù)權(quán)利要求23所述的裝置,其中所述環(huán)境代理包括代理通信接口,用于在所述動態(tài)層擴展和所述環(huán)境代理之間中繼消息;代理消息發(fā)送模塊,用于通知所述另一環(huán)境代理所述至少一個退出請求已經(jīng)被發(fā)送到所述另一相鄰層,所述代理消息發(fā)送模塊還使用此消息與所述動態(tài)層擴展進行通信;環(huán)境表管理器,用于維護將運行在所述所選層上的至少一個工作單元和已分配所述工作單元的所述至少一個進入請求的所述請求環(huán)境相關(guān)聯(lián)的參考表,所述參考表為環(huán)境表,所述環(huán)境表還存儲與所述至少一個進入請求所相關(guān)的信息,所述環(huán)境表管理器還基于在所述環(huán)境表中存儲的信息來識別至少一個進入請求;分類管理器,基于所述接收到的環(huán)境信息來用于對所述至少一個進入請求進行分類,所述分類管理器還識別所述至少一個進入請求作為事務的一部分;策略管理器,用于依據(jù)動態(tài)服務類別策略和所述至少一個進入請求的所述分類,來對所述至少一個進入請求分配服務類別策略。
45.根據(jù)權(quán)利要求44所述的裝置,其中所述環(huán)境代理還包括代理日志事件處理器,用于執(zhí)行事件日志記錄、內(nèi)部跟蹤和消息發(fā)送,以及檢測在所述環(huán)境代理內(nèi)的操作異常。
46.根據(jù)權(quán)利要求44所述的裝置,其中所述環(huán)境代理還包括代理管理器,用于對信息進行存檔、將歷史數(shù)據(jù)發(fā)送至環(huán)境網(wǎng)絡管理服務器(CNMS)、從所述CNMS接收動態(tài)服務類別策略和附加數(shù)據(jù)。
47.根據(jù)權(quán)利要求36所述的裝置,其中所述環(huán)境代理還包括動態(tài)層擴展后臺程序,用于執(zhí)行與不保持所述至少一個進入請求的通知事件關(guān)聯(lián)的異步處理;動態(tài)層擴展消息發(fā)送模塊,用于使用消息與所述環(huán)境代理進行通信;和動態(tài)層擴展通信接口,用于在所述動態(tài)層擴展和所述環(huán)境代理之間中繼消息。
48.根據(jù)權(quán)利要求47所述的裝置,其中所述環(huán)境代理還包括動態(tài)層擴展管理器,用于使所述動態(tài)層擴展接收與應如何處理所述至少一個進入請求相關(guān)的消息。
49.根據(jù)權(quán)利要求47所述的裝置,其中所述環(huán)境代理還包括動態(tài)層擴展日志事件處理器,用于記錄涉及所述動態(tài)層擴展的跟蹤信息為日志,以及記錄由所述動態(tài)層擴展發(fā)出的報警為日志。
50.根據(jù)權(quán)利要求23所述的裝置,其中所述環(huán)境代理處于與所述所選層的同一主機上。
51.根據(jù)權(quán)利要求36所述的裝置,其中所述動態(tài)層擴展從所述所選層收集性能、可用性和錯誤的指標。
52.一種在包括多個層的多層計算環(huán)境中用于應用性能管理的系統(tǒng),所述應用與所述多個層的至少所選的被監(jiān)控層相關(guān)聯(lián),該系統(tǒng)包括對于至少兩個所述被監(jiān)控層的每個層的各自的動態(tài)層擴展,其至少與所述被監(jiān)控層的請求進入端口相連,所述動態(tài)層擴展至少監(jiān)控通過所述各自被監(jiān)控層的請求通信量,所述被監(jiān)控的請求流量包括在所述請求進入端口收到的至少一個進入請求;和對于所述至少兩個所述被監(jiān)控層的每個層的各自的環(huán)境代理,其與所述各自動態(tài)層擴展相連,所述環(huán)境代理與直接連接至所述各自層的層關(guān)聯(lián)的其它所述環(huán)境代理相連,所述各自環(huán)境代理從所述各自動態(tài)層擴展接收請求信息,所述請求信息至少識別包含在所述被監(jiān)控的請求通信量中的每個請求,所述各自環(huán)境代理還從與所述相鄰層關(guān)聯(lián)的另一環(huán)境代理接收環(huán)境信息,所述環(huán)境信息與所述至少一個進入請求的請求環(huán)境相關(guān),對于所述至少一個進入請求中的每個進入請求,所述各自環(huán)境代理將所述環(huán)境信息分別與所述請求信息相關(guān)聯(lián)。
53.一種在包括多個層的多層計算環(huán)境中用于應用性能管理的系統(tǒng),所述應用與所述多個層的至少所選的被監(jiān)控層相關(guān)聯(lián),該系統(tǒng)包括對于至少兩個所述被監(jiān)控層的每個層的各自的動態(tài)層擴展,其與所述被監(jiān)控層的請求進入端口和請求退出端口中的至少一個相連,所述動態(tài)層擴展至少監(jiān)控通過所述各自被監(jiān)控層的請求通信量,所述被監(jiān)控的請求通信量包括在所述請求進入端口接收到的至少一個進入請求和在所述退出端口接收到的至少一個各自的退出請求,所述所選層向相鄰各自被監(jiān)控層提供所述至少一個各自的退出請求,所述動態(tài)層擴展獲得所述至少一個進入請求的請求環(huán)境;和對于所述至少兩個所述被監(jiān)控層的每個層的各自的環(huán)境代理,其與所述各自動態(tài)層擴展相連,所述環(huán)境代理與直接連接至所述各自層的層關(guān)聯(lián)的其它所述環(huán)境代理相連,所述各自環(huán)境代理從所述各自動態(tài)層擴展接收請求信息,所述請求信息至少識別包含在所述被監(jiān)控的請求通信量中的每個請求,所述各自環(huán)境代理還從所述各自動態(tài)層擴展接收環(huán)境信息,所述環(huán)境信息與所述至少一個進入請求的請求環(huán)境相關(guān)聯(lián),對于所述至少一個進入請求中的每個進入請求,所述各自環(huán)境代理將所述至少一個進入請求與所述至少一個退出請求相關(guān)聯(lián),并且所述各自環(huán)境代理向與所述相鄰層關(guān)聯(lián)的另一環(huán)境代理提供環(huán)境信息,所述環(huán)境信息與所述至少一個各自退出請求的請求環(huán)境相關(guān)。
54.根據(jù)權(quán)利要求52或53所述的系統(tǒng),還包括與所述環(huán)境代理相連的環(huán)境網(wǎng)絡管理服務器(CMNS),所述CNMS至少收集和分析從所述環(huán)境代理接收的性能數(shù)據(jù)。
55.根據(jù)權(quán)利要求52或53所述的系統(tǒng),其中所述至少一個進入請求是從用戶應用接收的用戶請求。
56.根據(jù)權(quán)利要求52所述的系統(tǒng),其中每一個所述動態(tài)層擴展還至少與所述各自層的請求退出端口相連,并且其中所述被監(jiān)控的請求通信量還包括在所述請求退出端口接收到的至少一個退出請求,所述所選層向所述計算環(huán)境的另一相鄰層提供所述至少一個退出請求,其中所述各自環(huán)境代理使得所述至少一個退出請求和所述至少一個進入請求相關(guān)聯(lián);并且,向與所述另一相鄰層相關(guān)聯(lián)的另一環(huán)境代理發(fā)送與所述至少一個退出請求的請求環(huán)境相關(guān)的環(huán)境信息。
57.根據(jù)權(quán)利要求54所述的系統(tǒng),還包括與所述CNMS相連的策略數(shù)據(jù)庫,所述策略數(shù)據(jù)庫存儲至少服務類別策略。
58.根據(jù)權(quán)利要求57所述的系統(tǒng),還包括與所述CNMS以及與所述策略數(shù)據(jù)庫相連的管理工作站。
59.根據(jù)權(quán)利要求54所述的系統(tǒng),其中所述CNMS還執(zhí)行行為映像、創(chuàng)建包括綜合事務、層和系統(tǒng)級性能指標與統(tǒng)計分析的行為映像。
60.一種在包括多個層的多層計算環(huán)境中用于監(jiān)控所述多個層的所選被監(jiān)控層的應用性能管理方法,該方法包括以下步驟接收與至少一個進入請求的請求環(huán)境相關(guān)的請求環(huán)境信息,所述環(huán)境信息至少包括請求標識符和事務標識符;監(jiān)控通過所述被監(jiān)控層的請求通信量,所述被監(jiān)控的請求通信量至少包括所述至少一個進入請求;依據(jù)所述請求標識符,識別所述至少一個進入請求;和依據(jù)所述事務標識符,將所述至少一個進入請求和事務相關(guān)聯(lián)。
61.一種在包括多個層的多層計算環(huán)境中用于監(jiān)控所述多個層的所選被監(jiān)控層的應用性能管理方法,該方法包括以下步驟監(jiān)控通過所述被監(jiān)控層的請求通信量,所述被監(jiān)控請求通信量包括至少一個進入請求和至少一個各自退出請求,所述所選層向相鄰層提供所述至少一個各自退出請求;確定與所述至少一個進入請求的請求環(huán)境相關(guān)的環(huán)境信息;識別在所述被監(jiān)控請求通信量中包括的每一個請求;將所述至少一個進入請求與所述至少一個退出請求相關(guān)聯(lián);和向與所述相鄰層關(guān)聯(lián)的另一環(huán)境代理發(fā)送環(huán)境信息,所述環(huán)境信息與所述至少一個退出請求的請求環(huán)境相關(guān)。
62.根據(jù)權(quán)利要求1-51中任一所述的裝置,基本如上文所述或者如任一附圖中所示。
63.根據(jù)權(quán)利要求52-59中任一所述的系統(tǒng),基本如上文所述或者如任一附圖中所示。
64.根據(jù)權(quán)利要求60-61中任一所述的應用,基本如上文所述或者如任一附圖中所示。
全文摘要
提供一種用于監(jiān)控多層計算環(huán)境中的所選層的裝置,所述裝置包括環(huán)境代理和動態(tài)層擴展,該環(huán)境代理與所選層關(guān)聯(lián)以及與其它環(huán)境代理相連,其中的每個環(huán)境代理與各自層關(guān)聯(lián),該動態(tài)層擴展與環(huán)境代理相連以及與所選層的特定預定點相連,動態(tài)層擴展監(jiān)控通過所選層的請求通信量,被監(jiān)控的請求流量包括在所述請求進入端口接收到的來自所述計算環(huán)境的相鄰層的至少一個進入請求,動態(tài)層擴展識別在被監(jiān)控的請求通信量中的每一個請求以及向環(huán)境代理至少發(fā)送請求標識符,環(huán)境代理還從與相鄰層關(guān)聯(lián)的環(huán)境代理接收信息,該信息與進入請求的請求環(huán)境相關(guān),環(huán)境代理依據(jù)接收到的請求標識符將與進入請求的請求環(huán)境相關(guān)的信息與進入請求關(guān)聯(lián)。
文檔編號H04L29/08GK101044462SQ200580025893
公開日2007年9月26日 申請日期2005年3月31日 優(yōu)先權(quán)日2004年6月4日
發(fā)明者阿米爾·阿隆, 約拉姆·約里·拉維, 莫迪凱·達 申請人:奧普蒂爾有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1