JP2008502044A - 多階層コンピューティング環境におけるパフォーマンス管理システム及びパフォーマンス管理方法 - Google Patents

多階層コンピューティング環境におけるパフォーマンス管理システム及びパフォーマンス管理方法 Download PDF

Info

Publication number
JP2008502044A
JP2008502044A JP2007514318A JP2007514318A JP2008502044A JP 2008502044 A JP2008502044 A JP 2008502044A JP 2007514318 A JP2007514318 A JP 2007514318A JP 2007514318 A JP2007514318 A JP 2007514318A JP 2008502044 A JP2008502044 A JP 2008502044A
Authority
JP
Japan
Prior art keywords
request
context
hierarchy
agent
tier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007514318A
Other languages
English (en)
Other versions
JP2008502044A5 (ja
Inventor
アロン,アミール
ラヴィ,ヨラム,ヨリ
タール,モーデチャイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Optier Ltd
Original Assignee
Optier Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Optier Ltd filed Critical Optier Ltd
Publication of JP2008502044A publication Critical patent/JP2008502044A/ja
Publication of JP2008502044A5 publication Critical patent/JP2008502044A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/23Bit dropping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Remote Monitoring And Control Of Power-Distribution Networks (AREA)
  • Radio Relay Systems (AREA)
  • Transmitters (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

多階層コンピューティング環境において選択された階層を監視する装置であって、装置は、コンテキストエージェント及び動的階層拡張を含み、コンテキストエージェントは、選択された階層と関連付けられ、他のコンテキストエージェントと結び付けられ、それぞれがそれぞれ階層と関連付けられ、動的階層拡張がコンテキストエージェント及び選択された階層の特定の予め定められたポイントと結び付けられ、動的階層拡張は、選択された階層を通過するリクエストトラフィックを監視し、監視されたリクエストトラフィックは、隣り合う階層からリクエストエントリーポートで受信された少なくとも一つの開始リクエストを含み、動的階層拡張は、監視されたリクエストトラフィックにおける各リクエストを確認すると共に、少なくともリクエストIDをコンテキストエージェントに送信し、コンテキストエージェントは、開始リクエストのリクエストコンテキストと関連する情報を、隣り合う階層と関連付けられたコンテキストエージェントから受信し、コンテキストエージェントは、開始リクエストのリクエストコンテキストと関連する情報を、受信したリクエストIDに基づき、開始リクエストと関連付ける。
【選択図】 図2

Description

本出願は、2004年6月4日に出願された米国仮出願第60/576,805号の合衆国法典第35巻第119条(e)項に基づく利益を請求し、それに組み込まれる全内容が参照される。
本開示技術は、概して、分散コンピューティング環境(DCE:distributed computing environment)の管理に関し、特に、多階層コンピューティング環境におけるアプリケーションパフォーマンス管理システム及びアプリケーションパフォーマンス管理方法に関する。
情報技術(IT:Information Technology)は、異種アプリケーション構成を備えてますます複雑となる多階層プロダクション環境を用いてアプリケーションサービスを提供する責任がある。ITオペレーションは、パフォーマンスと可用性において要求されるサービスレベルを満足させることに奮闘する一方、効率とリソース活用を増大するよう強要される。商社と組んだITリソースの連結は、この効果を悪化させ、コンピューティングリソースに対する需要の今までの変化を満足させるためにITオペレーションの将来性を引き伸ばす。パフォーマンス管理と可用性管理のための慣習的なアプローチ及びツールは、問題が存在することの確認(即ち、監視)、問題(即ち、調整)に打ち勝つための全スループットの増大、及び問題(即ち、修正)の各具体例の明確な原因を暴くための原因分析の実行、を含む循環「監視−調整−修正」サイクルの変化である。そのようなアプローチは、IT環境の迅速な変化の複雑性及び可変性をうまく対処することができない。
ここで、符号50で参照され、公知である多階層コンピューティング環境の概略図である図1を参照する。コンピューティング環境50は、第1のアプリケーションを動作させる第1のクライアント62、第2のアプリケーションを動作させる第2のクライアント64、第1の階層52、第2の階層54、第3の階層56、第4の階層58及び第5の階層60を含む。第1の階層52は、ウェブサーバである。第2の階層54は、アプリケーションサーバ、アプリケーションサーバAである。第3の階層56は、他のアプリケーションサーバ、アプリケーションサーバBである。第4の階層58は、さらなるアプリケーションサーバ、アプリケーションサーバCである。第5の階層60は、データベースである。第1の階層52は、第1のクライアント62、第2のクライアント64及び第2の階層54と結び付けられる。第2の階層54は、第3の階層56及び第4の階層58とさらに結び付けられる。第3の階層56は、第4の階層58及び第5の階層60とさらに結び付けられる。第4の階層58は、第5の階層60とさらに結び付けられる。
「階層」は、ITサービスの提供の一部である特定タイプの処理(例えば、ウェブサーバ階層上のプレゼンテーションレベル処理やデータベース階層上のデータ処理)を表す。各階層は、主として異なるホストマシーン上で動作する。
第1のアプリケーションは、ユーザリクエストR1を起こし、ユーザリクエストR1を第1の階層52に送信する。ユーザリクエストR1は、ユーザによって起こされる全トランザクションの一部である。ユーザリクエストR1は、例えば、特定のアプリケーションから情報を取り出すためのウェブベースのクエリである。ユーザリクエストR1は、コンピューティング環境50における異なる階層のサービスを必要とし、これらのサービスを得るために追加的なリクエストを引き起こす。リクエストを受信した階層は、リクエストを送信する階層に返信するか、異なる階層に新しいリクエストを送信する。結局、リプライは、オリジナルのユーザリクエストR1に応じて返信される。二つの階層が互いに直接結び付けられるならば、所定の階層は、コンピューティング環境50における他の階層からサービスを要求し得るのみである。
分散コンピューティング環境の全管理は、各階層がどのようにして自身の仕事量を処理するかの認識を必要とする。例えば、一つの階層上でリソース不足が与えられると、システム管理者は、垂直(即ち、同じホストマシーン内に)及び水平(即ち、複数のホストマシーンを横断して)の両方で、階層の複製を生成することによって、この階層をスケールする。例えば、コンピューティング環境50において、システム管理者は、追加的なアプリケーションサーバA2を第2の階層54であるアプリケーションサーバAに追加し、アプリケーションサーバA2がアプリケーションサーバAの複製である。リソース過剰が階層に存在するならば、同じトークンによって、システム管理者は、リソース不足している他の階層に解放リソースを移動させる。システム管理者は、全パフォーマンスを改善し、あるいは階層上で動作するアプリケーションを最適化するための修正を指示するため、特定の階層をさらに構成する。これは、パフォーマンス管理のための階層詳細アプリケーション監視の例である。リクエストがコンピューティング環境50における特定の階層にのみ到達することが注目される。さらには、同じリクエストは、複数の経路を用いて特定の階層に到達する。例えば、コンピューティング環境50において、リクエストは、第3の階層56であるアプリケーションサーバB又は第4の階層58であるアプリケーションサーバCを介して第5の階層60であるデータベースに到達する。リクエスト経路は、全環境を横断して一貫していないので、一つの階層上でのリソース不足の解消は、複数の階層を掛け渡す全アプリケーションのパフォーマンスを必ずしも保証しない。どんな階層における処理隘路も、階層によって定まる全アプリケーション機能を遅らせる。
第1の階層52は、ユーザリクエストR1を受信する。第1の階層52は、ユーザリクエストR1を処理するために処理部X1を割り付ける。ユーザリクエストR1を処理する間、処理部X1において実行されるアプリケーションロジックは、第2の階層54によって提供される追加情報や追加オペレーションなしにユーザリクエストR1を完全に処理することができないと決定する。しかる後、第1の階層52は、それに続くリクエストR2を第2の階層54に送信し、追加情報や追加オペレーションを要求する。第2の階層54は、ユーザリクエストR2を処理するために処理部X2を割り付ける。処理部X2において実行されるアプリケーションロジックは、第4の階層58によって提供されるさらなる追加情報や追加オペレーションをリクエストR2が要求すると決定する。しかる後、第2の階層54は、それに続くリクエストR3を第4の階層58に送信する。第4の階層58は、リクエストR3を処理するために処理部X4を割り付ける。
処理部X4は、実行を完了する。第4の階層58は、第2の階層54の以前のリクエストR3に応じて、リプライR3'を第2の階層54に返信する。処理部X2は、リプライR3'を受信し、処理を再開する。処理部X2が実行を一旦完了すると、第2の階層54は、第1の階層52の以前のリクエストR2に応じて、リプライR2'を第1の階層52に返信する。処理部X1は、リプライR2'を受信し、処理を再開する。処理部X1が実行を一旦完了すると、第1の階層52は、リプライR1'をユーザリクエストR1に返信し、サービスが完了する。
コンピューティング環境50において、異なる階層のそれぞれは、直接結び付けられていない階層と分離される。例えば、直接結び付けられる、第2の階層54から第4の階層58へのリクエストR3は、第2の階層54において第1の階層52から受信した先のリクエストR2に関する情報を必ずしも含まず、そして、また、ユーザリクエストR1に関する情報を含まない。所定の階層は、トランザクションを起こしたユーザ、所定の階層で処理されたリクエストに先行したリクエスト、あるいはリクエストに先行したリクエスト特性といった、その階層で処理されるリクエストに関する特定の情報を得る方法を有さない。例えば、第2の階層54は、第1の階層52に送信されるユーザリクエストR1によってリクエストが先行されたか、あるいは第1のアプリケーション62からユーザリクエストR1でトランザクションが起こされたかといった、リクエストR2の特徴を確認することができない。優先度レベルが特定の階層内でリクエストを処理する処理部に与えられるならば、その結果として、優先度レベルは、階層上で有効な最小限の情報のみを考慮して割り当てられる。この情報は、リクエスト特性(例えば、リクエストによって用いられる階層ログインクレデンシャル)と、おそらくはリクエストを処理する処理部についての情報(例えば、データベースセッション識別コード)とを含む。優先度レベルを区別するためのメカニズムオペレーティングが所定の階層上で局所的に有効であるが、リクエストは、概して平等優先ベース(即ち、早い者勝ち方式)で処理される。コンピューティング環境50における他の階層が特定の階層を対応する時に責任を負い得ないので、パフォーマンス管理は、個々の階層ベースでなされなければならない。一般的に、コンピューティング環境50といった多階層コンピューティング環境を管理する責任を負うシステム管理者は、所定の階層のためにリソース割り付けを適合させることによってパフォーマンスを改善することを試みる。
「オペレーティングシステムカーネルにおいて動作するインターフェイスを含む分散アプリケーションの監視システム及び監視方法」という名称のAgarwalらの米国特許第5,958,010号は、システムパフォーマンス、使用傾向、セキュリティー監査、容量計画及び免責のためのビジネストランザクションレベル管理データを発展させるために、分散コンピューティングシステムの事業ワイドオペレーションの監視システム及び監視方法に導かれる。分散コンピューティングアーキテクチャを有するシステムは、複数のワークステーション、サーバ及びネットワーク装置を含む。各ワークステーションは、ネットワークに繋がれるコンピュータシステムの代表である。各ワークステーションは、どんなサーバからもサービスを要求することができる。各ワークステーションは、ネットワークとデータを交換する通信スタックを有する。システムは、複数の監視エージェントと、データベースに接続されるコンソールモジュールとをさらに含む。各監視エージェントは、各種の事業コンポーネントについてのイベント情報を提供する外部イベントインターフェイスを有する。監視エージェントのそれぞれは、ワークステーションやサーバのそれぞれ一つと関連付けられる。
監視エージェントは、関連するクライアントやそのサーバ上に物理的に存在する。監視エージェントは、クライアントとネットワークとの間、及びサーバとネットワークとの間で交換されるデータを監視し、集める。各監視エージェントは、ソフトウェアモジュール、ハードウェア装置、あるいはその組み合わせであり得る。各監視エージェントは、コンソールモジュールに集められたデータの情報代表を通す。コンソールモジュールは、オペレータによって解析のためのデータベース内にこの情報を保存する。コンソールモジュール上で動作するアプリケーションプログラムは、どんな処理や事業コンポーネントのシステムパフォーマンスをも示すために、集められたデータを見ることができる。システム管理者は、事業レベル使用統計及び応答時間を発展させ、チャート及びレポートを発展させ、事業オペレーションと関連したユーザ定義統計を決定するための他の関連データ解析を実行することができる。
「アプリケーションエンドツーエンド応答時間評価及び分解」という名称のMaccabeeらの米国特許第6,108,700号は、エンドツーエンドビジネストランザクションの可用性及びパフォーマンスを評価し且つレポートする方法及びシステムに導かれる。システムは、クライアントサーバアプリケーションアーキテクチャ上で動作する。システムは、システム管理を通じた全システム管理のみならず、三つのロジカルコンポーネント、即ち、イベント生成、トランザクション生成及びレポート生成を含む。
イベント生成コンポーネントは、アーキテクチャにおいて評価されるコンピュータ毎に存在する。各コンピュータは一つのエージェント、複数のセンサ及び複数のプロセッサを有する。センサは、ビジネスアプリケーションが動作し、アプリケーション動作が監視され、状態変化が検出されるプラットフォームコンポーネントと相互作用する。適切な時、各センサは、状態変化を表すイベントを生成し、イベントが起こる時及び場所で、イベントを独自に確認するために必要な特別データを生成する。イベントは、該イベントをトランザクションへの他のイベントと関連付けるためにシステムによって後に用いられるタイムスタンプ及び相関データを含む。センサは、生成されたイベントをそれらのそれぞれエージェントに転送する。エージェントは、一時的にデータを保存し、イベントに登録された関係を有する他のシステムコンポーネントにデータを分配する。プロセッサは、イベントを解析し、状態変化をさらに推論する。状態変化は、ビジネストランザクションプラットフォームコンポーネント内で起こる動作に直接的に関係付けられ、あるいは以前に生成されたイベントを結合することによって、達成された状態を表すためにセンサや他のプロセッサから引き出される。プロセッサは、生成されたイベントをそれらのそれぞれエージェントに転送する。
トランザクション生成コンポーネントは、一般的にネットワークにおけるコンピュータの一つに存在し、ディレクタを含む。ディレクタは、エージェントのコントロール下でエージェントからイベントを受信する。イベントは、調べられ、関係付けられ、トランザクション生成規則に基づくトランザクションに照合される。システム管理者は、生成されるべきトランザクションを決定する。
レポート生成コンポーネントは、マネージャを含む。マネージャは、ディレクタからトランザクションを集める。集められたトランザクションは、ビジネストランザクションの可用性及びパフォーマンスと関連する情報を得るために操作される。レポート又は連続的なグラフィック監視は、グラフィックユーザインターフェイス(GUI:Graphical User Interface)からの特定又は定期的なリクエスト上に産出される。レポート生成は、トランザクションイベントデータを可用性情報及びパフォーマンス情報に統合するために用いられる選別及び凝結のみならず、初期選択の定義付け及びトランザクション処理を含む。
「分散アプリケーションパフォーマンス分解の相関パフォーマンス評価の組込み方法及び組み込みシステム」という名称のMillsらの米国特許出願第2002/0129137号は、分散アプリケーションと関連付けられるトランザクションにおける相関パフォーマンス評価を組み込む技術に導かれる。その技術は、アプリケーションパフォーマンス分解に従って用いられる。実際のトランザクションデータそのものを変更するよりもむしろ、データは、分散コンピューティングネットワークにおけるアプリケーションコンポーネント間のトランザクションを実行するのに用いられる通信プロトコルに組み込まれる。組み込まれたデータは、タイムスタンプ及び持続時間評価データを含む。組み込まれたデータのフォーマットは、明確なキーワードプレフィックスを、コロン区切り記号及び空白によって続けられ、且つタイムスタンプ及び持続時間情報によって続けられる、タイミングソースを確認する可変サフィックスと結び付ける。
分散アプリケーションのその後の処理ステージは、トランザクション処理に関する決定を行うために、先のステージの処理持続時間を細かく調べるために通信プロトコルを解明することができる。評価情報は、評価情報によって表される同じ分散アプリケーション内に組み込まれるので、トランザクションの完了がトランザクションパフォーマンス特性の認識の可用性と同時に起こる。
可能な通信プロトコルは、ハイパーテキストトランスポートプロトコル(HTTP:Hypertext Transport Protocol)である。可能な分散コンピューティングネットワークは、ワールドワイドウェブ(WWW:World Wide Web)である。アプリケーションコンポーネントは、クライアント上で動作するクライアントアプリケーション及びアプリケーションサーバ上で動作するサーバアプリケーションである。例えば、クライアントアプリケーションは、ウェブブラウザであり、サーバアプリケーションは、ウェブサーバ上で動作する。アプリケーショントランザクションは、クライアントアプリケーションのアプリケーションサーバからのコンテンツの要求、及びアプリケーションサーバの応答である。パフォーマンス情報は、サーバアプリケーションがリクエストをサービスし且つ応答を生成するのにかかる時間における応答時間を分解するために生成されるのみならず、クライアントアプリケーション視野からの周回応答を評価するために生成される。特に、パフォーマンス評価データを運ぶためにHTTPヘッダにラインが付け加えられ、クライアントがHTTP応答ヘッダにおけるサーバ評価持続時間を受信するのを許容する。
本開示技術によれば、多階層コンピューティング環境において選択された階層の監視装置が提供される。装置は、コンテキストエージェント及び動的階層拡張を含む。コンテキストエージェントは、選択された階層と関連付けられ、それぞれがそれぞれ階層と関連付けられる他のコンテキストエージェントと結び付けられる。動的階層拡張は、コンテキストエージェントと結び付けられ、選択された階層のリクエストエントリーポートといった、選択された階層の特定の予定ポイントと結び付けられる。動的階層拡張は、選択された階層を通過するリクエストトラフィックを監視し、監視されたリクエストトラフィックは、隣り合う階層からリクエストエントリーポートで受信された少なくとも開始リクエスト(entering request)を含む。動的階層拡張は、監視されたリクエストトラフィックにおける各リクエストを確認し、少なくともリクエストIDをコンテキストエージェントに送信する。コンテキストエージェントもまた、隣り合う階層と関連付けられたコンテキストエージェントからの開始リクエストのリクエストコンテキストと関連する情報を受信する。コンテキストエージェントは、受信されたリクエストIDに基づき、開始リクエストのリクエストコンテキストと関連する情報を開始リクエストと関連付ける。
動的階層拡張は、選択された階層のリクエストイグジットポートとさらに結び付けられ、監視されたリクエストトラフィックは、選択された階層を出て隣り合う階層に至る少なくとも一つの終了リクエスト(exiting request)を含む。動的階層拡張は、終了リクエストのリクエストコンテキストを獲得し、少なくともリクエストIDと、終了リクエストのリクエストコンテキストと関連する情報と、をコンテキストエージェントに送信する。コンテキストエージェントは、受信された情報及びリクエストIDに基づき、開始リクエストを終了リクエストと関連付ける。コンテキストエージェントは、終了リクエストが送信された隣り合う階層と関連付けられたコンテキストエージェントに対し、終了リクエストのリクエストコンテキストと関連する情報をさらに提供する。
本開示技術によると、複数の階層を含む多階層コンピューティング環境におけるアプリケーションパフォーマンス管理システムがさらに提供される。システムは、複数の階層の少なくとも二つの監視された階層のそれぞれにとっての動的階層拡張及びコンテキストエージェントを含む。動的階層拡張は、監視された階層の少なくともリクエストエントリーポートと結び付けられる。コンテキストエージェントは、動的階層拡張と結び付けられ、監視された階層と直接結び付けられる階層と関連付けられる他のコンテキストエージェントと結び付けられる。動的階層拡張は、選択された階層を通過するリクエストトラフィックを監視し、監視されたリクエストトラフィックは、隣り合う階層からリクエストエントリーポートで受信される少なくとも一つの開始リクエストを含む。動的階層拡張は、監視されたリクエストトラフィックにおける各リクエストを確認し、少なくともリクエストIDをコンテキストエージェントに送信する。コンテキストエージェントもまた、隣り合う階層と関連付けられたコンテキストエージェントからの開始リクエストのリクエストコンテキストと関連する情報を受信する。コンテキストエージェントは、受信されたリクエストIDに基づき、開始リクエストのリクエストコンテキストと関連する情報を開始リクエストと関連付ける。システムは、コンテキストネットワーク管理サーバをさらに含む。コンテキストネットワーク管理サーバは、コンテキストエージェントと結び付けられる。コンテキストネットワーク管理サーバは、コンテキストエージェントから受信したパフォーマンスデータを収集して解析する。
本開示技術によれば、複数の階層を含む多階層コンピューティング環境におけるアプリケーションパフォーマンス管理方法がさらに提供される。方法は、複数の階層の少なくとも二つの監視された階層のそれぞれにとっての、少なくとも一つの開始リクエストのリクエストコンテキストと関連する情報を受信する手順を含み、情報は、少なくともリクエストID及びトランザクションIDを含む。方法は、監視された階層を通過するリクエストトラフィックを監視する手順をさらに含み、監視されたリクエストトラフィックは、少なくとも開始リクエストを含む。方法は、リクエストIDに基づいて開始リクエストを確認し、トランザクションIDに基づいて開始リクエストをトランザクションと関連付ける。
本開示技術によれば、複数の階層を含む多階層コンピューティング環境における他のアプリケーションパフォーマンス管理方法がさらに提供される。方法は、複数の階層の少なくとも二つの監視された階層のそれぞれにとっての、監視された階層を通過するリクエストトラフィックを監視する手順を含み、監視されたリクエストトラフィックは、少なくとも開始リクエスト及び終了リクエストを含み、終了リクエストは、監視された階層から隣り合う階層に送信される。方法は、開始リクエストのリクエストコンテキストと関連する情報を決定し、監視されたリクエストトラフィックにおける各リクエストを確認する手順をさらに含む。方法は、開始リクエストを終了リクエストと関連付け、終了リクエストのリクエストコンテキストと関連する情報を隣り合う階層と関連付けられたコンテキストエージェントに送信する手順をさらに含む。
本開示技術は、図面と関連して以下の詳細な説明からより完全に理解され且つ評価される。
本開示技術は、多階層コンピューティング環境におけるアプリケーションパフォーマンス管理システム及び管理方法を提供することによって、従来技術の欠点を克服する。システムは、各階層のリクエストエントリーポート及びリクエストイグジットポートを監視し、複数のコンテキストエージェントを介して、所定の階層へのあるいは所定の階層からのエントリーリクエストあるいはイグジットリクエストを検出する。各コンテキストエージェントは、多階層コンピューティング環境における階層と関連付けられ、他のコンテキストエージェントと通信することができる。コンテキストエージェントは、関連付けられた階層上のリクエストの実行と関連する情報を収集する。コンテキストエージェントは、ユーザリクエストのリクエストコンテキストを確認する。コンテキストエージェントは、ユーザリクエストをリクエストクラスに分類する。コンテキストエージェントは、関連付けられた階層を出てリクエストが送信された階層と関連付けられたそれに続くコンテキストエージェントに至るリクエスト特性を中継する。
コンテキストエージェントは、リクエストを、ユーザリクエスト、及び同じトランザクションにおける他の先のリクエストと関連付ける。コンテキストエージェントは、リクエストクラスと、局所的に保存されたアクティブサービスクラスポリシーとに基づいて、サービスクラスをリクエストに与える。コンテキストエージェントは、階層へのリクエストエントリーポートでのキュー上のリクエストのオーダを調整したり、リクエストを実行する処理部の優先度を変更したり、リクエストを実行する処理部の処理タイプを変更したり、リクエストを処理するための計算リソース(例えば、中央処理装置(CPU)やメモリといったもの)を割り付けることを否定するために階層を指示したり、リクエストを保持し且つ処理部を解放したり、リクエストを終了するといった、リクエストの処理に影響を与えるために介入を実行する。コンテキストネットワーク管理サーバは、数個の階層を横断する異なるタイプのリクエストの挙動を描き、適切な横断階層サービスクラスポリシーをセットする。従って、システムは、多階層コンピューティング環境における異なる階層を横断して、トランザクションレベルでコンテキスト関連リソース管理を提供する。
本開示技術は、ITインフラチェーンにおける全ての階層を横断する積極的なトランザクション仕事量管理の将来性を提供する。システムは、ウェブ、アプリケーション、データベース及びミドルウェアサーバといった、ITインフラ階層を統合する。システムは、自動的に仕事量を描き、仕事量を分類することを助け、ユーザが適切なサービスクラスパフォーマンスポリシーを生成するのを可能とする。システムは、コンピューティング環境における階層を横断するトランザクションにこれらのポリシーを適用する。システムは、現在のITインフラを利用し、ビジネス関係と一致する最適なサービスレベルで均衡のとれたサービス提供を可能とすべく、現在のITインフラを向上させる。以下の用語は、実施形態の説明を通して用いられる。
「階層」なる用語は、ITトランザクションの全サービス提供の一部である所定のサービスを提供する構成要素について言及する。サービスは、ウェブサーバ階層上のプレゼンテーションレベル処理、アプリケーションサーバ階層上のアプリケーション機能性、データベース階層上のデータ処理といったものである。各階層は、一つのホストマシーン上で作動する一以上の階層があるが、一般的に異なるホストマシーンで動作し、一つの階層は、一以上のホストマシーン上に存在する複数のコンポーネントを含む。少なくとも一つの階層が動作するホストマシーンは、「階層ホスト」として以下に言及される。階層の例は、限定はされないが、J2EE(Java 2 Platform, Enterprise Edition)アプリケーションサーバインスタンス、J2EEアプリケーションサーバインスタンスのクラスタ、JDBC(Java Database Connectivity)/ODBC(Open Database Connectivity)ドライバといったデータベースサーバに対するアクセスコンポーネントを含むデータベースサーバインスタンス、クラスタデータベースといったものを含む。
「トランザクション」なる用語は、ビジネスアプリケーション内のビジネス処理のステージといった、ユーザによって起こされる一つの処理を表す。トランザクションの例は、オンラインオークションサービスにおけるビットの打ち込みや、金融機関での新規顧客口座の開設である。トランザクションは、階層間のリクエストのチェーンからなり、ユーザリクエストで開始する。従って、各リクエストは、独自にユーザリクエスト(即ち、トランザクションのユーザリクエスト)と関連付けられる。各トランザクションは、公知の「トランザクションID」といった固有のIDを介して確認される。それは、「関連するトランザクションのセット」が、相互に関連付けられるそれぞれのトランザクションに言及する(即ち、各トランザクションが一つのビジネス処理の異なるステージを表す)ことを意味する。トランザクション内のリクエストの取り扱いは、トランザクションのみならず、リクエストが属する関連トランザクションのセットをも考慮する。
「リクエスト」なる用語は、トランザクションの一部である所定のサービスを提供するために、一つの階層から他の階層へのシステムリクエストについて言及する。各リクエストは、公知の「リクエストID」といった、固有のIDを介して確認される。各リクエストは、呼び出された階層上の作業単位(UOW:unit of work)という結果になる。リクエストの例は、限定はされないが、ウェブサーバに対して要求するハイパーテキストトランスポートプロトコル(HTTP:Hypertext Transport Protocol)を与えるクライアントウェブブラウザ、アプリケーションサーバを呼び出すリモートメソード呼び出し(RMI:Remote Method Invocation)を与えるJAVAプログラム、リモートアプリケーションサーバ(RMIを介する)上のエンティティービーンを呼び出すJ2EEアプリケーションサーバセッションビーンといったものを含む。
「ユーザリクエスト」なる用語は、ユーザやアプリケーションの何れかによって起こされるイニシャルリクエストについて言及し、本開示技術によって監視されない階層で始まる。ユーザリクエストは、トランザクションを作るリクエストのチェーンにおける最初のリクエストである。リクエストのチェーンは、ツリーのルートノードでユーザリクエストを備えるツリー構造として表され得る。
「UOW」なる用語は、階層上の適切なリクエストに割り付けられた処理部において実行するアプリケーションコード(即ち、UOW呼び出し)について言及する。UOWは、リソース及び目的と関連付けられ、(アプリケーションコード挙動のために指示される)パラメータを有し、一つの階層内に階層レベルリソースを用いる。
「処理部」なる用語は、所定の階層においてUOWを実行する、どんなスレッド、サブ処理、データベースセッションといったものについても言及する。リクエストは、利用可能な処理部が割り付けられるまで階層において列に並ばされ、アプリケーションコード(即ち、UOW)は、処理部に与えられる。処理部は、順番に異なるアプリケーションコードを実行する一般的な実行ユニットである。
「リクエストコンテキスト」なる用語は、最初にユーザリクエストから獲得され、トランザクションのリクエストのチェーンに沿ってそれに続くリクエストに送信され、途中のどんな階層でも修正される特性のセットについて言及する。リクエストコンテキストは、本開示技術が、ユーザリクエストによって起こされる一つのトランザクションの部分としてのリクエストの結果チェーンを確認し、追跡し、優先順位を付けることを可能とする。リクエストコンテキストは、例えばリクエストを提出したユーザの特性、リクエストに支配されるアイテムの特性、リクエストが起こされた地理的位置、リクエストがなされた時間及び日付、リクエストが属する関連トランザクションのセットといったものを含む。リクエストコンテキストの所定部は、それに続く階層で修正される。例えば、最初の階層でリクエストコンテキストに追加されるユーザリクエストのサービスクラスは、それに続く階層によって(即ち、本開示技術の他の実施形態に従って)無効にされる。
「リクエストクラス」なる用語は、一以上の予め定められたリクエストコンテキスト特性を分けるトランザクションのカテゴリーについて言及する。例えば、「株券ポートフォリオサマリークエリ」は、「株券ポートフォリオサマリークエリ」リクエストクラスに分類され、あるいは、「株券ポートフォリオヒストリークエリ」といった、トランザクションと組むより大きな「株券ポートフォリオクエリ」リクエストクラスの一部である。各リクエストクラスは、アクティブサービスクラスポリシーに基づいて処理される。リクエストクラスがユーザリクエストに一旦与えられると、リクエストクラスは、ユーザリクエストによって起こされるトランザクションにおけるそれぞれ続きのリクエストに自動的に与えられる。
「サービスクラス」なる用語は、リクエストの処理にとって重要なレベルを示す各種のパラメータのランキングのセットについて言及する。パラメータは、リクエストに与えられる優先度、リクエストに割り付けられるCPUパーセンテージ、リクエストに割り付けられるメモリ、リクエストに対する割り付け及びアクセスのI/O装置といったものを含む。サービスクラスは、適切なアクティブサービスクラスポリシーに基づいて、それぞれコンテキストエージェントによって所定の階層上で実行するリクエストに与えられる。
「サービスクラスポリシー」なる用語は、リクエストが処理される階層に関して、リクエストクラス内のリクエストにサービスクラスを与えるルールについて言及する。各コンテキストエージェントは、階層仕様サービスクラスポリシーのセットを含み、それぞれは、コンテキストエージェントと関連付けられた特定の階層のためのリクエストクラスにサービスクラスをマップする。「横断階層サービスクラスポリシーデータベース」は、多階層コンピューティング環境における全ての階層のためのリクエストクラスに対するサービスクラスのマッピングのセットを述べる。それは、ユーザがサービスクラスポリシーのセットを定義することを意味する。そのようなポリシーは、以下では「ユーザ定義サービスクラスポリシー」として言及される。
「アクティブサービスクラスポリシー」なる用語は、現在実施されているサービスクラスマッピングに対するリクエストクラスを含む。複数のサービスクラスポリシーが支持され、異なるサービスクラスポリシーが、仕事量の変化を反映するためのシステムオペレーションの異なる時間や各種のシステムイベントで予定に入れられる。
本開示技術の一実施形態に基づいて構成され且つ作用する、符号100で参照されるアプリケーションパフォーマンス管理システムの概略図である図2を参照する。システム100は、符号132で参照される多階層コンピューティング環境上で作動する。コンピューティング環境132は、第1のアプリケーションを動作させる第1のクライアント112、第2のアプリケーションを動作させる第2のクライアント114、第1の階層102、第2の階層104、第3の階層106、第4の階層108及び第5の階層110を含む。第1の階層102は、ウェブサーバである。第2の階層104は、アプリケーションサーバ、アプリケーションサーバAである。第3の階層106は、他のアプリケーションサーバ、アプリケーションサーバBである。第4の階層108は、さらなるアプリケーションサーバ、アプリケーションサーバCである。第5の階層110は、データベースである。
第1の階層102は、第1のクライアント112、第2のクライアント114及び第2の階層104と結び付けられる。第2の階層104は、第3の階層106とさらに結び付けられる。第3の階層106は、第4の階層108及び第5の階層110とさらに結び付けられる。第4の階層108は、第5の階層110とさらに結び付けられる。第1のクライアント112上で動作する第1のアプリケーションは、ユーザリクエストR1を起こす。第2のクライアント114上で動作する第2のアプリケーションは、ユーザリクエスト118を起こす。
システム100は、複数のコンテキストエージェント122,124,126,128,130及びコンテキストネットワーク管理サーバ(CNMS)120を含む。図2で示される例において、各階層と関連付けられる一つのコンテキストがある。特に、コンテキストエージェント122,124,126,128,130は、第1の階層102、第2の階層104、第3の階層106、第4の階層108及び第5の階層110のそれぞれと関連付けられる。コンテキストエージェント122,124,126,128,130は、CNMS120と結び付けられる。各コンテキストエージェントは、コンピューティング環境132における階層の結び付けに基づいて他のコンテキストエージェントとも結び付けられる。特に、コンテキストエージェント122は、コンテキストエージェント124と結び付けられ、コンテキストエージェント124は、コンテキストエージェント126とさらに結び付けられ、コンテキストエージェント126は、コンテキストエージェント128,130とさらに結び付けられ、コンテキストエージェント128は、コンテキストエージェント130とさらに結び付けられる。
第1のクライアント112は、第1の階層102からサービスを要求し、第1のクライアント112は、ユーザリクエストR1を第1の階層102に送信する。第1の階層102は、ユーザリクエストR1を処理するために、利用可能な処理部X1を与える。ユーザリクエストR1を処理する間、処理部X1において実行するアプリケーションロジックは、第2の階層104によって提供される追加情報やオペレーションを必要とすることなしに処理部X1がユーザリクエストR1の処理を完了することはできないと決定する。従って、第1の階層102は、新しいリクエストR2を第2の階層104に送信し、追加情報やオペレーションを要求する。第2の階層104は、リクエストR2を処理するために、利用可能な処理部X2を与える。処理部X2において実行するアプリケーションロジックは、第3の階層106によって提供されるさらなる情報やオペレーションを処理部X2が必要とすると決定する。従って、第2の階層104は、新しいリクエストR3を第3の階層106に送信する。第3の階層106は、リクエストR3を処理するために、利用可能な処理部X3を与える。それは、リクエストR1,R2,R3のそれぞれが、第1のクライアント112上で動作するアプリケーションから起こる一つのトランザクションの一部であることを意味する。
処理部X3は、処理を完了する。第3の階層106は、第2の階層104からの先のリクエストR3に応じて、リプライR3’を第2の階層104に返信する。処理部X2において実行するアプリケーションロジックは、リプライR3’を受信し、実行を再開する。処理部X2が処理を一旦完了すると、第2の階層104は、第1の階層102からの先のリクエストR2に応じてリプライR2’を第1の階層102に返信する。処理部X1において実行するアプリケーションロジックは、リプライR2’を受信し、実行を再開する。処理部X1が処理を一旦完了すると、第1の階層102は、リプライR1’をユーザリクエストR1に返信し、完了する。
各コンテキストエージェントは、リクエストエントリーポート及びリクエストイグジットポート(図2,3において小さい円として表される)で関連付けられた階層を監視する。コンテキストエージェントは、リクエストが関連する階層を入ったり出たりすることを検出することによって、関連する階層を通過するリクエストトラフィックを監視する。リクエストがユーザリクエスト(即ち、リクエストのチェーンにおけるイニシャルリクエスト)ならば、第1の階層のコンテキストエージェントは、ユーザリクエストのリクエストコンテキストを確認し、ユーザリクエストをリクエストクラスに分類し、アクティブサービスクラスポリシーのコンテンツに基づくユーザリクエストにサービスクラスを与える。各コンテキストエージェントは、それぞれコンテキストエージェントと関連付けられた階層のための階層仕様サービスクラスポリシーのセットを含むポリシーキャッシュ(図示しない)を有する。CNMS120は、階層仕様アクティブサービスクラスポリシーを伴って各コンテキストエージェントを定期的に更新する。リクエストがユーザリクエストでないなら、コンテキストエージェントは、リクエストと関連する追加情報(即ち、「コンテキスト情報」)と共に、リクエストが起こされる階層と関連付けられるコンテキストエージェントから、リクエストのリクエストコンテキストと関連する情報を受信する。それは、コンテキストエージェントが他のコンテキストエージェントと中継するコンテキスト情報に含まれる最小限の情報が、少なくとも、リクエストID、トランザクションID、リクエストクラス、及びリクエストと関連付けられたコンテキスト関連データであることを意味する。コンテキスト関連データは、リクエストコンテキスト自身か、他の位置に存在するリクエストコンテキストに対する表示(例えば、ポインタ)を含む。
コンテキストエージェントは、受信されたコンテキスト情報を、階層上で実行するリクエストと関連付ける。コンテキストエージェントは、リクエストに与えられたサービスクラスに基づき、それぞれの階層によって、リクエストの処理に影響を及ぼす。例えば、コンテキストエージェントは、階層へのリクエストエントリーポートでのキュー上のリクエストのオーダを調整したり、リクエストを実行するための階層からの計算リソースが割り付けられあるいは選択的に否定される階層を指示する。コンテキストエージェントがリクエストが関連する階層を出たことを検出したならば、コンテキストエージェントは、リクエストが送信された階層と関連付けられた他のコンテキストエージェントにコンテキスト情報を中継する。他のコンテキストエージェントは、受信したコンテキスト情報を、関連性のあるリクエストと関連付けると共に、他のコンテキストエージェントと関連付けられた階層上のリクエストを実行する処理部と関連付ける。
それは、コンテキストエージェントが、階層自身内(例えば、リクエストを処理する処理部)で起こるアクティビティーを広範囲に監視するというよりはむしろ、階層上のリクエストエントリーポート及びリクエストイジェクトポートを監視することを意味する。その結果として、システム100は、所定の階層の実際のオペレーションや、ソフトウェア視野から階層において実行するユーザアプリケーションコードを干渉せず、システム100は、階層への最小限の追加負荷を追加する。
コンテキストエージェントは、動的階層拡張(DTE:dynamic tier extension、図2においては図示しない)を介して関連する階層とも結び付けられる。DTEは、コンテキストエージェントが階層上のUOWの実行と関連するデータを収集することを可能とする。コンテキストエージェントは、保管目的で生データをCNMS120に送信する。コンテキストエージェントは、統合された解析のためにCNMS120に統計データをさらに送信する。コンテキストエージェントは、アクティビティープロフィール及び異なるタイプのリクエストクラスを処理するための新しいアクティブサービスクラスポリシーといった情報をCNMS120から受信する。コンテキストエージェントは、図8で詳細に説明される。
特に、コンテキストエージェント122は、第1の階層102を監視し、ユーザリクエストR1が第1の階層102に入ることを検出する。コンテキストエージェント122は、ユーザリクエストR1のリクエストコンテキストを確認し、ユーザリクエストR1をリクエストを処理する処理部X1と関連付ける。コンテキストエージェント122は、ユーザリクエストR1を適切なリクエストクラスに分類する。コンテキストエージェント122は、コンテキストエージェント122が保存されるサービスクラスポリシーにおける適切なアクティブサービスクラスポリシーを検索することによって、第1の階層102におけるユーザリクエストR1のサービスクラスを決定し、決定されたサービスクラスをユーザリクエストR1に与える。コンテキストエージェント122は、与えられたサービスクラスをリクエストコンテキストに加える。新しいリクエストR2が第2の階層104に向かって第1の階層102を出るとき、コンテキストエージェント122は、リクエストR2がユーザリクエストR1と関連することを検出する。しかる後、コンテキストエージェント122は、ユーザリクエストR1のリクエストコンテキストと関連する情報を、リクエストID、リクエストクラス、及びリクエストR2と関連付けられたトランザクションIDと共に、コンテキストエージェント124に送信する。
図2の二つのコンテキストエージェント間で中継する情報の概略図である図3を参照する。コンテキストエージェント122は、コンテキストエージェント124にメッセージ134を送信する。メッセージ134は、リクエストR2のリクエストID、リクエストR2のトランザクションID、コンテキストエージェント122がリクエストR2を分類したリクエストクラス、リクエストR2のリクエストコンテキストを含む。コンテキストエージェント124は、メッセージ134を受信し、コンテキストエージェント124が保存されるサービスクラスポリシーのセットにおける適切なアクティブサービスクラスを検索することによって、第2の階層104上で実行されるリクエストR2のサービスクラスを決定する。コンテキストエージェント124は、決定されたサービスクラスをリクエストR2に与える。例えば、リクエストR2のリクエストクラスは、グループ「15」である。コンテキストエージェント124は、第2の階層104上で実行するリクエストクラス「15」のリクエストに対してサービスクラスをマップするアクティブサービスクラスポリシーを検索する。適切なサービスクラスポリシーは、そのようなリクエストへの優先度「5」、CPUの割り付け「90」、メモリの割り付け「48」、I/Oデバイスのアクセス優先度「2」を与える。しかる後、コンテキストエージェント124は、与えられたサービスクラスに基づいてリクエストR2の処理に影響を及ぼす。
システム100は、リクエストコンテキストベース上のアプリケーションパフォーマンス管理を実行する。システム100は、リクエストを確認し、各リクエストと関連する特性は、階層と関連付けられたコンテキストエージェントで利用可能である。これらの特性は、リクエストがトランザクションにおいて先行されたリクエストを要求するリクエストがどこで起こるか、リクエストのタイプが何であるかを含む。例えば、コンテキストエージェント124は、第2の階層104上で動作するリクエストR2が、第1の階層102によって処理され且つ第1のクライアント112において起こされるユーザリクエストR1と関連付けられる。所定の階層のコンテキストエージェントは、リクエストコンテキストと、それぞれの階層で実行される各リクエストのリクエストクラスとに気付くので、コンテキストエージェントは、サービスクラスポリシーに基づくそれぞれリクエストの適切な階層仕様サービスクラスを決定し得る。CNMS120は、いくらかの階層、それぞれ異なるリクエストクラスを横断して全管理ポリシーをセットすることができ、それに応じてコンテキストエージェントを更新することができる。
符号140で参照される、図2のシステムの二つの階層上でのサンプルリクエストライフサイクルの概略図である図4を参照する。サンプルライフサイクル140は、ステージを表し、リクエストは、多階層コンピューティング環境132(図2)においてサービスされるリクエストとして経験する。それは、(UOWが実行される同じ階層にリクエストを送信することによって)同じ階層の内部で、あるいは(リクエストを多の階層に送信することによって)外部で、追加リクエストをさらに生成する、UOWの呼び出しをリクエストが起こすことを思い出させる。従って、ユーザリクエストは、一般的にUOWの一連の呼び出しを引き起こし、それぞれが異なる階層上で実行される。UOWの呼び出しは、同期(即ち、呼び出すUOWを実行する処理部が、処理を再開する前に呼び出されたUOWからのリプライを待つこと)あるいは非同期(即ち、呼び出すUOWを実行する処理部が、呼び出されたUOWからのリプライを待つことなく、呼び出すUOWの処理を続けること)である。両方の場合において、呼び出された階層N+1上のUOWは、呼び出す階層Nによって要求されるサービスに専念される。同期処理において、階層N上の呼び出すUOWが階層N+1上の呼び出されたUOWを終わりまで(即ち、階層N+1上のUOWが割り付けられるまで)待つ。他の場合において、階層N+1上の呼び出されたUOWは、階層N+1上の呼び出されたUOWが終わるまで、呼び出す階層によって複数回参照される。
ステージ142において、第1のリクエストは、コンピューティング環境132における階層N(即ち、どんな代表の階層)に送信される。第1のリクエストは、先の階層あるいはユーザアプリケーションのどちらにとっても、サービスを提供するために、階層N上のUOW呼び出しという結果になる。第1のリクエストは、階層N上のキューを待つ。
ステージ144において、第1のリクエストは、キュー158を出て、階層N上に、UOW、UOW−Aが割り付けられる。UOW割り付けは、階層Nにおける処理部162の一つから利用可能な処理部を与えることと、その処理部で動作するためのリクエストアプリケーションコードを送ることとを含む。UOW割り付けがターゲットを一旦起こすと、階層リソースは利用可能であり、階層N上の利用可能な処理部に対するアプリケーションコードを与えることができる。サンプルライフサークル140において、UOW−Aは、階層N上で実行を開始する。
ステージ146において、UOW−Aは、第2のリクエストを階層N+1に与える。しかる後、階層N+1は、階層Nのこのリクエストを実行するためにUOW−Bを呼び出す。ステージ148において、階層N+1は、階層Nによって送信された第2のリクエストを実行するためにUOW−Bを呼び出す。第2のリクエストは、階層N+1上のキュー160を待つ。ステージ150において、第2のリクエストがキュー160を出て、UOW−Bは、第2のリクエストに割り付けられる。UOW−B割り付けは、UOW呼び出しのアプリケーションコードに対する階層N+1における処理部164の一つから利用可能な処理部を付与し、その処理部で動作するためのリクエストアプリケーションコードを送るという結果になる。しかる後、UOW−Bは、階層N+1上の実行を開始する。それは、UOW−Bの呼び出しが同期であり、従って、UOW−Aを処理する処理部は、UOW−Bからのリプライを待っている間、処理を続けないことを意味する。
UOW−Bの呼び出しが非同期である場合において、UOW−Aを処理する処理部は、UOW−Aから階層N+1に送信された第2のリクエストが受け入れられることの承認を階層N+1から受信する。承認を受信した上で、UOW−Aを処理する処理部は、処理部がリプライを第1のリクエストに返信するまでに実行を再開する。階層N+1が非同期な第2のリクエストを受け入れた後、第2のリクエストは、キュー160を待つ。第2のリクエストは、処理部の一つがキュー160から第2のリクエストを移動させるまで、第2のリクエストを処理する一以上の処理部によって読み出される。第2のリクエストを処理する各処理部は、第2のリクエストを、他のリクエストのチェーンを開始し、その結果、新しいトランザクションを開始する、新しいユーザリクエストに返す。
例えば、非同期なリクエストを含むトランザクションは、eコマースのウェブサイトにおける書籍購入を確認するユーザである。購入リクエストは、オーダが処理され且つユーザに(例えば、Eメールやテキストメッセージを介して)通知される画面報告をユーザに返信する。同じ購入リクエストは、最終同意リクエストをクレジットカード会社に送信する処理部、購入オーダリクエストをウェアハウスに送信する処理部、会計報告リクエストをビリングシステムに送信する処理部といったものによって、購入リクエストが後に処理されるメッセージキュー上に同時に置かれる。
ステージ152において、UOW−Aの先の呼び出しに応じてリプライをUOW−Aに返信し、UOW−Bの実行が完了する。第2のリクエストは、終了する。ステージ154において、UOW−Aは、UOW−Bが階層N+1によって実際にリリースされるポイントで、リプライを受信し且つ実行を再開する。しかる後、UOW−Aは、実行を続ける。呼び出すUOWがリクエストを生成した時と呼び出すUOWが呼び出されたUOWからのリプライを受信する時との間の持続時間は、「潜伏時間」期間あるいは所定のUOWリクエストのための応答時間として知られる。
ステージ156において、UOW−Aは、実行を完了し、第1のリクエストは、終了する。それは、完了前に、UOW−Aが他の階層のサービスを要求し、そのサービスを提供するためにさらにリクエストを呼び出すことを意味する。
それは、UOW−Bがステージ150において割り付けられ、階層N+1上の実行を開始した後、治癒できないエラーが起こる(例えば、プログラム例外)ことを意味する。本開示技術の一実施形態に基づき、階層N+1と関連付けられたコンテキストエージェントは、階層N+1上で起こったエラーの種類に関する情報を提供しつつ、エラーを記録し、開始されるトランザクションに対するエラーを、階層N上のUOW−Aを呼び出したユーザリクエストと関連付ける。
本開示技術の他の実施形態に基づいて構成され且つ作用する、符号200で参照されるアプリケーションパフォーマンス管理システムの概略図である図5を参照する。システム200は、符号248で参照される多階層コンピューティング環境上で作動する。コンピューティング環境248は、クライアント214、第1の階層202、第2の階層204、第3の階層206、第4の階層208及び第5の階層210を含む。第1の階層202は、ウェブサーバである。第2の階層204は、アプリケーションサーバAである。第3の階層206は、アプリケーションサーバBである。第2の階層204及び第3の階層206は、共に一つのホストマシーン212上に存在する。第4の階層208は、他のアプリケーションサーバ、アプリケーションサーバCである。第5の階層210は、データベースである。第1の階層202は、クライアント214、ホスト212と結び付けられる。ホスト212は、第4の階層208及び第5の階層210とさらに結び付けられる。第4の階層208は、第5の階層210とさらに結び付けられる。
システム200は、複数の動的階層拡張222,224,226,228,230、複数のコンテキストエージェント232,234,236,238、複数のローカルログ240,242,244,246、コンテキストネットワーク管理サーバ(CNMS:context network management sever)216、サービルレベル目標(SLO:service level objective)ポリシーデータベース218、スーパバイザワークステーション220を含む。各階層は、動的階層拡張(DTE:dynamic tier extension)を含む。各階層と関連付けられたコンテキストエージェントがある。各コンテキストエージェントと関連付けられたローカルログがある。所定の階層のコンテキストエージェントは、階層内のDTE(あるいはいくつかのDTE)、コンテキストエージェントと関連付けられたローカルログ、コンピューティング環境における階層の結び付けに基づく他のコンテキストエージェントと結び付けられる。各コンテキストエージェントは、CNMS216とも結び付けられる。CNMS216は、SLOポリシーデータベース218と結び付けられる。スーパバイザワークステーション220は、CNMS216及びSLOポリシーデータベース218と結び付けられる。スーパバイザワークステーション220は、CNMS216及びSLOポリシーデータベース218と結び付けられる。
特に、第1の階層202は、DTE222を含む。コンテキストエージェント232は、第1の階層202と関連付けられる。ローカルログ240は、コンテキストエージェント232と関連付けられる。第2の階層204は、DTE224を含む。第3の階層206は、DTE226を含む。第2の階層204及び第3の階層206は両方ホスト212上に存在するので、第2の階層204及び第3の階層206の両方と関連付けられる一つのコンテキストエージェント234があるのみである。それは、コンテキストエージェント234がDTE224及びDTE226のそれぞれと直接結び付けられることを意味する。ローカルログ242は、コンテキストエージェント234と関連付けられる。第4の階層208は、DTE228を含む。コンテキストエージェント236は、第4の階層208と関連付けられる。コーカルログ244は、コンテキストエージェント236と関連付けられる。最後に、第5の階層210は、DTE230を含む。コンテキストエージェント238は、第5の階層210と関連付けられる。ローカルログ246は、コンテキストエージェント238と関連付けられる。コンテキストエージェント232は、コンテキストエージェント234と結び付けられる。コンテキストエージェント234は、コンテキストエージェント236及びコンテキストエージェント238とさらに結び付けられる。コンテキストエージェント236は、コンテキストエージェント238とさらに結び付けられる。
動的階層拡張は、特定の予め定められたポイントで階層と結び付けられる。これらの予定ポイントは、階層のリクエストエントリーポート、階層のリクエストイグジットポート、階層内のできる限りの追加領域(例えば、階層コントロールポート)である。本開示技術によるリクエストポートは、階層によって処理される前か処理された後のリクエストを管理する階層内のモジュールである。そのようなリクエストポートは、階層の入口でリクエストキューに対するインターフェイスポイント(即ち、入口、出口、あるいはその他のどんなアクセス機構も)であり得る。リクエストは、処理部によって階層上で動作するアプリケーションコードからサービスを要求するので、それぞれリクエストポートは、アプリケーションレベルで存在し、ネットワーキングレベルでは存在しない。それは、本開示技術によるリクエストポートがネットワークレベルでない(例えば、TCP/IPやUDPポートでない)ことを意味する。
DTEは、階層がその上で関連付けられる(即ち、階層が動作するホストマシーンの少なくとも一つの上にDTEが位置する)ように、同じ階層ホスト上に位置される。DTEの責務は、リクエストコンテキストを獲得することである。DTEは、入出力するリクエストを検出するため、階層のリクエストエントリーポート及びリクエストイグジットポートを監視する。DTEは、トランザクションIDをユーザリクエストに与え、階層を入ったり出たりする各リクエストのリクエストIDを得る。DTEは、以下に記述される図7に詳細に説明される。
コンテキストエージェントは、所定のリクエストと、リクエストの呼び出されたUOWと、リクエストとしての同じトランザクションにおけるユーザリクエストのリクエストコンテキストとの間の関係を維持する。コンテキストエージェントは、各リクエスト(即ち、コンテキスト関連データ)に与えられたリクエストコンテキストを、他の階層を処理する他のコンテキストエージェントに中継する。コンテキストエージェントは、全リクエストコンテキストあるいはリクエストコンテキストの一部を中継する。さらに、コンテキストエージェントは、リクエストコンテキスト自身か表示(例えば、ポインタ)を他の位置に存在するリクエストコンテキストに中継する。それは、コンテキストエージェントが階層としての同じホストマシーン上に必然的に存在することを必要としないが、これは、本開示技術の好ましい実施形態における場合であることを意味する。コンテキストエージェントは、以下に記述される図8に詳細に説明される。CNMS216は、パフォーマンスデータを収集し、解析する。SLOポリシーデータベース218は、横断階層サービスクラスポリシーを保存し、連続的に更新される。
図5の多階層コンピューティング環境の二つの階層の概略図である図6を参照する。それは、図6に示される第4の階層208及び第5の階層210のそれぞれがコンピューティング環境248におけるどんな二つの連続する階層(例えば、階層Nと階層N+1)であることも意味する。
第4の階層208に入るリクエストは、キュー262で第4の階層208のリクエストエントリーポートで待つ。第4の階層208は、リクエストを実行するためにUOWを呼び出す。リクエストは、キュー262を出て、第4の階層208は、利用可能な処理部を処理部252からUOWに与え且つ処理部上で動作するためのリクエストアプリケーションコードを送ることによって、リクエストにUOWを与える。UOWは、第4の階層208上で実行する。しかる後、UOWは、第5の階層210からサービスを要求する。新しいリクエストは、リクエストイグジットポートで第4の階層208を出て、キュー264で第5の階層210のリクエストエントリーポートで待つ。第5の階層210は、新しいリクエストを実行するためにUOWを呼び出す。新しいリクエストは、キュー264を出て、第5の階層210は、利用可能な処理部を処理部254からUOWに与え且つ処理部上で動作するための新しいリクエストのアプリケーションコードを送ることによって、UOWを新しいリクエストに与える。DTE228は、リクエストがそれぞれ第4の階層208を入ったり出たりするのを検出するために、第4の階層208のリクエストエントリーポート及びリクエストイグジットポートを監視する。
動的階層拡張は、アプリケーションコードを変えることなく、そのライフサイクルの全体に亘ってリクエストを追跡するのに含められる。DTEは、DTEがアプリケーションコードの外部のリクエストコンテキストをインターセプトする階層環境に動的にフックする。リクエスト追跡は、リクエストを階層上のUOWと関連付けると共に階層上のUOWからリクエストを分離する、リクエストコンテキストを獲得する、ことを含む。DTEは、パフォーマンス、可用性、階層からのエラーメトリックスをさらに収集する。DTEは、階層のリクエストエントリーポートでのキュー上のリクエストのオーダを調整したり、リクエストを処理するための計算リソース(例えば、CPU、メモリ、I/Oといったもの)を与えたり、処理部の優先度や与えられたリソースを変更するといった、階層上のリクエストの処理を動的に調整もする。これらのタスクは、以下に記述される図9,10,11を参照して説明される。
それは、帯域内及び帯域外という、コンテキストエージェント間を中継するリクエストコンテキストの二つの選択があることを意味する。帯域内のコンテキスト中継において、リクエストコンテキストは、リクエストが次の階層に向かって所定の階層を出るので、リクエスト自身に加えられる。従って、リクエスト及び子孫のリクエストが異なる階層間で処理されるので、更新されたリクエストコンテキストは、リクエスト呼び出しに加えられる。それにひきかえ、帯域外の中継は、リクエスト呼び出しに加えられるリクエストコンテキストを含まない。むしろ、コンテキストエージェントは、コンテキスト情報を直接互いに送信する。コンテキストエージェントは、リクエストコンテキストを他のコンテキストエージェントに送信する。DTEは、コンテキストエージェントからリクエストコンテキストを検索する。それは、システム200(図5)に類似するシステムの各コンテキストエージェントが帯域外技術を用いてリクエストコンテキストを他のコンテキストエージェントに中継することを意味する。
図5に戻り、システム200は、アクティビティープロファイリングを実行する。アクティビティープロファイリングは、アクティビティープロファイルの生成を含む。アクティビティープロファイルは、統合したトランザクション階層、リクエスト追跡中に得られたシステムレベルパフォーマンスメトリックス及び統計解析を含む。例えば、パフォーマンスメトリックスは、リクエスト経過時間、リクエストサービス時間、階層上の消費CPU時間といったものを含む。アクティビティープロファイルデータは、自然に収集され、監視(即ち、GUIにおけるディスプレイ)とユーザ定義サービスクラスポリシーのユーザ作成の監視及び支持の両方に用いられる。アクティビティープロファイリングコンソール(図示しない)は、コンテキストエージェントによって集められたパフォーマンス及び可用性の塊状データを表示するGUIのコンポーネントである。パフォーマンス及び可用性の塊状データは、階層、リクエストクラス、トランザクションといった各種のカテゴリーによるアクティビティープロファイルデータのサマリービューを含む。CNMS216に位置するアクティビティープロファイリングエンジン(図示しない)は、アクティビティープロファイリングを実行する。
各コンテキストエージェントは、各階層における実行詳細についての情報を収集するタスクを有する。DTEは、コンテキストエージェントが階層上のUOWの実行と関連するデータを収集することを可能とする。しかる後、コンテキストエージェントは、収集された情報をCNMS216に送信する。各UOWのために保存された情報は、開始時間、UOWが割り付けられたリクエストのリクエストID、UOWが割り付けられたリクエストのトランザクションID、UOWが割り付けられたリクエストのリクエストクラス、ユーザ詳細、開始ネットワークアドレス詳細、UOWが割り付けられたリクエストのサービスクラス、終了時間、(CPUといった)リソース消費といったものを含む。
コンテキストエージェントは、メモリ(図示しない)におけるUOWの現在の実行に関する情報を保存する。UOWが階層上での実行を一旦終了すると、コンテキストエージェントは、コンテキストエージェントの同じ階層ホストでディスク(図示しない)に局所的に保存される、直近の履歴データストア(図示しない)に情報を移動させる。所定期間後、コンテキストエージェントは、直近の履歴データストアからサマリーデータストア(図示しない)にエントリーを移動させる。この情報は、所定期間を終えたサマリー(例えば、30分間を終えて収集されたメトリックスの平均)として保存される。サマリーデータストアにおける情報は、シフトに保存される。シフトは、周期基準上に記録される(即ち、それらは、いくつかのシフトが蓄えられた後に再利用される)。
システム200は、サービスクラスポリシーをさらに含む。リクエストが処理される階層に関し、サービスクラスをリクエストクラス内のリクエストに与えるルールについてサービスクラスポリシーが言及することが思い出される。コンテキストエージェントに位置するリアルタイムサービスクラスポリシーエンジンは、リクエストクラスといった、リクエストコンテキストにおける情報、同じリクエストコンテキストを備えるリクエストの先の実行のパフォーマンス特性と、アクティブサービスクラスポリシーに基づくリクエストとに、適切なサービスクラスを与える。さらに、サービスクラスの付与は、各リクエストクラスのためのパフォーマンスメトリックスのセットといった、追加考慮を考慮に入れる。パフォーマンスメトリックスのセットは、リクエストクラスを特徴付け、一般的なパフォーマンス挙動のためのベースラインを生成する。この処理は、全階層及びそれらと関連付けられたリクエストクラスを横断して生成されるログデータを利用する。リクエストクラスは、SLOポリシーデータベース218におけるツリー構造に保存される。サービスクラスポリシーエンジンは、各リクエストクラスと関連する情報を追加・更新し、それに応じてSLOポリシーデータベース218を更新する。
サービスクラスは、第1階層におけるユーザリクエストが決定され、しかる後、リクエストコンテキストにおけるリクエストと共に階層から階層(コンテキストエージェントからコンテキストエージェント)に通される。アクティブサービスクラスポリシー及びサービスクラスに対するマッピングを決定するためのアクセスCNMS216は必要とはしない。むしろ、各コンテキストエージェントは、最新に維持されるポリシーキャッシュ(図示しない)を有するので、適切なサービスクラスに対するマッピングは、局所的に実行される。
アクティビティープロファイリングエンジンは、周期的なインターバルあるいは必要及び要求のあるとき(例えば、パフォーマンスコンソール上の目下動作するリクエストを見ることをユーザが望むとき)にいつでも動作するリクエストについての情報のためのローカルコンテキストエージェントを集める。あるいは、アクティビティープロファイリングエンジンは、固定されたインターバルあるいは閾値(いくつかの記録)に到達したときに新しい記録をアクティビティープロファイリングエンジンに送信することを起こすために、各コンテキストエージェントを指示することができる。アクティビティープロファイリングエンジンは、各リクエストクラスの解析のためのベースラインとして、各リクエストのデータを収集し、計算(例えば、平均、分散といったもの)を実行し、SLOポリシーデータベース218における各種インターバルで結果を保存する。SLOポリシーデータベース218に保存された利用可能なデータに基づき、CNMS216に位置するサービスクラスポリシー生成エンジンは、新しいサービスクラスポリシーのためのリコメンデーションとして提供するルールのセットを生成する。CNMS216は、これらのリコメンデーションを用いてサービスクラスポリシーを決定する。サービスクラスポリシーは、SLOポリシーデータベース218に保存される。
それは、SLOポリシーデータベース218がユーザ定義サービスクラスポリシーと同様に自動的に生成されるポリシーを保存する。ユーザは、システム200のユーザインターフェイス(図示しない)を介して、あるいはコンテキストエージェントの構造ファイルを編集することによって、サービスクラスポリシーのセット(即ち、ユーザ定義のサービスクラスポリシー)を生成する。ユーザ定義のサービスクラスポリシーの生成は、アクティビティープロファイルのユーザ解析を含み、CNMS216によって示唆されたサービスクラスポリシーの同意を得る。
コンテキストエージェントは、更新されたサービスクラスポリシーをCNMS216から受信する。それは、自動的に生成されるかユーザ定義の新しいサービスクラスポリシーがコンテキストエージェントに対して明白であるか否かを意味する。コンテキストエージェントは、コンテキストエージェントのローカルポリシーキャッシュ内に位置する、適切な階層仕様アクティブサービスクラスポリシーに指定されたサービスクラスをリクエストに与える。
あるいは、コンテキストエージェントは、(例えば、サービスクラスの条件を満たすのに必要な全リソースが階層に提供されない場合、著しく多くの高優先度のリクエストが階層に入ると共に、低優先度のリクエストによってリソース欠乏となる場合といった)所定のシチュエーションにおけるアクティブサービスクラスポリシーによって指定されたよりも異なるサービスクラスをリクエストに与える。さらにまた、コンテキストエージェントは、リクエストのリクエストクラスを変更し、その後、新しいリクエストクラスのための適切な階層仕様アクティブサービスクラスポリシーによって指定されたサービスクラスをリクエストに与える。
システム200は、リクエスト分類も実行する。これは、各種の基準に従うリクエストクラスに複数のリクエスト(それぞれがトランザクションID及びリクエストコンテキストによって指定される)を分類することを含む。自動的なリクエスト分類処理は、リクエストと関連付けられた一般情報(例えば、ヘッダ情報、クエリストリングといったパラメータ、HTTPリクエストタイプの場合におけるURL(Uniform Resource Locator)パラメータといったもの)を集める。同じリクエストクラスの他のリクエストが届くとき、このリクエストは、リクエストクラス内の他のリクエストと同様に類似する方法で処理される。リクエストクラスは、関連アクティブプロフィールにおけるリクエストクラスパフォーマンス特性に基づく各種のカテゴリーにグループ分けされる(例えば、2秒よりも長い応答時間を有するリクエストクラスのグループ)。リクエストクラスのグループ分けは、レポート目的のために用いられ、リクエストクラスパフォーマンスデータのハイレベル要約ビューを可能とする。
システム200は、自動的な分類処理のために用いられる同じリクエスト情報に基づくリクエストを分類するルールをユーザが生成する、ユーザ定義分類処理もサポートする。ユーザは、システム200のユーザインターフェイス(図示しない)を介して分類ルールを作成する。自動的なリクエスト分類処理は、H.Zhu及びT.Yang(「ダイナミックウェブコンテンツのためのクラスベースキャッシュ管理」Tech. Rep. TRCS00-13, Dept. of Computer Science, University of California, Santa Barbara, 2000)によって説明される、「クラスベースキャッシュ管理」アルゴリズムを用いる。分類処理のアウトプットは、リクエストクラス及びペアレントクラス(即ち、自動的なリクエスト分類処理において)あるいは分類ルールのセット(即ち、ユーザ定義分類処理において)を表すツリーである。分類処理の全結果は、SLOポリシーデータベース218に保存される。
システム200は、アクティブサービスクラスポリシーにおいて定義されるように、それぞれ監視された階層上で、サービスクラスを実施するためにも動作される。ポリシー施行は、DTE及びコンテキストエージェントの両方によって実行される。各階層においてリクエストの列を作る(即ち、リクエストが階層内で実際に処理されるオーダ)ことをコントロールすることによって、あるいは実行中にリクエストを動作する処理部の処理優先度を一時的に変更することによって、施行が実施される。
実施は、特定の階層アーキテクチャによる。例えば、データベース階層における実施は、適切なサービスクラスポリシーによるセッションリソース割り付けを動かすために、データベースリソース管理スキームの使用を含む。他の例は、リクエスト優先順位をサポートするためにアプリケーションサーバウェブキューを拡張する、優先順位をサポートするために事業JAVAビーン(EJB:Enterprise JavaBeans)を拡張する、JAVAスレッド優先度をコントロールする、といったJ2EEアプリケーションサーバアプリケーションを用いて実施されるアプリケーションサーバにおける実施である。
図5のシステムの動的階層拡張の概略図である図7を参照する。それは、図5に表される、第4の階層208のDTE228がシステム200における全ての動的階層拡張の代表であることを意味する。DTE228は、一連のソフトフック、第4の階層208へのインターセプションポイントを含む。符号266,268で参照されるこれらのフックは、リクエスト関連情報及びパフォーマンスデータを収集するよう提供する。フックは、UOWを実行する処理部の優先度を変更することもできる。フックは、収集された情報を、専念されたメッセージキュー270上に置く。ソフトフッキング及びインターセプション技術は、特定の環境による。例えば、環境は、ウェブサーバ、JAVAベースJ2EEアプリケーションサーバ、データベース、メッセージサーバといったものである。それは、インターセプションポイント266,268がオペレータによって即座に作動あるいは作動停止されることを意味する。
DTE228は、第4の階層208内で動作する処理を含む。処理は、インターセプションポイントからメッセージを処理し、メッセージをコンテキストエージェント236に通信し、メッセージをインターセプションポイントに返信し、DTEの管理コントロール機能(例えば、スタート/ストップ追跡リクエスト、ソフトフックの導入及び除去)を実行する。DTE228は、DTEデーモン272、DTEアドミニストレータ274、DTEメッセージモジュール276、DTEログイベントハンドラ278、DTE通信インターフェイス280を含む。
DTEデーモン272は、階層内で作動する、人工的に作られた処理部である。DTEデーモン272は、リクエストが引き留められるのを必要としないレポートされたイベントと関連付けられた非同期処理を実行する。これらは、リポートするイベントに関して二種類のシナリオがある。第1のシナリオにおいて、応答が受信されるまでリクエストを引き留める必要がない。例えば、リクエストが終わることをレポートするとき、コンテキストエージェントが実際に通告される後までリクエストを遅延させる必要がない。第2のシナリオにおいて、リクエストは、処理が再開される前に所定期間保持される必要がある。例えば、リクエストのサービスクラスを得るときやリクエストの分類を実行するとき、処理は、リクエストクラス及びサービスクラスがコンテキストエージェントによって決定されるまで開始することができず、他方、処理は、正しくないサービスや正しくないリクエストクラスを用いてなされる。
DTEデーモン272は、第1のシナリオのイベントを処理し、リクエストが引き留められる必要がない。処理は、非同期でなされるので、リクエストは遅延されない。従って、リクエストは、非常に早くリリースされ、おおよそ即座である。DTEデーモン272は、それと関連付けられるキュー270を有する。リクエストが入り、関連するリクエストが出ることがインターセプションポイント266,268によって通知された後、DTE272は、キュー270からこれら通知を取り出し、必要な追加処理をなんでも実行する。
DTEアドミニストレータ274は、DTE228が、リクエストがどのように処理されるべきかと関連するメッセージを受信することを可能とする。例えば、そのようなメッセージは、リクエストの追跡停止、リクエストの追跡を継続するが優先順位付けの停止といったものを含む。DTEメッセージモジュール276は、メッセージを用いてコンテキストエージェント236と通信する。例えば、そのようなメッセージは、UOWの開始及び終了、所定のリクエストとのUOWの関連付けといったものを含む。DTEログイベントハンドラ278は、DTEオペレーションに関する追跡情報を記録し、DTE228によって起こされる警告を記録する。これら記録されたイベントは、ローカルファイル、システムメッセージコンソール、システムログといった複数の行き先に送信され得る。DTEログイベントハンドラ278は、シンプルネットワーク管理プロトコル(SNMP:Simple Network Management Protocol)といった複数の工業規格プロトコルをサポートする。DTE通信インターフェイス280は、DTE228及びコンテキストエージェント236間のインターフェイスとして提供する。DTE通信インターフェイス280は、コンテキストエージェント236のエージェントメッセージモジュール286からDTE228に送信されるメッセージを中継する。DTE通信インターフェイス280は、DTE228のDTEメッセージモジュール276からコンテキストエージェント236に送信されるメッセージも中継する。複数の通信プロトコルは、サポートされ、各DTEは、内部処理通信、TCP/IP(Transmission Control Protocol/Internet Protocol)といったアーキテクチャ内で利用可能な最も効果的な通信方法を用いる。
図5のシステムのコンテキストエージェントの概略図である図8を参照する。それは、図5に表される、第4の階層208のコンテキストエージェント236がシステム200における全てのコンテキストエージェントの代表であることを意味する。コンテキストエージェント236は、TCP/IP、内部処理通信チャンネルといった各種のメカニズムを介してDTE228から通知を受信する。通知は、リクエストコンテキストのキャプチャ、UOWの開始、UOWの終了、UOWのリソース消費、離れた階層上のUOWの呼び出し/割り付け、離れた階層上のUOWのリプライ/リリースといった階層内で起こるイベントのものである。コンテキストエージェント236は、エージェントログイベントハンドラ282、エージェント通信インターフェイス284、エージェントメッセージモジュール286、コンテキストテーブルマネージャ288、分類マネージャ290、ポリシーマネージャ292、エージェントアドミニストレータ294を含む。
エージェントログイベントハンドラ282は、内部ハウスキープの目的及びコンテキストエージェント236によって起こされる記録警告の両方のためにコンテキストエージェント236によって用いられる。エージェントログイベントハンドラ282は、コンテキストテーブル(以下に記述される)に入るが、コンテキストエージェント236内で起こる稼動不規則(即ち、問題やエラー)を検出するためといった、内部追跡及びメッセージ目的のためにも用いられる情報を記録する。これら記録されたイベントは、ローカルファイル、システムメッセージコンソール、システムログといった複数の行き先に送信され得る。エージェントログイベントハンドラ282は、SNMPといった複数の工業規格プロトコルをサポートする。
エージェント通信インターフェイス284は、DTE228及びコンテキストエージェント236間のインターフェイスとして提供する。エージェント通信インターフェイス284は、DTE228のDTEメッセージモジュール276からコンテキストエージェント236に送信されるメッセージを中継する。エージェント通信インターフェイス284は、コンテキストエージェント236のエージェントメッセージモジュール286からDTE228に送信されるメッセージも中継する。DTE228及びコンテキストエージェント236の二つの間で早く確実な通信を確立すべく、二つを接続するいくつかのチャンネルがあり、少なくともいくつかのチャンネルは、例えば高優先度のチャンネル及び管理チャンネルのあらゆる時間での開放が維持される。異なるタイプのメッセージのため、各種のチャンネルのいくつかの接続もまたある。その結果として、エージェント通信インターフェイス284は、これら異なる実現性に順応するのに有効である。
エージェントメッセージモジュール286は、離れた階層と関連付けられた他のコンテキストエージェントに対し、リクエストが離れた階層に送信されたことを通知する。エージェントメッセージモジュール286は、メッセージを用いてDTE228とさらに通信する。例えば、そのようなメッセージは、UOWの開始及び終了、リクエストとのUOWの関連付けといったものを含む。エージェントメッセージモジュール286は、エージェント通信インターフェイス284を介してDTE228と通信する。
コンテキストテーブルマネージャ288は、コンテキストエージェントのブックキーパとして機能する。コンテキストテーブルマネージャ288は、「コンテキストテーブル」として知られ、階層上で動作するUOWをそれらのリクエストコンテキストと関連付けるのに用いられる、横断参照テーブルを維持する。リクエストコンテキストは、現在の階層からであり(即ち、ユーザリクエストの場合)、リクエスト実行チェーンからの先の階層から中継され、あるいは両方である(即ち、リクエストコンテキストが修正されるか、新しい情報がそれに加えられるかである)。コンテキストテーブルは、各リクエストと関連付けられた情報(例えば、トランザクションID、リクエストクラス、サービスクラス、リクエストの原点といったもの)を保存する。エージェントメッセージモジュール286は、コンテキストテーブルにアクセスし、エージェントメッセージモジュール286がDTE228から情報を受信した後に関係記録を調べる。コンテキストテーブルマネージャ288は、コンテキストテーブルに保存されたリクエスト及びデータと関連付けられた情報に基づくリクエストを確認する。このように、コンテキストエージェント236は、リクエストクラス、サービスクラス、リクエストと関連付けられた他の関連情報といった、階層に入るリクエストと関連する情報を得る。
分類マネージャ290及びポリシーマネージャ292は、第1の階層に入る各ユーザリクエストを処理する。最初に、ユーザリクエストは、このユーザリクエストに関してコンテキストテーブルにおける情報がないコンピューティング環境に入る。従って、ユーザリクエストは、分類を経験する必要がある。分類処理中、リクエストエントリーポートでユーザリクエストについて知られている全ての情報が集められる。例えば、ユーザリクエストがHTTPリクエストであるならば、そのような情報は、HTTPヘッダ、クエリストリング、URLパラメータといったものを含む。各階層において用いられる各種のプロトコルにとって、ユーザリクエストを実際に分類する一般的なプラグインがある。
分類処理は、技術リクエスト関連情報(例えば、HTTPリクエスト)を、ビジネス処理(例えば、銀行口座残高の検索)と関連する形式的なリクエスト分類に移すことによって、ユーザリクエストからビジネス展望を本質的に取り出す。ユーザリクエストは、特定のリクエストクラスに置かれる。ユーザリクエストは、ビジネス処理の一部あるいは関連トランザクションのセットとして確認される。例えば、口座残高の検索は、抵当申し込みの大きな処理の一部である。情報がコンテキストエージェント236からCNMS216に移動されるとき、CNMS216は、アクティビティープロフィールを決定することができると共に、リクエストクラスの傾向にあるリクエスト挙動を検出することができる。
ポリシーマネージャ292は、リクエストに対してサービスクラスを与える。ポリシーマネージャ292は、分類マネージャ290のアウトプットを受信し、リクエストクラス、リクエストコンテキスト、アクティブサービスクラスポリシーに基づいて、所定のリクエストのサービスクラスを決定する。例えば、ポリシーマネージャ292は、異なるリクエストクラスからのリクエストよりも高優先度となるサービスクラスを有する所定のリクエストクラスからの全てのリクエストをセットする。コンテキストエージェントは、アクティブサービスクラスポリシーによる適切なサービスクラスと共にリクエストコンテキストを更新することによって、サービスクラスをそれと関連付けられる階層上で処理されるリクエストに与える。
横断階層サービスクラスポリシーデータベースは、多階層コンピューティングにおける全ての階層のためのリクエストクラスに対するサービスクラスのマッピングのセットを含む。所定のリクエストクラスに属する各リクエストは、リクエストが処理される階層による異なるサービスクラスが与えられる。図2を参照して、ユーザリクエストR1は、第1の階層102上の低優先度でサービスクラスが与えられ、リクエストR2は、第2の階層104上の高優先度でサービスクラスが与えられ、リクエストR3は、第3の階層106上の中間優先度でサービスクラスが与えられる。横断階層サービスクラスポリシーは、SLOポリシーデータベース218に保存される。横断階層サービスクラスポリシーは、自動的に生成される(即ち、システム定義)か、システムのユーザによって定義される。
加えて、ローカル階層のスーパバイザ(例えば、データベースアドミニストレータ)は、階層の管理コントロールを有し、必要ならば、階層上のサービスクラスポリシーを無効にすることを決定する。階層スーパバイザは、階層のコンテキストエージェントによってリクエストに与えられたサービスクラスを変更する。階層スーパバイザは、階層上で動作する実質的に全ての全ビューを有する。それは、一般的に、ユーザアプリケーション自身を動作し且つグローバルピクチャーに興味を持つ人である、システムの全スーパバイザもいることを意味する。
それは、最初の分類及びユーザリクエストのポリシー付与の後、リクエストクラスが同じトランザクションの次のリクエストを維持し、コンテキストエージェントが階層から階層に従ってこの情報を中継することを意味する。このように、各階層で、コンテキストエージェントは、リクエストの階層仕様サービスクラスであるもの及びリクエストと関連付けられた他の情報にリクエストが属するリクエストクラスを確認する。
エージェントアドミニストレータ294は、CNMS216に対するインターフェイスである。エージェントアドミニストレータ294は、履歴データをCNMS216にレポートする。例えば、UOWが終了したことをDTEが表すとき、UOWと関連付けられた情報は、コンテキストテーブルにもはや残る必要はない。しかる後、情報は、コンテキストテーブルからエージェントアドミニストレータ294に送信され、情報を記録し、定期的に情報をCNMS216に送信する。エージェントアドミニストレータ294は、新しいアクティブサービスクラスポリシー、コンテキストエージェントの新しい構造といったものもCNMS216から受信する。エージェントアドミニストレータ294は、状態表示を得るためにリアルタイムで問い合わせもする。状態表示は、UOWが今動作しているといった、情報がコンテキストテーブル内に現在あるものを含む。
本開示技術のさらなる実施形態に基づいて作用する、リクエストコンテキストの獲得及びこれに続く処理で必要とされるステージを実証するブロック図である図9を参照する。手順310において、リクエストコンテキストが獲得される。新しいユーザリクエストは、確認され、そのリクエストコンテキストは、DTEソフトフックによってインターセプトされる。図5を参照して、DTE222は、第1の階層202に入ったユーザリクエストのリクエストコンテキストを獲得する。
手順312において、獲得されたリクエストコンテキストが正規化される。DTEは、リクエストコンテキストを標準フォーマットに変換し、階層の全タイプにとって等しくなる(例えば、データベース、アプリケーションサーバといったもの)。DTEは、ユーザリクエスト及びユーザリクエストによって起こされたトランザクションにおける以後のリクエストを確認する固有のID(即ち、トランザクションID)をユーザリクエストに与える。DTEは、階層からのユーザリクエストのリクエストIDをさらに得る。図5を参照して、DTE222は、獲得されたリクエストコンテキストを標準フォーマットに変換し、トランザクションIDをユーザリクエストに与え、ユーザリクエストのリクエストIDを得る。
手順314において、DTEは、リクエストコンテキスト、トランザクションID、リクエストIDを、その階層と関連付けられたコンテキストエージェントに送信する。DTEは、新しいリクエストコンテキストが送信されたことをコンテキストエージェントに通知する。図5を参照して、DTE222は、リクエストコンテキスト、トランザクションID、ユーザリクエストのリクエストIDをコンテキストエージェント232に送信する。
手順316において、ユーザリクエストが分類される。コンテキストエージェントは、リクエストコンテキストに基づくリクエストクラスを決定する階層仕様分類スキームを適用する。図5を参照して、コンテキストエージェント232は、ユーザリクエストを所定のリクエストクラスに分類する。
手順318において、適切なアクティブサービスクラスポリシーが、ローカルポリシーキャッシュに保存されたサービスクラスポリシーから検索される。コンテキストエージェントは、リクエストクラスを用いてアクティブサービスクラスポリシー、可能ならば他のリクエストコンテキストフィールドを検索する。図5を参照して、コンテキストエージェント232は、ユーザリクエストのリクエストクラスに基づき、第1の階層202にとって特有な、ユーザリクエストのための適切なアクティブサービスクラスポリシーを検索する。
手順320において、ユーザリクエストのためのサービスクラスは、検索されたサービスクラスポリシーに基づいて決定され、リクエストに与えられる。しかる後、コンテキストエージェントは、リクエストコンテキストに与えられたサービスクラスを加える。図5を参照して、コンテキストエージェント232は、検索された適切なサービスクラスポリシーのサービスクラスをユーザリクエストに与え、サービスクラスをリクエストコンテキストに加える。
手順322において、階層優先度がユーザリクエストによって呼び出されたUOWのために決定される。UOWを処理する処理部のためのローカル優先度は、サービスクラスから引き出される。図5を参照して、コンテキストエージェント232は、UOWを実行するためのユーザリクエストに割り付けられた処理部のためのローカル優先度を、与えられたサービスクラスから引き出す。
手順324において、コンテキストエージェントは、リクエストクラス及び優先順位情報をDTEに送り返す。この情報は、処理部の優先度の変更といった、DTE内で生じる所定のタスクに必要である。図5を参照して、コンテキストエージェント232は、与えられたリクエストクラス、UOWを処理する処理部のためのローカル優先度をDTE222に送信する。
手順326において、リクエストコンテキスト及び関連情報(リクエストクラス及びトランザクションIDといったもの)は、他のコンテキストエージェント及びコンテキストエージェントの内部コンポーネントに転送され、特に、リクエストを保存してリクエストコンテキスト及びさらなる参照のための関連情報をインデックスするコンテキストテーブルに転送される。図5を参照して、コンテキストエージェント232は、リクエストと関連する追加情報と共にリクエストコンテキストを、コンテキストテーブルマネージャ288、分類マネージャ290、ポリシーマネージャ292(図8を参照)といったコンテキストエージェント232の内部コンポーネントのみならず、それと結び付けられる他のコンテキストエージェント(例えば、コンテキストエージェント234)に転送する。
本開示技術のさらに他の実施形態に基づいて作用する、図5のシステムのローカル階層上のUOW割り付けの獲得及びリクエストのUOWとの関連付けで必要とされるステージを実証するブロック図である図10を参照する。UOWがその階層上のリクエストと関連付けられた処理部において実行されるアプリケーションロジックであると思い起こされる。手順340において、UOW割り付けがDTEによって獲得される。獲得は、UOWがはじめに階層によって呼び出されたときに起こり、入るリクエストは、階層のリクエストエントリーポートでキューに入り、一方、開始リクエストはキューに留まり、あるいはリソースが階層で利用可能となってリクエストはキューを出る。図5を参照して、DTE228は、第4の階層208によって割り付けられたUOWを獲得する。
手順342において、DTEが、UOW割り付けと関連付けられた開始リクエストのリクエストIDを決定する。リクエストIDは、先の階層から送信された情報に基づいて決定され、ソケットIDといった、UOWをリクエストにリンクする関連キーと共にリクエストコンテキストを含む。図5を参照して、DTE228は、獲得されたUOW割り付けと関連付けられた開始リクエストのリクエストIDを、先に結び付けられた階層(例えば、第3の階層)から受信した情報に基づいて決定する。
手順342が起こる時点でリクエストコンテキスト及び関連キーが到達しない状況がある。従って、システムは、この情報を待つか、一時的なリクエストIDを付与し且つ開始リクエストを後のステージでのUOW割り付けと関連付けることによって、続行するよう構成され得る。
手順344において、DTEは、開始リクエストの決定されたリクエストIDのみならず、UOWのIDと関連する情報をコンテキストエージェントに送信する。UOWのIDは、UOWを実行する処理部を独自に確認する特性のセットである。UOWのIDは、UOWの追跡を維持するためにコンテキストエージェントによって用いられる。図5を参照して、DTE228は、開始リクエストの決定されたリクエストIDのみならず、UOWのための関連情報(例えば、UOWをリクエストにリンクする、ソケットIDといった関連キー)をコンテキストエージェント236に送信する。
手順346において、コンテキストエージェントは、UOWのIDやリクエストIDと関連付けられたコンテキストテーブルにおけるエントリーを検索する。図5を参照して、コンテキストエージェント232は、獲得されたUOW割り付けや決定されたリクエストIDと関連付けられたコンテキストテーブルマネージャ288(図8)を介してコンテキストテーブルにおけるエントリーを位置付ける。
エントリーが見つかったならば、手順348におけるしかる後、そのエントリーは、UOWのID及び関連情報で更新される。図5を参照して、コンテキストエージェント232は、コンテキストテーブルマネージャ288(図8)を介してコンテキストテーブルにおける関連エントリーを、獲得されたUOW割り付けのID及び関連情報で更新する。
エントリーが見つからないならば、手順350におけるしかる後、新しいエントリーがコンテキストテーブルに加えられる。新しいエントリーは、開始リクエストのリクエストID及び関連するUOW割り付けのIDを含む。初期のリクエストクラス及びサービスクラスは、新しい追加エントリーと関連付けられる。図5を参照して、コンテキストエージェント232は、開始リクエストのリクエストID及びUOW割り付けのIDを含むコンテキストテーブルマネージャ288(図8)を介してコンテキストテーブルに新しいエントリーを加え、初期のリクエストクラス及びサービスクラスを新しい追加エントリーと関連付ける。
手順352において、コンテキストエージェントは、UOWを実行する処理部のためのローカル優先度を決定し、必要ならば、リクエスト統計を集める。図5を参照して、コンテキストエージェント232は、リクエストに与えられたサービスクラスからのリクエストによって呼び出されたUOWを実行する処理部のためのローカル優先度を引き出す。
手順354において、コンテキストエージェントは、開始リクエストに与えられたサービスクラスを実行する。図5を参照して、コンテキストエージェント232は、例えば、リクエストによって呼び出されたUOWを実行する処理部の優先度レベルを変更し、処理部の実行タイプを変更し、あるいはリクエストを処理するために計算リソースを割り付けたり否定することによって、第1の階層202で開始リクエストの処理に影響を及ぼす。
それは、コンテキストエージェントがリクエストと関連する新しい関連情報を受信するならば、コンテキストエージェントがサービスクラス、リクエストクラス、あるいはリクエストコンテキストの他のパラメータをその後に修正することを意味する。これは、階層と関連付けられたコンテキストエージェントでリクエストコンテキストが離れたコンテキストエージェントから到達する状況で起こる(例えば、図5を参照して、コンテキストエージェント234がリクエストについての情報をコンテキストエージェント232から受信する)。時間供給により、コンテキストエージェントは、リクエストと関連付けられたUOW割り付けを獲得し、しかる後、後のステージでリクエストのリクエストコンテキストを受信する。
本発明のさらなる実施形態に基づいて作用する、図5のシステムのリモート階層に送信される終了リクエストの獲得及び送信されたリクエストのリクエストコンテキストとの関連付けで必要とされるステージを実証するブロック図である図11を参照する。手順370において、第1の階層から第2の階層へ送信されたリクエストは、第1の階層のDTEによって獲得される。図5を参照して、リクエストは、第1の階層202から第2の階層204に送信される。DTE222は、第1の階層202上の終了リクエストを獲得する。
手順372において、DTEは、終了リクエストのリクエストIDを決定する。図5を参照して、DTE222は、第1の階層202から第2の階層204に送信された終了リクエストのリクエストIDを決定する。
手順374において、DTEは、終了リクエストの決定されたリクエストIDのみならば、UOWのIDと関連する情報を、ローカルコンテキストエージェントへ送信する。図5を参照して、DTE228は、終了リクエストの決定されたリクエストIDのみならば、UOWのIDと関連する情報を、コンテキストエージェント236に送信する。
手順376において、ローカルコンテキストエージェントは、終了リクエストのリクエストIDやUOWのIDと関連付けられたコンテキストテーブルにエントリーを検索する。図5を参照して、決定された終了リクエストIDと関連付けられあるいはUOWのIDによってコンテキストテーブルマネージャ288(図8)を介してコンテキストテーブルにエントリーを位置付ける。
エントリーが見つかったならば、手順378におけるしかる後、そのエントリーは、UOWのID及び関連情報で更新される。例えば、エントリーは、エントリーに現在ない終了リクエストのリクエストコンテキストにおける情報で更新される。図5を参照して、コンテキストエージェント232は、コンテキストテーブルマネージャ288(図8)を介してコンテキストテーブルにおける関連エントリーを、関連エントリーに先に保存されていない終了リクエストのリクエストコンテキストにおける情報で更新する。
エントリーが見つからないならば、手順380におけるしかる後、新しいエントリーがコンテキストテーブルに加えられる。新しいエントリーは、終了リクエストのリクエストID及び関連するUOW割り付けのIDを含む。リクエストクラス、サービスクラス、リクエストコンテキストに保存されたリクエストの他の特性は、新しい追加エントリーに加えられる。所定の特性がリクエストコンテキストに現れないならば、初期の特性(リクエストクラス及びサービスクラス)が新しい追加エントリーと関連付けられる。図5を参照して、コンテキストエージェント232は、終了リクエストのリクエストID及び終了リクエストのリクエストコンテキストに保存されたリクエスト特性を含むコンテキストテーブルマネージャ288(図8)を介してコンテキストテーブルに新しいエントリーを加える。
手順382において、ローカルコンテキストエージェントは、メッセージを、離れたコンテキストエージェント(即ち、終了リクエストが送信されるコンテキストエージェント)に送信する。メッセージは、トランザクションID及びリクエストクラスのみならず、終了リクエストのリクエストIDを含む。図5を参照して、第1の階層と関連付けられたコンテキストエージェント232は、メッセージを、第2の階層204と関連付けられたコンテキストエージェント235に送信する。メッセージは、トランザクションID及びそのリクエストクラスのみならず、終了リクエストのリクエストIDを含む。
本開示技術のさらなる実施形態において、多階層ホストと関連付けられた一つのコンテキストエージェントがある。それは、DTEと通信するコンテキストエージェントが、コンテキストエージェントがどんなネットワークにも存在することを可能とすることを意味する。それは、コンテキストエージェントが階層IDを取り付けることによってリクエスト及びUOWの追跡を維持し、各階層のための分離したブックキーピングを提供することをさらに意味する。そのような実施形態は、例えば、セキュリティー関係や階層ホストに対するコンテキストエージェントの追加から生じるユーザの外部オーバーヘッドのために用いられる。
本開示技術が特に図示され且つこれまでに記述されたものに限定されないことが当業者によって理解される。むしろ、本開示技術の範囲は、特許請求の範囲によってのみ定義される。
図1は、公知の多階層コンピューティング環境の概略図である。 図2は、本開示技術の一実施形態に基づいて構成され且つ作用する、アプリケーションパフォーマンス管理システムの概略図である。 図3は、図2のシステムの二つのコンテキストエージェント間で中継する情報の概略図である。 図4は、図2のシステムの二つの階層上でのサンプルリクエストライフサイクルの概略図である。 図5は、本開示技術の他の実施形態に基づいて構成され且つ作用する、アプリケーションパフォーマンス管理システムの概略図である。 図6は、図5の多階層コンピューティング環境の二つの階層の概略図である。 図7は、図5のシステムの動的階層拡張の概略図である。 図8は、図5のシステムのコンテキストエージェントの概略図である。 図9は、本開示技術のさらなる実施形態に基づいて作用する、リクエストコンテキストの獲得及びこれに続く処理で必要とされるステージを実証するブロック図である。 図10は、本開示技術のさらに他の実施形態に基づいて作用する、図5のシステムのローカル階層上のUOW割り付けの獲得及びリクエストのUOWとの関連付けで必要とされるステージを実証するブロック図である。 図11は、本発明のさらなる実施形態に基づいて作用する、図5のシステムのリモート階層に送信される終了リクエストの獲得及び送信されたリクエストのリクエストコンテキストとの関連付けで必要とされるステージを実証するブロック図である。

Claims (64)

  1. 多階層コンピューティング環境において選択された階層を監視するための装置であって、前記装置は、
    前記多階層コンピューティング環境の前記選択された階層と関連付けられるコンテキストエージェントであって、前記コンテキストエージェントは、他のコンテキストエージェントと結び付けられ、前記他のコンテキストエージェントのそれぞれは、前記コンピューティング環境のそれぞれ階層と関連付けられる、そのようなコンテキストエージェントと、
    動的階層拡張(DTE)であって、前記動的階層拡張は、前記選択された階層を通過するリクエストトラフィックを少なくとも監視するため、前記コンテキストエージェント、及び前記選択された階層の少なくともリクエストエントリーポートと結び付けられ、前記監視されたリクエストトラフィックは、前記コンピューティング環境の隣り合った階層から前記リクエストエントリーポートで受信された少なくとも一つの開始リクエストを含み、前記動的階層拡張は、リクエスト情報を前記コンテキストエージェントに提供し、前記リクエスト情報は、前記監視されたリクエストトラフィックに含まれる各リクエストを少なくとも確認する、そのような動的階層拡張と
    を含み、
    前記コンテキストエージェントは、前記隣り合う階層と関連付けられた他のコンテキストエージェントからコンテキスト情報を受信し、前記受信されたコンテキスト情報は、前記少なくとも一つの開始リクエストのリクエストコンテキストと関連し、
    前記少なくとも一つの開始リクエストのそれぞれのために、前記コンテキストエージェントは、それぞれ、前記コンテキスト情報を前記リクエスト情報と関連付ける
    ことを特徴とする装置。
  2. 前記動的階層拡張は、前記選択された階層の少なくともリクエストイグジットポートとさらに結び付けられ、前記監視されたリクエストトラフィックは、前記リクエストイグジットポートで受信された少なくとも一つの終了リクエストをさらに含み、前記選択された階層は、前記少なくとも一つの終了リクエストを前記コンピューティング環境の他の隣り合う階層に提供し、
    前記コンテキストエージェントは、前記少なくとも一つの終了リクエストと前記少なくとも一つの開始リクエストとの間を関連付け、前記少なくとも一つの終了リクエストのリクエストコンテキストと関連するコンテキスト情報を、前記他の隣り合う階層と関連付けられたさらなるコンテキスト情報に送信する
    請求項1に記載の装置。
  3. 前記動的階層拡張は、前記選択された階層の階層コントロールポートとさらに結び付けられる
    請求項1に記載の装置。
  4. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを実行する処理部の優先度レベルをさらに変更する
    請求項3に記載の装置。
  5. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを実行する処理部の実行タイプをさらに変更する
    請求項3に記載の装置。
  6. 前記コンテキストエージェントは、前記リクエストエントリーポートでのキュー上の前記少なくとも一つの開始リクエストのオーダをさらに調整する
    請求項1又は3に記載の装置。
  7. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを処理する計算リソースを割り付けるために前記選択された階層をさらに指示する
    請求項1又は3に記載の装置。
  8. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを処理する計算リソースを否定するために前記選択された階層をさらに指示する
    請求項1又は3に記載の装置。
  9. 前記コンテキスト情報は、少なくとも、リクエストID、トランザクションID、リクエストクラス、コンテキスト関連データを含む
    請求項1に記載の装置。
  10. 前記コンテキスト関連データは、前記少なくとも一つの開始リクエストの前記リクエストコンテキストの全部を含む
    請求項9に記載の装置。
  11. 前記コンテキスト関連データは、前記少なくとも一つの開始リクエストの前記リクエストコンテキストの一部を含む
    請求項9に記載の装置。
  12. 前記コンテキスト関連データは、前記少なくとも一つの開始リクエストの前記リクエストコンテキストへの表示を含む
    請求項9に記載の装置。
  13. 前記コンテキストエージェントは、
    エージェント通信インターフェイスであって、前記動的階層拡張及び前記コンテキストエージェント間のメッセージを中継するエージェント通信インターフェイスと、
    エージェントメッセージモジュールであって、前記少なくとも一つの終了リクエストが前記他の隣り合う階層に送信される前記さらなるコンテキストエージェントを確認し、前記エージェントメッセージモジュールは、メッセージを用いて前記動的階層拡張とさらに通信する、そのようなエージェントメッセージモジュールと、
    コンテキストテーブルマネージャであって、前記選択された階層上で動作する少なくとも一つの作業単位を、前記作業単位が割り付けられる前記少なくとも一つの開始リクエストの前記リクエストコンテキストと関連付ける、といった参照テーブルを維持し、前記コンテキストテーブルは、前記少なくとも一つの開始リクエストと関連付けられた情報をさらに保存し、前記コンテキストテーブルマネージャは、前記コンテキストテーブルに保存された情報に基づく少なくとも一つの開始リクエストをさらに確認する、そのようなコンテキストテーブルマネージャと
    を含む請求項2に記載の装置。
  14. 前記コンテキストエージェントは、
    分類マネージャであって、前記受信されたコンテキスト情報に基づく前記少なくとも一つの開始リクエストの分類を実行し、前記分類マネージャは、前記少なくとも一つの開始リクエストをトランザクションの一部としてさらに確認する、そのような分類マネージャ
    をさらに含む請求項13に記載の装置。
  15. 前記コンテキストエージェントは、
    ポリシーマネージャであって、アクティブサービスクラスポリシーと、前記少なくとも一つの開始リクエストの前記分類とに基づく前記少なくとも一つの開始リクエストにサービスクラスポリシーを与えるポリシーマネージャ
    をさらに含む請求項13に記載の装置。
  16. 前記コンテキストエージェントは、
    エージェントログイベントハンドラであって、イベント記録、内部追跡、メッセージ作成、前記コンテキストエージェント内の稼動不規則の検出、を実行するエージェントログイベントハンドラ
    をさらに含む請求項13に記載の装置。
  17. 前記コンテキストエージェントは、
    エージェントアドミニストレータであって、情報を記録し、履歴データをコンテキストネットワーク管理サーバ(CNMS)に送信し、アクティブサービスクラスポリシー及び追加データを前記CNMSから受信するエージェントアドミニストレータ
    をさらに含む請求項13に記載の装置。
  18. 前記動的階層拡張は、
    動的階層拡張デーモンであって、前記少なくとも一つの開始リクエストが引き留められないレポートされたイベントと関連付けられた非同期処理を実行する動的階層拡張デーモンと、
    動的階層拡張メッセージモジュールであって、メッセージを用いて前記コンテキストエージェントと通信する動的階層拡張メッセージモジュールと、
    動的階層拡張通信インターフェイスであって、前記動的階層拡張及び前記コンテキストエージェント間のメッセージを中継する動的階層拡張通信インターフェイスと
    を含む請求項3に記載の装置。
  19. 前記動的階層拡張は、
    動的階層拡張アドミニストレータであって、前記動的階層拡張が、前記少なくとも一つの開始リクエストがどのように処理されるべきかに関するメッセージを受信することを可能とする動的階層拡張アドミニストレータ
    をさらに含む請求項18に記載の装置。
  20. 前記動的階層拡張は、
    動的階層拡張ログイベントハンドラであって、前記動的階層拡張のオペレーションに関する追跡情報と、前記動的階層拡張によって起こされた警告とを記録する動的階層拡張ログイベントハンドラ
    をさらに含む請求項18に記載の装置。
  21. 前記コンテキストエージェントは、前記選択された階層として同じホストマシーンに存在する
    請求項1に記載の装置。
  22. 前記動的階層拡張は、パフォーマンス、可用性、前記選択された階層からのエラーメタリックスを収集する
    請求項3に記載の装置。
  23. 多階層コンピューティング環境において選択された階層を監視するための装置であって、前記装置は、
    前記選択された階層と関連付けられるコンテキストエージェントであって、前記コンテキストエージェントは、少なくとも一つの他のコンテキストエージェントと結び付けられ、前記少なくとも一つの他のコンテキストエージェントのそれぞれは、前記コンピューティング環境のそれぞれ階層と関連付けられる、そのようなコンテキストエージェントと、
    動的階層拡張(DTE)であって、前記動的階層拡張は、前記コンテキストエージェント、及び前記選択された階層の少なくともリクエストエントリーポート及びリクエストイグジットポートと結び付けられ、前記動的階層拡張は、前記選択された階層を通過するリクエストトラフィックを少なくとも監視し、前記監視されたリクエストトラフィックは、前記リクエストエントリーポートで受信された少なくとも一つの開始リクエストと、前記リクエストイグジットポートでの少なくとも一つのそれぞれ終了リクエストとを含み、前記選択された階層は、前記少なくとも一つのそれぞれ終了リクエストを隣り合う階層に提供し、前記動的階層拡張は、前記少なくとも一つの開始リクエストのリクエストコンテキストを獲得し、前記動的階層拡張は、リクエスト情報及びコンテキスト情報を前記コンテキストエージェントに提供し、前記リクエスト情報は、前記監視されたリクエストトラフィックに含まれる各リクエストを少なくとも確認し、前記コンテキスト情報は、前記少なくとも一つの開始リクエストの前記獲得されたリクエストコンテキストと関連する、そのような動的階層拡張と
    を備え、
    前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを前記少なくとも一つの終了リクエストと関連付け、
    前記コンテキストエージェントは、前記少なくとも一つのそれぞれ終了リクエストのリクエストコンテキストと関連するコンテキスト情報を、前記隣り合う階層と関連付けられた他のコンテキストエージェントに提供する
    ことを特徴とする装置。
  24. 前記少なくとも一つの開始リクエストは、ユーザアプリケーションから受信したユーザリクエストである
    請求項23に記載の装置。
  25. 前記コンテキスト情報は、少なくとも、リクエストID、トランザクションID、リクエストクラス、コンテキスト関連データを含む
    請求項23に記載の装置。
  26. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを、前記コンテキスト情報に基づくリクエストクラスに分類する
    請求項23に記載の装置。
  27. 前記コンテキストエージェントは、階層仕様サービスクラスポリシーのセットを含み、前記階層仕様サービスクラスポリシーのそれぞれは、サービスクラスを前記選択された階層のためのリクエストクラスにマッピングし、
    アクティブサービスクラスポリシーは、現在実施されているサービスクラスマッピングにリクエストクラスを含み、
    前記コンテキストエージェントは、サービスクラスを、前記リクエストクラスに基づく前記少なくとも一つの開始リクエストと、前記階層仕様サービスクラスポリシーのセットにおける適切なアクティブサービスクラスポリシーとに与える
    請求項26に記載の装置。
  28. 前記コンテキストエージェントは、階層仕様サービスクラスポリシーのセットを含み、前記階層仕様サービスクラスポリシーのそれぞれは、サービスクラスを前記選択された階層のためのリクエストクラスにマッピングし、
    アクティブサービスクラスポリシーは、現在実施されているサービスクラスマッピングにリクエストクラスを含み、
    前記コンテキストエージェントは、サービスクラスを、前記リクエストクラスによって指定されたサービスクラスよりも異なる前記少なくとも一つの開始リクエストと、前記階層仕様サービスクラスポリシーのセットにおける適切なアクティブサービスクラスポリシーとに与える
    請求項26に記載の装置。
  29. 前記サービスクラスは、前記少なくとも一つの開始リクエストに割り付けられるべき優先度を含む
    請求項27又は28に記載の装置。
  30. 前記サービスクラスは、前記少なくとも一つの開始リクエストに割り付けられるべき中央処理装置パーセンテージを含む
    請求項27又は28に記載の装置。
  31. 前記サービスクラスは、前記少なくとも一つの開始リクエストに割り付けられるべきメモリを含む
    請求項27又は28に記載の装置。
  32. 前記サービスクラスは、入出力装置を前記少なくとも一つの開始リクエストに割り付け且つアクセスする優先度を含む
    請求項27又は28に記載の装置。
  33. 前記サービスクラスポリシーは、定期的に更新される
    請求項27又は28に記載の装置。
  34. 前記サービスクラスポリシーは、前記多階層コンピューティング環境のユーザによって定義される
    請求項27又は28に記載の装置。
  35. 前記コンテキストエージェントは、前記与えられたサービスクラスを前記リクエストコンテキストに加える
    請求項27又は28に記載の装置。
  36. 前記動的階層拡張は、前記選択された階層の階層コントロールポートとさらに結び付けられる
    請求項23に記載の装置。
  37. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを実行する処理部の優先度レベルをさらに変更する
    請求項36に記載の装置。
  38. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを実行する処理部の実行タイプをさらに変更する
    請求項36に記載の装置。
  39. 前記コンテキストエージェントは、前記リクエストエントリーポートでのキュー上の前記少なくとも一つの開始リクエストのオーダをさらに調整する
    請求項23又は36に記載の装置。
  40. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを処理する計算リソースを割り付けるために前記選択された階層をさらに指示する
    請求項23又は36に記載の装置。
  41. 前記コンテキストエージェントは、前記少なくとも一つの開始リクエストを処理する計算リソースを否定するために前記選択された階層をさらに指示する
    請求項23又は36に記載の装置。
  42. 前記動的階層拡張は、前記監視されたリクエストトラフィックに含まれる各リクエストにトランザクションIDを与える
    請求項23に記載の装置。
  43. 前記動的階層拡張は、前記監視されたリクエストトラフィックに含まれる各リクエストのリクエストIDを得る
    請求項23に記載の装置。
  44. 前記コンテキストエージェントは、
    エージェント通信インターフェイスであって、前記動的階層拡張及び前記コンテキストエージェント間のメッセージを中継するエージェント通信インターフェイスと、
    エージェントメッセージモジュールであって、前記少なくとも一つの終了リクエストが前記他の隣り合う階層に送信される前記他のコンテキストエージェントを確認し、前記エージェントメッセージモジュールは、メッセージを用いて前記動的階層拡張とさらに通信する、そのようなエージェントメッセージモジュールと、
    コンテキストテーブルマネージャであって、前記選択された階層上で動作する少なくとも一つの作業単位を、前記作業単位が割り付けられる前記少なくとも一つの開始リクエストの前記リクエストコンテキストと関連付ける、といった参照テーブルを維持し、前記参照テーブルは、コンテキストテーブルであり、前記コンテキストテーブルは、前記少なくとも一つの開始リクエストと関連付けられた情報をさらに保存し、前記コンテキストテーブルマネージャは、前記コンテキストテーブルに保存された情報に基づく少なくとも一つの開始リクエストをさらに確認する、そのようなコンテキストテーブルマネージャと
    分類マネージャであって、前記受信されたコンテキスト情報に基づく前記少なくとも一つの開始リクエストの分類を実行し、前記分類マネージャは、前記少なくとも一つの開始リクエストをトランザクションの一部としてさらに確認する、そのような分類マネージャと、
    ポリシーマネージャであって、アクティブサービスクラスポリシーと、前記少なくとも一つの開始リクエストの前記分類とに基づく前記少なくとも一つの開始リクエストにサービスクラスポリシーを与えるポリシーマネージャと
    を含む請求項23に記載の装置。
  45. 前記コンテキストエージェントは、
    エージェントログイベントハンドラであって、イベント記録、内部追跡、メッセージ作成、前記コンテキストエージェント内の稼動不規則の検出、を実行するエージェントログイベントハンドラ
    をさらに含む請求項44に記載の装置。
  46. 前記コンテキストエージェントは、
    エージェントアドミニストレータであって、情報を記録し、履歴データをコンテキストネットワーク管理サーバ(CNMS)に送信し、アクティブサービスクラスポリシー及び追加データを前記CNMSから受信するエージェントアドミニストレータ
    をさらに含む請求項44に記載の装置。
  47. 前記動的階層拡張は、
    動的階層拡張デーモンであって、前記少なくとも一つの開始リクエストが引き留められないレポートされたイベントと関連付けられた非同期処理を実行する動的階層拡張デーモンと、
    動的階層拡張メッセージモジュールであって、メッセージを用いて前記コンテキストエージェントと通信する動的階層拡張メッセージモジュールと、
    動的階層拡張通信インターフェイスであって、前記動的階層拡張及び前記コンテキストエージェント間のメッセージを中継する動的階層拡張通信インターフェイスと
    を含む請求項36に記載の装置。
  48. 前記動的階層拡張は、
    動的階層拡張アドミニストレータであって、前記動的階層拡張が、前記少なくとも一つの開始リクエストがどのように処理されるべきかに関するメッセージを受信することを可能とする動的階層拡張アドミニストレータ
    をさらに含む請求項47に記載の装置。
  49. 前記動的階層拡張は、
    動的階層拡張ログイベントハンドラであって、前記動的階層拡張のオペレーションに関する追跡情報と、前記動的階層拡張によって起こされた警告とを記録する動的階層拡張ログイベントハンドラ
    をさらに含む請求項47に記載の装置。
  50. 前記コンテキストエージェントは、前記選択された階層として同じホストマシーンに存在する
    請求項23に記載の装置。
  51. 前記動的階層拡張は、パフォーマンス、可用性、前記選択された階層からのエラーメタリックスを収集する
    請求項36に記載の装置。
  52. 複数の階層を含む多階層コンピューティング環境において、前記複数の階層の少なくとも選択され且つ監視された階層と関連付けられた、アプリケーションパフォーマンス管理のためのシステムであって、システムは、
    少なくとも二つの前記監視された階層のそれぞれにとって、それぞれ動的階層拡張が、前記監視された階層の少なくともリクエストエントリーポートと結び付けられ、前記動的階層拡張が、前記それぞれ監視された階層を通過するリクエストトラフィックを少なくとも監視し、前記監視されたリクエストトラフィックが、前記リクエストエントリーポートで受信された少なくとも一つの開始リクエストを含み、
    前記少なくとも二つの前記監視された階層のそれぞれにとって、それぞれコンテキストエージェントが、前記それぞれ動的階層拡張と結び付けられ、前記コンテキストエージェントが、前記それぞれ階層に直接結び付けられた階層と関連付けられた他の前記コンテキストエージェントと結び付けられ、前記それぞれコンテキストエージェントが、前記それぞれ動的階層拡張からリクエスト情報を受信し、前記リクエスト情報が、前記監視されたリクエストトラフィックに含まれる各リクエストを少なくとも確認し、前記それぞれコンテキストエージェントが、前記隣り合う階層と関連付けられた他のコンテキストエージェントから、前記少なくとも一つの開始リクエストと関連するコンテキスト情報をさらに受信し、前記少なくとも一つの開始リクエストのそれぞれにとって、前記それぞれコンテキストエージェントが、前記コンテキスト情報を、それぞれ、前記リクエスト情報と関連付ける
    ことを含むことを特徴とするシステム。
  53. 複数の階層を含む多階層コンピューティング環境において、前記複数の階層の少なくとも選択され且つ監視された階層と関連付けられた、アプリケーションパフォーマンス管理のためのシステムであって、システムは、
    少なくとも二つの前記監視された階層のそれぞれにとって、それぞれ動的階層拡張が、前記監視された階層の少なくともリクエストエントリーポート及びリクエストイグジットポートと結び付けられ、前記動的階層拡張が、前記それぞれ監視された階層を通過するリクエストトラフィックを少なくとも監視し、前記監視されたリクエストトラフィックが、前記リクエストエントリーポートで受信された少なくとも一つの開始リクエストと、前記リクエストイグジットポートでの少なくとも一つのそれぞれ終了リクエストとを含み、
    前記少なくとも二つの前記監視された階層のそれぞれにとって、それぞれコンテキストエージェントが、前記それぞれ動的階層拡張と結び付けられ、前記コンテキストエージェントが、前記それぞれ階層に直接結び付けられた階層と関連付けられた他の前記コンテキストエージェントと結び付けられ、前記それぞれコンテキストエージェントが、前記それぞれ動的階層拡張からリクエスト情報を受信し、前記リクエスト情報が、前記監視されたリクエストトラフィックに含まれる各リクエストを少なくとも確認し、前記それぞれコンテキストエージェントが、前記それぞれ動的階層拡張から、前記少なくとも一つの開始リクエストのリクエストコンテキストと関連するコンテキスト情報を受信し、前記少なくとも一つの開始リクエストのそれぞれにとって、前記それぞれコンテキストエージェントが、前記少なくとも一つの開始リクエストを前記少なくとも一つの終了リクエストと関連付け、前記それぞれコンテキストエージェントが、前記少なくとも一つのそれぞれ終了リクエストのリクエストコンテキストと関連するコンテキスト情報を、前記隣り合う階層と関連付けられた他のコンテキストエージェントに提供する
    ことを含むことを特徴とするシステム。
  54. 前記コンテキストエージェントと結び付けられたコンテキストネットワーク管理サーバ(CNMS)であって、前記CNMSが前記コンテキストエージェントから受信したパフォーマンスデータを少なくとも収集し且つ解析する、そのようなコンテキストネットワーク管理エージェント
    をさらに含む請求項52又は53に記載のシステム。
  55. 前記少なくとも一つの開始リクエストは、ユーザアプリケーションから受信したユーザリクエストである
    請求項52又は53に記載のシステム。
  56. 前記動的階層拡張は、前記それぞれ階層の少なくともリクエストイグジットポートとさらに結び付けられ、前記監視されたリクエストトラフィックは、前記リクエストイグジットポートで受信された少なくとも一つの終了リクエストをさらに含み、前記選択された階層は、前記少なくとも一つの終了リクエストを前記コンピューティング環境の他の隣り合う階層に提供し、
    前記それぞれコンテキストエージェントは、前記少なくとも一つの終了リクエストを前記少なくとも一つの開始リクエストと関連付け、前記少なくとも一つの終了リクエストのリクエストコンテキストと関連するコンテキスト情報を、前記他の隣り合う階層と関連付けられたさらなるコンテキストエージェントに送信する
    請求項52に記載のシステム。
  57. 前記CNMSと結び付けられたポリシーデータベースであって、前記ポリシーデータベースが少なくともサービスクラスポリシーを保存する、そのようなポリシーデータベースをさらに含む
    請求項54に記載のシステム。
  58. 前記CNMS及び前記ポリシーデータベースと結び付けられたスーパバイザワークステーションをさらに含む
    請求項57に記載のシステム。
  59. 前記CNMSは、アクティビティープロファイリングをさらに実行し、統合トランザクション、階層、システムレベルパフォーマンスメトリックス及び統計解析を含むアクティビティープロファイルを生成する
    請求項54に記載のシステム。
  60. 複数の階層を含む多階層コンピューティング環境において、前記複数の少なくとも選択され且つ監視された階層と関連付けられた、アプリケーションパフォーマンス管理のための方法であって、方法は、
    少なくとも一つの開始リクエストのリクエストコンテキストと関連するコンテキスト情報を受信し、前記コンテキスト情報が少なくともリクエストID及びトランザクションIDを含み、
    前記監視された階層を通過するリクエストトラフィックを監視し、前記監視されたリクエストトラフィックが前記少なくとも一つの開始リクエストを少なくとも含み、
    前記リクエストIDに基づく前記少なくとも一つの開始リクエストを確認し、
    前記少なくとも一つの開始リクエストを前記トランザクションIDに基づくトランザクションと関連付ける
    という手順を含むことを特徴とする方法。
  61. 複数の階層を含む多階層コンピューティング環境において、前記複数の少なくとも選択され且つ監視された階層と関連付けられた、アプリケーションパフォーマンス管理のための方法であって、方法は、
    前記監視された階層を通過するリクエストトラフィックを監視し、前記監視されたリクエストトラフィックが少なくとも一つの開始リクエスト及び少なくとも一つのそれぞれ終了リクエストを含み、前記選択された階層が前記少なくとも一つのそれぞれ終了リクエストを隣り合う階層に提供し、
    前記少なくとも一つの開始リクエストのリクエストコンテキストと関連するコンテキスト情報を決定し、
    前記監視されたリクエストトラフィックに含まれる各リクエストを確認し、
    前記少なくとも一つの開始リクエストを前記少なくとも一つの終了リクエストと関連付け、
    前記少なくとも一つの終了リクエストのリクエストコンテキストと関連するコンテキスト情報を、前記隣り合う階層と関連付けられた他のコンテキストエージェントに送信する
    という手順を含むことを特徴とする方法。
  62. 明細書に実質的に記載されあるいは何れかの図面に実質的に図示された請求項1〜51の何れか1項に記載の装置。
  63. 明細書に実質的に記載されあるいは何れかの図面に実質的に図示された請求項52〜59の何れか1項に記載のシステム。
  64. 明細書に実質的に記載されあるいは何れかの図面に実質的に図示された請求項60〜61の何れか1項に記載のアプリケーション。
JP2007514318A 2004-06-04 2005-03-31 多階層コンピューティング環境におけるパフォーマンス管理システム及びパフォーマンス管理方法 Pending JP2008502044A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US57680504P 2004-06-04 2004-06-04
PCT/IL2005/000361 WO2005119611A2 (en) 2004-06-04 2005-03-31 System and method for performance management in a multi-tier computing environment

Publications (2)

Publication Number Publication Date
JP2008502044A true JP2008502044A (ja) 2008-01-24
JP2008502044A5 JP2008502044A5 (ja) 2008-05-08

Family

ID=34981259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007514318A Pending JP2008502044A (ja) 2004-06-04 2005-03-31 多階層コンピューティング環境におけるパフォーマンス管理システム及びパフォーマンス管理方法

Country Status (11)

Country Link
US (3) US7805509B2 (ja)
EP (1) EP1603307B1 (ja)
JP (1) JP2008502044A (ja)
CN (1) CN100568193C (ja)
AT (1) ATE431668T1 (ja)
AU (1) AU2005249056B2 (ja)
CA (1) CA2503987C (ja)
DE (1) DE602005014415D1 (ja)
ES (1) ES2326538T3 (ja)
IL (1) IL167628A (ja)
WO (1) WO2005119611A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8930369B2 (en) 2011-03-14 2015-01-06 Fujitsu Limited Information processing apparatus, message classifying method and non-transitory medium for associating series of transactions
CN112615935A (zh) * 2020-12-25 2021-04-06 武汉华中数控股份有限公司 一种终端设备联网参考模型及其交互方法

Families Citing this family (176)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MXPA06004071A (es) * 2003-10-29 2006-06-27 Ibm Sistema de informacion, metodo de control de carga, programa de control de carga y medio de grabacion.
US7546308B1 (en) * 2004-09-17 2009-06-09 Symantec Operating Corporation Model and method of an n-tier quality-of-service (QoS)
US7769784B2 (en) * 2005-01-27 2010-08-03 International Business Machines Corporation System for autonomically improving performance of Enterprise Java Beans through dynamic workload management
US7406689B2 (en) * 2005-03-22 2008-07-29 International Business Machines Corporation Jobstream planner considering network contention & resource availability
US8280867B2 (en) * 2005-10-20 2012-10-02 Teradata Us, Inc. Identifying database request sources
US8510429B1 (en) 2006-01-19 2013-08-13 Sprint Communications Company L.P. Inventory modeling in a data storage infrastructure for a communication network
US20070189509A1 (en) * 2006-02-13 2007-08-16 Foody Daniel M Data path identification and analysis for distributed applications
US8291066B2 (en) * 2006-02-21 2012-10-16 Trading Systems Associates (Ts-A) (Israel) Limited Method and system for transaction monitoring in a communication network
US8166114B2 (en) 2006-02-21 2012-04-24 Strangeloop Networks, Inc. Asynchronous context data messaging
US8037127B2 (en) 2006-02-21 2011-10-11 Strangeloop Networks, Inc. In-line network device for storing application-layer data, processing instructions, and/or rule sets
US7937435B2 (en) * 2006-02-21 2011-05-03 Strangeloop Networks, Inc. Identifying, storing, and retrieving context data for a network message
US8892737B2 (en) * 2006-03-06 2014-11-18 Vmware, Inc. Network sniffer for performing service level management
US20070257354A1 (en) * 2006-03-31 2007-11-08 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Code installation decisions for improving aggregate functionality
US8316439B2 (en) * 2006-05-19 2012-11-20 Iyuko Services L.L.C. Anti-virus and firewall system
US20080005317A1 (en) * 2006-06-30 2008-01-03 International Business Machines Corporation Method and apparatus for cross-tier management in multi-tier computing system architecture
US7921075B2 (en) * 2006-09-29 2011-04-05 International Business Machines Corporation Generic sequencing service for business integration
US9514201B2 (en) 2006-10-13 2016-12-06 International Business Machines Corporation Method and system for non-intrusive event sequencing
US9274857B2 (en) 2006-10-13 2016-03-01 International Business Machines Corporation Method and system for detecting work completion in loosely coupled components
WO2008054948A1 (en) * 2006-10-31 2008-05-08 Nielsen Media Research, Inc. Methods and systems to retrieve information from data sources
WO2008101022A2 (en) * 2007-02-13 2008-08-21 The Nielsen Company (Us), Llc Methods and apparatus to reach through to business logic services
US8731998B2 (en) * 2007-03-01 2014-05-20 Sap Ag Three dimensional visual representation for identifying problems in monitored model oriented business processes
US9135075B2 (en) * 2007-03-09 2015-09-15 Hewlett-Packard Development Company, L.P. Capacity planning for computing systems hosting multi-tier application based on think time value and resource cost of composite transaction using statistical regression analysis
US8166157B2 (en) * 2007-03-23 2012-04-24 Fmr Llc Enterprise application performance monitors
US8504995B2 (en) * 2007-05-09 2013-08-06 Accenture Global Services Limited Process flow analysis based on processing artifacts
US8028090B2 (en) 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US20090043881A1 (en) * 2007-08-10 2009-02-12 Strangeloop Networks, Inc. Cache expiry in multiple-server environment
WO2009027961A2 (en) * 2007-08-27 2009-03-05 Correlsense Ltd. Apparatus and method for tracking transaction related data
JP5282908B2 (ja) * 2007-10-03 2013-09-04 日本電気株式会社 階層型負荷推定システム、方法およびプログラム
US8102876B2 (en) 2007-12-20 2012-01-24 British Telecommunications Plc Client/server adaptation scheme for communications traffic
US8892726B2 (en) * 2008-03-30 2014-11-18 Correlsense Ltd. Apparatus and method for tracking requests in a multi threaded multi tier computerized environment
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US8447831B1 (en) 2008-03-31 2013-05-21 Amazon Technologies, Inc. Incentive driven content delivery
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US8321568B2 (en) 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content management
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US8156243B2 (en) 2008-03-31 2012-04-10 Amazon Technologies, Inc. Request routing
US8533293B1 (en) 2008-03-31 2013-09-10 Amazon Technologies, Inc. Client side cache management
US8601090B1 (en) 2008-03-31 2013-12-03 Amazon Technologies, Inc. Network resource identification
US20090254707A1 (en) * 2008-04-08 2009-10-08 Strangeloop Networks Inc. Partial Content Caching
US9906620B2 (en) * 2008-05-05 2018-02-27 Radware, Ltd. Extensible, asynchronous, centralized analysis and optimization of server responses to client requests
JP5104529B2 (ja) * 2008-05-08 2012-12-19 富士通株式会社 分析支援プログラム、分析支援方法および分析支援装置
US7937619B2 (en) * 2008-05-30 2011-05-03 Red Hat, Inc. Fine grained failure detection in distributed computing
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US9912740B2 (en) 2008-06-30 2018-03-06 Amazon Technologies, Inc. Latency measurement in resource requests
US7925782B2 (en) 2008-06-30 2011-04-12 Amazon Technologies, Inc. Request routing using network computing components
US9418005B2 (en) 2008-07-15 2016-08-16 International Business Machines Corporation Managing garbage collection in a data processing system
US8793339B2 (en) * 2008-08-29 2014-07-29 Red Hat, Inc. Facilitating client server interaction
US8793398B2 (en) * 2008-08-29 2014-07-29 Red Hat, Inc. Facilitating client server interaction
US20100076812A1 (en) * 2008-09-24 2010-03-25 Bank Of America Corporation Business performance measurements
US20100111105A1 (en) * 2008-10-30 2010-05-06 Ken Hamilton Data center and data center design
US8122098B1 (en) 2008-11-17 2012-02-21 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
US8060616B1 (en) 2008-11-17 2011-11-15 Amazon Technologies, Inc. Managing CDN registration by a storage provider
US8732309B1 (en) 2008-11-17 2014-05-20 Amazon Technologies, Inc. Request routing utilizing cost information
US8521880B1 (en) 2008-11-17 2013-08-27 Amazon Technologies, Inc. Managing content delivery network service providers
US8065417B1 (en) 2008-11-17 2011-11-22 Amazon Technologies, Inc. Service provider registration by a content broker
US8073940B1 (en) 2008-11-17 2011-12-06 Amazon Technologies, Inc. Managing content delivery network service providers
US20100161344A1 (en) * 2008-12-12 2010-06-24 Dyson David S Methods and apparatus to prepare report requests
US8893156B2 (en) * 2009-03-24 2014-11-18 Microsoft Corporation Monitoring of distributed applications
US9391825B1 (en) * 2009-03-24 2016-07-12 Amazon Technologies, Inc. System and method for tracking service results
US8521851B1 (en) 2009-03-27 2013-08-27 Amazon Technologies, Inc. DNS query processing using resource identifiers specifying an application broker
US8412823B1 (en) 2009-03-27 2013-04-02 Amazon Technologies, Inc. Managing tracking information entries in resource cache components
US8756341B1 (en) 2009-03-27 2014-06-17 Amazon Technologies, Inc. Request routing utilizing popularity information
US8688837B1 (en) 2009-03-27 2014-04-01 Amazon Technologies, Inc. Dynamically translating resource identifiers for request routing using popularity information
US9549039B2 (en) 2010-05-28 2017-01-17 Radware Ltd. Accelerating HTTP responses in a client/server environment
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US8630229B2 (en) * 2009-07-06 2014-01-14 Intel Corporation Base station and method for reducing asynchronous interference in a multi-tier OFDMA overlay network
US9210050B2 (en) * 2009-07-09 2015-12-08 Centurylink Intellectual Property Llc System and method for a testing vector and associated performance map
US8397073B1 (en) 2009-09-04 2013-03-12 Amazon Technologies, Inc. Managing secure content in a content delivery network
US9167028B1 (en) * 2009-09-10 2015-10-20 AppDynamics, Inc. Monitoring distributed web application transactions
US8938533B1 (en) 2009-09-10 2015-01-20 AppDynamics Inc. Automatic capture of diagnostic data based on transaction behavior learning
US8533279B2 (en) 2009-09-23 2013-09-10 Trading Systems Associates (Ts-A) (Israel) Limited Method and system for reconstructing transactions in a communication network
US8433771B1 (en) * 2009-10-02 2013-04-30 Amazon Technologies, Inc. Distribution network with forward resource propagation
US20110167034A1 (en) * 2010-01-05 2011-07-07 Hewlett-Packard Development Company, L.P. System and method for metric based allocation of costs
US20110167033A1 (en) * 2010-01-05 2011-07-07 Strelitz David Allocating resources in a data warehouse
US8260763B2 (en) * 2010-01-15 2012-09-04 Hewlett-Packard Devlopment Company, L.P. Matching service entities with candidate resources
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US20110231482A1 (en) * 2010-03-22 2011-09-22 Strangeloop Networks Inc. Automated Optimization Based On Determination Of Website Usage Scenario
US9176783B2 (en) 2010-05-24 2015-11-03 International Business Machines Corporation Idle transitions sampling with execution context
US8843684B2 (en) 2010-06-11 2014-09-23 International Business Machines Corporation Performing call stack sampling by setting affinity of target thread to a current process to prevent target thread migration
US8799872B2 (en) 2010-06-27 2014-08-05 International Business Machines Corporation Sampling with sample pacing
US20130024494A1 (en) * 2011-06-13 2013-01-24 Steven Guarrieri Methods and systems for platform optimized design
US8904511B1 (en) * 2010-08-23 2014-12-02 Amazon Technologies, Inc. Virtual firewalls for multi-tenant distributed services
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US8577992B1 (en) 2010-09-28 2013-11-05 Amazon Technologies, Inc. Request routing management based on network components
US10097398B1 (en) 2010-09-28 2018-10-09 Amazon Technologies, Inc. Point of presence management in request routing
US8924528B1 (en) 2010-09-28 2014-12-30 Amazon Technologies, Inc. Latency measurement in resource requests
US8819283B2 (en) 2010-09-28 2014-08-26 Amazon Technologies, Inc. Request routing in a networked environment
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US8930513B1 (en) 2010-09-28 2015-01-06 Amazon Technologies, Inc. Latency measurement in resource requests
US8468247B1 (en) 2010-09-28 2013-06-18 Amazon Technologies, Inc. Point of presence management in request routing
US8938526B1 (en) 2010-09-28 2015-01-20 Amazon Technologies, Inc. Request routing management based on network components
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US8452874B2 (en) 2010-11-22 2013-05-28 Amazon Technologies, Inc. Request routing processing
US8510603B2 (en) * 2010-11-24 2013-08-13 Sap Ag Systems and methods providing an exception buffer to facilitate processing of event handler errors
US9391949B1 (en) 2010-12-03 2016-07-12 Amazon Technologies, Inc. Request routing processing
WO2012095839A2 (en) * 2011-01-10 2012-07-19 Optier Ltd. Systems and methods for performing online analytical processing
US8799904B2 (en) 2011-01-21 2014-08-05 International Business Machines Corporation Scalable system call stack sampling
WO2012101585A1 (en) 2011-01-28 2012-08-02 Strangeloop Networks, Inc. Prioritized image rendering based on position within a web page
US20120197787A1 (en) * 2011-01-31 2012-08-02 Bank Of America Corporation Mobile wallet experience for resolving conflicts between different financial institutions and payment vehicles
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US8473643B2 (en) * 2011-05-05 2013-06-25 Hitachi, Ltd. Method and apparatus of tier storage management awareness networking
US10157236B2 (en) 2011-05-23 2018-12-18 Radware, Ltd. Optimized rendering of dynamic content
US9785470B2 (en) * 2011-06-20 2017-10-10 Microsoft Technology Licensing, Llc Memory management model and interface for unmodified applications
US8732302B2 (en) 2011-07-15 2014-05-20 Inetco Systems Limited Method and system for monitoring performance of an application system
US11233709B2 (en) 2011-07-15 2022-01-25 Inetco Systems Limited Method and system for monitoring performance of an application system
CN102916906B (zh) * 2011-08-01 2016-06-29 华为技术有限公司 一种实现应用性能自适应的方法、装置及系统
WO2013038320A1 (en) 2011-09-16 2013-03-21 Strangeloop Networks, Inc. Mobile resource accelerator
US9378058B2 (en) * 2011-10-17 2016-06-28 Excalibur Ip, Llc Method and system for dynamic control of a multi-tier processing system
US9311598B1 (en) 2012-02-02 2016-04-12 AppDynamics, Inc. Automatic capture of detailed analysis information for web application outliers with very low overhead
US8904009B1 (en) 2012-02-10 2014-12-02 Amazon Technologies, Inc. Dynamic content delivery
US10021179B1 (en) 2012-02-21 2018-07-10 Amazon Technologies, Inc. Local resource delivery network
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US9525659B1 (en) 2012-09-04 2016-12-20 Amazon Technologies, Inc. Request routing utilizing point of presence load information
KR101389214B1 (ko) * 2012-09-04 2014-04-24 주식회사 엘지씨엔에스 원격 관리 시스템 및 방법
US9323577B2 (en) 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US9037705B2 (en) 2012-11-28 2015-05-19 Ca, Inc. Routing of performance data to dependent calculators
US9519803B2 (en) * 2012-11-30 2016-12-13 Intel Corporation Secure environment for graphics processing units
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US9338255B1 (en) 2013-03-14 2016-05-10 Dell Software Inc. System and method for correlating end-user experience data and backend-performance data
US9294391B1 (en) 2013-06-04 2016-03-22 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US9246773B2 (en) 2013-07-30 2016-01-26 Draios Inc. System, method, and graphical user interface for application topology mapping in hosted computing environments
US9432270B2 (en) 2013-07-30 2016-08-30 Draios Inc. Performance and security management of applications deployed in hosted computing environments
US10984175B2 (en) 2013-08-09 2021-04-20 Yottaa Inc. Systems and methods for dynamically modifying a requested web page from a server for presentation at a client
US9870349B2 (en) 2013-09-20 2018-01-16 Yottaa Inc. Systems and methods for managing loading priority or sequencing of fragments of a web object
US20160105347A1 (en) 2014-10-13 2016-04-14 AppFirst, Inc. Method of tracing a transaction in a network
CA2969210C (en) * 2014-12-01 2024-02-20 Informatica Llc Method, apparatus, and computer-readable medium for processing a message by a message broker system
US10091096B1 (en) 2014-12-18 2018-10-02 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10033627B1 (en) 2014-12-18 2018-07-24 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10460254B2 (en) * 2015-03-17 2019-10-29 Vmware, Inc. System and method for reducing state space in reinforced learning by using decision tree classification
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US9819567B1 (en) 2015-03-30 2017-11-14 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887931B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887932B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US10163083B2 (en) 2015-04-13 2018-12-25 Bank Of America Corporation Account activity management system
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US10616179B1 (en) 2015-06-25 2020-04-07 Amazon Technologies, Inc. Selective routing of domain name system (DNS) requests
RU2714726C2 (ru) 2015-06-30 2020-02-20 Закрытое акционерное общество "Лаборатория Касперского" Архитектура безопасности автоматизированных систем
US10419452B2 (en) 2015-07-28 2019-09-17 Sap Se Contextual monitoring and tracking of SSH sessions
US10015178B2 (en) 2015-07-28 2018-07-03 Sap Se Real-time contextual monitoring intrusion detection and prevention
US10097566B1 (en) 2015-07-31 2018-10-09 Amazon Technologies, Inc. Identifying targets of network attacks
US9774619B1 (en) 2015-09-24 2017-09-26 Amazon Technologies, Inc. Mitigating network attacks
US9742795B1 (en) 2015-09-24 2017-08-22 Amazon Technologies, Inc. Mitigating network attacks
US9794281B1 (en) 2015-09-24 2017-10-17 Amazon Technologies, Inc. Identifying sources of network attacks
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US9928153B2 (en) 2015-11-10 2018-03-27 International Business Machines Corporation Determining where bottlenecks occur in multi-threaded multi-path computing systems
US10257307B1 (en) 2015-12-11 2019-04-09 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10049051B1 (en) 2015-12-11 2018-08-14 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US10318450B2 (en) * 2016-07-01 2019-06-11 Intel Corporation Efficient context based input/output (I/O) classification
US9992086B1 (en) 2016-08-23 2018-06-05 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US10033691B1 (en) 2016-08-24 2018-07-24 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10469513B2 (en) 2016-10-05 2019-11-05 Amazon Technologies, Inc. Encrypted network addresses
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10609006B2 (en) * 2017-01-13 2020-03-31 Fortanix, Inc. Self-encrypting key management system
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US10503613B1 (en) 2017-04-21 2019-12-10 Amazon Technologies, Inc. Efficient serving of resources during server unavailability
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US10447648B2 (en) 2017-06-19 2019-10-15 Amazon Technologies, Inc. Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
US10810038B2 (en) 2017-09-22 2020-10-20 International Business Machines Corporation Accounting and enforcing non-process execution by container-based software receiving data over a network
US10545786B2 (en) 2017-09-22 2020-01-28 International Business Machines Corporation Accounting and enforcing non-process execution by container-based software transmitting data over a network
US10742593B1 (en) 2017-09-25 2020-08-11 Amazon Technologies, Inc. Hybrid content request routing system
US10382278B1 (en) * 2018-01-31 2019-08-13 EMC IP Holding Company LLC Processing platform with independent definition and mutual enforcement of operational and application policies
US10691493B1 (en) * 2018-01-31 2020-06-23 EMC IP Holding Company LLC Processing platform with distributed policy definition, enforcement and monitoring across multi-layer infrastructure
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system
US10931513B2 (en) * 2019-01-31 2021-02-23 Cisco Technology, Inc. Event-triggered distributed data collection in a distributed transaction monitoring system
CN112182557B (zh) * 2019-09-19 2022-05-03 中国科学院信息工程研究所 一种芯片级内置式的主动安全监控架构实现方法及电子装置
US11238459B2 (en) 2020-01-07 2022-02-01 Bank Of America Corporation Intelligent systems for identifying transactions associated with an institution impacted by an event
US11443320B2 (en) 2020-01-07 2022-09-13 Bank Of America Corporation Intelligent systems for identifying transactions associated with an institution impacted by an event using a dashboard

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5655081A (en) * 1995-03-08 1997-08-05 Bmc Software, Inc. System for monitoring and managing computer resources and applications across a distributed computing environment using an intelligent autonomous agent architecture
US5958010A (en) * 1997-03-20 1999-09-28 Firstsense Software, Inc. Systems and methods for monitoring distributed applications including an interface running in an operating system kernel
US6108700A (en) * 1997-08-01 2000-08-22 International Business Machines Corporation Application end-to-end response time measurement and decomposition
US6597684B1 (en) * 1997-12-24 2003-07-22 Nortel Networks Ltd. Distributed architecture and associated protocols for efficient quality of service-based route computation
US6748416B2 (en) * 1999-01-20 2004-06-08 International Business Machines Corporation Client-side method and apparatus for improving the availability and performance of network mediated services
US6636847B1 (en) * 1999-07-01 2003-10-21 Sandia Corporation Exhaustive search system and method using space-filling curves
US6621895B1 (en) * 1999-08-31 2003-09-16 Nortel Networks Limited Enhanced communication services for data networks
US7003781B1 (en) * 2000-05-05 2006-02-21 Bristol Technology Inc. Method and apparatus for correlation of events in a distributed multi-system computing environment
US6865153B1 (en) 2000-09-20 2005-03-08 Alcatel Stage-implemented QoS shaping for data communication switch
US20020078382A1 (en) * 2000-11-29 2002-06-20 Ali Sheikh Scalable system for monitoring network system and components and methodology therefore
US7720958B2 (en) * 2001-03-09 2010-05-18 International Business Machines Corporation Method and system for embedding correlated performance measurements for distributed application performance decomposition
US6823382B2 (en) * 2001-08-20 2004-11-23 Altaworks Corporation Monitoring and control engine for multi-tiered service-level management of distributed web-application servers
US7139551B2 (en) * 2002-01-19 2006-11-21 Sasken Communication Technologies Ltd. System and method for automatically downloading software applications to a remote terminal
US6993683B2 (en) * 2002-05-10 2006-01-31 Microsoft Corporation Analysis of pipelined networks
US7023843B2 (en) 2002-06-26 2006-04-04 Nokia Corporation Programmable scheduling for IP routers
CA2463562A1 (en) * 2004-04-07 2005-10-07 Alcatel Agent based router monitoring, diagnostic and maintenance

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8930369B2 (en) 2011-03-14 2015-01-06 Fujitsu Limited Information processing apparatus, message classifying method and non-transitory medium for associating series of transactions
CN112615935A (zh) * 2020-12-25 2021-04-06 武汉华中数控股份有限公司 一种终端设备联网参考模型及其交互方法
CN112615935B (zh) * 2020-12-25 2022-08-05 武汉华中数控股份有限公司 一种终端设备联网参考系统及其交互方法

Also Published As

Publication number Publication date
US8214495B2 (en) 2012-07-03
US20060015512A1 (en) 2006-01-19
US7805509B2 (en) 2010-09-28
EP1603307B1 (en) 2009-05-13
CN100568193C (zh) 2009-12-09
DE602005014415D1 (de) 2009-06-25
US20100312888A1 (en) 2010-12-09
CN101044462A (zh) 2007-09-26
IL167628A (en) 2010-11-30
AU2005249056B2 (en) 2009-07-09
EP1603307A3 (en) 2006-05-17
ES2326538T3 (es) 2009-10-14
AU2005249056A1 (en) 2005-12-15
ATE431668T1 (de) 2009-05-15
EP1603307A2 (en) 2005-12-07
CA2503987A1 (en) 2005-12-04
WO2005119611A2 (en) 2005-12-15
CA2503987C (en) 2015-12-01
WO2005119611A3 (en) 2006-07-27
US20120278482A1 (en) 2012-11-01

Similar Documents

Publication Publication Date Title
JP2008502044A (ja) 多階層コンピューティング環境におけるパフォーマンス管理システム及びパフォーマンス管理方法
US9300523B2 (en) System and method for performance management in a multi-tier computing environment
US11334543B1 (en) Scalable bucket merging for a data intake and query system
US11567960B2 (en) Isolated execution environment system monitoring
US20220269727A1 (en) Processing data using containerized state-free indexing nodes in a containerized scalable environment
US11294941B1 (en) Message-based data ingestion to a data intake and query system
US11003714B1 (en) Search node and bucket identification using a search node catalog and a data store catalog
US10984044B1 (en) Identifying buckets for query execution using a catalog of buckets stored in a remote shared storage system
US11650995B2 (en) User defined data stream for routing data to a data destination based on a data route
US11567993B1 (en) Copying buckets from a remote shared storage system to memory associated with a search node for query execution
US11275733B1 (en) Mapping search nodes to a search head using a tenant identifier
US11550847B1 (en) Hashing bucket identifiers to identify search nodes for efficient query execution
US11157497B1 (en) Dynamically assigning a search head and search nodes for a query
US11562023B1 (en) Merging buckets in a data intake and query system
KR101221205B1 (ko) Http 세션 작업부하를 특성화하기 위한 데이터를수집하는 방법 및 장치
US11620336B1 (en) Managing and storing buckets to a remote shared storage system based on a collective bucket size
US20090313273A1 (en) service level management system
US11715051B1 (en) Service provider instance recommendations using machine-learned classifications and reconciliation
US11663219B1 (en) Determining a set of parameter values for a processing pipeline
US12013895B2 (en) Processing data using containerized nodes in a containerized scalable environment
US20230385288A1 (en) User interface for customizing data streams and processing pipelines
US11809395B1 (en) Load balancing, failover, and reliable delivery of data in a data intake and query system
US11874691B1 (en) Managing efficient query execution including mapping of buckets to search nodes
EP3306471B1 (en) Automatic server cluster discovery
US11860940B1 (en) Identifying buckets for query execution using a catalog of buckets

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080319

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080319

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110624

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110922

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110930

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111024

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111031

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111121

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120127

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120427

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120509

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120528

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120604

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120627

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120725

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120817