JP2015092354A - 待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステム - Google Patents

待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステム Download PDF

Info

Publication number
JP2015092354A
JP2015092354A JP2014244827A JP2014244827A JP2015092354A JP 2015092354 A JP2015092354 A JP 2015092354A JP 2014244827 A JP2014244827 A JP 2014244827A JP 2014244827 A JP2014244827 A JP 2014244827A JP 2015092354 A JP2015092354 A JP 2015092354A
Authority
JP
Japan
Prior art keywords
active application
message
application component
latency
application
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
JP2014244827A
Other languages
English (en)
Inventor
テイトリン アリエル
Tseitlin Ariel
テイトリン アリエル
サドゥ プラヴィーン
Sadhu Praveen
サドゥ プラヴィーン
トンセ サドヒア
Tonse Sudhir
トンセ サドヒア
カマス プラディープ
Kamath Pradeep
カマス プラディープ
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.)
Netflix Inc
Original Assignee
Netflix Inc
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 Netflix Inc filed Critical Netflix Inc
Publication of JP2015092354A publication Critical patent/JP2015092354A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステムを提供する。
【解決手段】待ち時間監視アプリケーション164が、各アクティブアプリケーション構成要素を観測し、指定又は非指定間隔で、1つのアクティブアプリケーション構成要素223を選択し、選択されたアクティブアプリケーション構成要素から発せられる1つ以上のメッセージに待ち時間又はエラーメッセージを導入する。次に、待ち時間監視アプリケーション164は、影響を受けるアクティブアプリケーション構成要素に依存する、他のアクティブアプリケーション構成要素に対する待ち時間又はエラーメッセージの影響を測定する。故障サーバの、残りのネットワークアプリケーションに対する影響を観測することにより、プロバイダは、各構成要素が、分散計算基盤でいかなる待ち時間又はエラー状況にも耐えることを保証する。
【選択図】図2

Description

本発明の実施形態は、一般的には分散計算システム及び方法に関し、より具体的には、待ち時間を誘発することにより分散計算サービスの弾力性を評価することに関する。
多種多様な計算アプリケーションが、コンピュータネットワークを介してユーザに提供されている。多くの場合、ネットワーク化アプリケーションは、分散コンピュータシステム内の複数の対話する計算ノードを使用して提供し得る。ネットワーク化アプリケーションは、1つ以上の計算ノードで実行される1つ以上のネットワーク化アプリケーション構成要素として存在する。例えば、ユーザからウェブページ要求を受信するように構成されたウェブサーバ(分散計算システム内のあるノードで実行される)を使用して、ウェブサイトを提供し得る。要求はアプリケーションサーバ(分散計算システム内の別のノードで実行される)に渡すことができ、アプリケーションサーバは次に、要求を処理し、応答を生成し、応答はウェブサーバに返され、そして最終的にユーザに渡される。
ネットワーク化アプリケ−ションの別の例は、ネットワークを介してメディアタイトルへのアクセスを提供するために使用されるコンテンツ配信システムを含む。通常、コンテンツ配信システムは、アクセスサーバ及びコンテンツサーバ等の様々なサーバを含み得る。クライアントは、ゲームコンソール、計算システム、計算タブレット、モバイル電話、又はネットワークアウェアDVDプレーヤ等のコンテンツプレーヤを使用してサーバに接続し得る。コンテンツサーバは、コンテンツサーバからコンテンツプレーヤへのダウンロードに利用可能なファイル(又は「ストリーム」)を記憶する。各ストリームは、映画、テレビ番組、スポーツの試合、ユーザ生成コンテンツ、若しくは録画により捕捉された舞台若しくはライブイベント等の様々な形態のビデオ又は他のコンテンツのデジタル版を提供し得る。ユーザは、コンテンツリストが利用可能なウェブサーバに接続することによりサービスにアクセスする。特定のタイトルへの要求が受信されると、利用可能なコンテンツサーバへの接続を介してタイトルをクライアントシステムにストリーミングし得る。
上記のようなシステムでは、待ち時間及びエラーが、あるサーバで実行中のネットワーク化アプリケーション構成要素と、別のサーバで実行中の依存ネットワーク化アプリケーション構成要素との間の様々な通信路で発生し得る。これらの待ち時間又はエラー状況は、過負荷がかかるか、又はソフトウェア若しくはハードウェアの故障を受けたサーバ又はネットワーク装置に起因し得る。依存ネットワーク化アプリケーション構成要素は、標的アプリケーションとの通信路でのそのような待ち時間又はエラーに耐えることができない場合もある。その結果、依存ネットワーク化アプリケ−ション構成要素も同様に、他のネットワーク化アプリケーション構成要素への通信路に待ち時間又はエラーをもたらし、分散コンピュータシステム全体を通しての1つ以上のアプリケーション構成要素に潜在的に連鎖待ち時間、エラー状況、又は他の問題をもたらすおそれがある。
複数のネットワーク化アプリケーション構成要素にわたる上記のような相互待ち時間及びエラーは、複雑な分散コンピュータシステム内の待ち時間及びエラーを十分に正確にモデリングすることが難しいという点で、テストすることが難しい。テストシステムで十分な弾力性があるように見え得るネットワークアプリケーション構成要素は、それでもなお、分散コンピュータシステムに導入した場合に故障することがある。上記に示されるように、必要とされるのは、分散コンピュータシステムで実行中のアプリケーションの弾力性をテストするよりよい方法である。
本明細書に開示される本発明の一実施形態は、ネットワーク化アプリケ−ションの弾力性を評価するコンピュータ実行方法を提供する。この方法は、ネットワーク化アプリケーションが提供されるネットワーク内の複数のアクティブアプリケーション構成要素を識別するステップと、1つ以上の選択基準に基づいて、複数のアクティブアプリケーション構成要素から第1のアクティブアプリケーション構成要素を選択するステップと、所定の変更規則に従って、第1のアクティブアプリケーション構成要素により送信されるメッセージを変更するステップと、複数のアクティブアプリケーション構成要素に含まれる第2のアクティブアプリケ−ション構成要素を監視して、変更されたメッセージにより生じる第2のアクティブアプリケーション構成要素に対する影響を特定するステップとを含み得る。
他の実施形態は、開示される方法の1つ以上の態様並びに開示される方法の1つ以上の態様を実施するように構成されたシステムを処理ユニットが実行できるようにする命令を含むコンピュータ可読媒体を含むが、これに限定されない。
本発明の上記特徴を詳細に理解できるように、実施形態を参照することにより、上に要約した本発明のより詳細な説明を行うことができ、実施形態のうちのいくつかは添付図面に示される。しかし、添付図面が本発明の典型的な実施形態のみを示し、したがって、添付図面が本発明の範囲の限定としてみなされるべきではなく、本発明は、他の同等で有効な実施形態を許容することができることに留意されたい。
本発明の1つ以上の態様を実施するように構成された分散計算システムを示す。 本発明の一実施形態による待ち時間アプリケーションを含む管理サーバの図である。 本発明の一実施形態による分散計算システム内の2つのノードを示す。 本発明の一実施形態によるネットワーク化アプリケーションの弾力性を検証する方法を示す。
本発明の実施形態は、分散計算システム内の対話する計算要素の集まりを使用して提供されるネットワーク化アプリケーションの弾力性を検証する技術を提供する。そのような計算要素は、本明細書ではノードと呼ばれる。例えば、ネットワーク監視アプリケーション(以下、待ち時間アプリケーションと呼ばれる)は、特定のノードで実行されている標的ネットワーク化アプリケーション構成要素のインスタンスに関連付けられた通信路に待ち時間又はエラーを導入するように構成し得る。次に、待ち時間アプリケーションは、標的ネットワーク化アプリケーション構成要素に依存するシステムが、そのような待ち時間又はエラー状況が導入された後でもなお正しく機能する(又は優雅に退化する)ことができるか否かを判断し得る。したがって、待ち時間アプリケーションは、分散計算システム内の他のシステムに対する待ち時間又はエラー状況の影響を制御下で観測し得る。この手法は、様々な計算構成要素の位置並びにデータセンター内の物理的サーバの位置が未知であるクラウドに基づく計算環境において有用であり得る。
一実施形態では、待ち時間アプリケーションは、実行中の各アプリケーション構成要素を観測し、実行中のアプリケーション構成要素のうちの1つを非指定間隔で選択し、そのアプリケーション構成要素の通信路のうちの1つ以上に待ち時間又はエラーを導入する。選択されたアプリケーション構成要素は、本明細書では標的アプリケーション構成要素と呼ばれる。次に、待ち時間アプリケーションは、標的アプリケーション構成要素に依存するアプリケーション構成要素の挙動変化を観測する。
依存アプリケーション構成要素への影響を観測することにより、プロバイダは、各構成要素がそのような待ち時間又はエラーに耐えることができることを保証することができる。一実施形態では、待ち時間アプリケーションは、実稼働環境でアップデート又はパッチをアプリケーション構成要素又は他のソフトウェアモジュールに導入する前に、テスト環境で使用し得る。そうすることにより、アップデート又はパッチを実稼働環境に導入せずに、アップデート又はパッチの影響を評価することができる。別の実施形態では、待ち時間アプリケーションを実稼働環境で使用し得、システムがオンラインである間、待ち時間又はエラーが分散コンピュータシステムに導入される。したがって、様々な実施形態では、待ち時間アプリケーションは、本発明を用いなければ、実稼働システムが非意図的又は不要な依存性を生み出すようにアップグレードされ、パッチ適用され、又は他の様式で変更されるにつれ、時間の経過に伴って失われるおそれがある分散コンピュータシステム内での耐故障性要件を満たすのに役立つ。より一般には、本明細書に記載の待ち時間アプリケーションによりシステムの任意の論理群を定義し、テストし得る。
以下の説明では、本発明のより完全な理解を提供するために、多くの特定の詳細が記載される。しかし、これらの特定の詳細のうちの1つ以上なしで本発明を実施し得ることが当業者には明らかだろう。他の場合、周知の特徴については、本発明を曖昧にしないように説明しなかった。
さらに、本発明の特定の実施形態は、データ通信ネットワークを介して映画、音楽、テレビ番組、又はユーザ生成コンテンツをエンドユーザクライアント装置にストリーミングするために使用されるネットワーク化アプリケーションの例を使用して説明される。しかし、本発明の実施形態を、多種多様なネットワーク化アプリケーション又はサービスに関する個々のシステム故障に対する弾力性を検証するように適合し得ることを理解されたい。したがって、ストリーミングメディアサービスへの参照は単なる例示であり、限定ではない。
図1は、本発明の1つ以上の態様を実施するように構成された分散計算システム100を示す。示されるように、分散コンピュータシステム100は、複数の計算ノード102を含む分散計算基盤110(本明細書では「クラウド」と呼ばれる)に接続されたクライアント装置142を含む。クライアント装置142は、LAN(ローカルエリアネットワーク)、WAN(広域ネットワーク)、又はインターネット等のネットワーク120を介してクラウド110に接続し得る。クラウド110は、ネットワーク120を経由してREST(representational state transfer)等の標準メッセージングプロトコルを介して1つ以上の仮想計算サービスを提供する。仮想計算サービスの例としては、多くの他の種類のサービスの中でも特に、処理能力、記憶、及び関係データベースを挙げることができる。仮想計算サービスはネットワーク化アプリケーションを含み得、ネットワーク化アプリケーションでは、ネットワーク化アプリケーションの様々なアクティブアプリケーション構成要素が、互いに通信する複数のノードで実行される。例えば、ノード102(0)は、ネットワーク化アプリケーションの1つのアクティブアプリケーション構成要素を実行し得る。ノード102(0)はノード102(4)と通信し得、ノード102(4)は同じネットワーク化アプリケーションの第2のアクティブアプリケーション構成要素を実行し得る。ノード102(4)は、ノード102(2)、102(5)、102(N−1)と通信し得、これらの各ノードは、同じネットワーク化アプリケーションの第3のアクティブアプリケーション構成要素のインスタンスを実行し得る。
一実施形態では、クラウド110は、Amazon(登録商標)等のクラウドサービスプロバイダによりホストされる。クラウドサービスプロバイダは、世界中の物理的に異なる場所にある様々なデータセンターにノード102を収容し、ネットワーク120を介してクライアントがクラウドサービスにアクセスできるようにする。例えば、Amazon(登録商標)は、ハイパーテキスト転送プロトコル(http)等の一般的なトランスポートプロトコルを使用してインターネットを通してアクセス可能な、Amazon Simple Storage Service(商標)(S3)と呼ばれる仮想クラウドストレージソリューション並びにAmazon Elastic Compute Cloud(商標)(EC2)と呼ばれる仮想処理ソリューションをホストする。別の実施形態では、単一の組織が、クラウド110及びクライアント装置142の両方を私設ネットワークでホストし得る。
各ノード102は、プロセッサ(CPU)、メモリ、ネットワークインタフェースカード(NIC)、及びハードディスクドライブ、磁気テープドライブ、光ディスクドライブ、ドライブアレイ(例えば、RAID)等(図示せず)の1つ以上の不揮発性記憶装置を含む。各ノード102は、メモリに記憶され、CPUで実行されるオペレーティングシステム(例えば、Microsoft(登録商標)Windows(商標)、Linux(商標)、Unix(登録商標)等)並びに1つ以上のアプリケーションを含み得る。アプリケーションのうちのいくつかは、Apache(商標)Cassandraのような分散データベース管理システム又はApache(商標)Hadoopのような分散アプリケ−ションシステム等のソフトウェアフレームワークを様々なクラウドサービスアーキテクチャに提供し得る。一実施形態では、各ノード102はブレードサーバを備え、2つ以上のブレードサーバは、シャシ内に収容され、共通の電源及び冷却システム等の特定のリソースを共有する。
クライアント装置142も、プロセッサ(CPU)、メモリ、NIC、及び1つ以上の不揮発性記憶装置(図示せず)を含む。ノード102と同様に、クライアント装置142も、メモリに記憶され、CPUで実行されるオペレーティングシステム並びにクライアントアプリケーション144等の1つ以上のアプリケーションを含む。一実施形態では、クライアントコンピュータ142は、分散コンピュータシステム100を分析するために、データ分析者により維持され得る。クライアント装置142は、ネットワーク120を介して(クライアント装置142及びノード102のNICを通して)ノード102のうちの1つ以上と通信し得る。したがって、クライアントアプリケーション144は、クライアント装置142にネットワーク120を介して1つ以上のノード102と通信させることにより、クラウド110で実行されている1つ以上のネットワーク化アプリケーションにアクセスし得る。
管理サーバ162は、分散コンピュータシステム100の管理タスクを自律的に実行してもよく、又はシステム管理者により発行される1つ以上のコマンドに応答して管理タスクを実行してもよい。管理サーバ162は、ノード102のうちの1つを含め、プロセッサ、メモリ、記憶装置、及びネットワークインタフェース等の従来の構成要素を含む任意の計算装置であり得る。管理サーバ162は、グラフィカルユーザインタフェース又はコマンドラインインタフェースを生成し、システム管理者が、クラウド110の構成、監視、及びテストを含むが、これに限定されない様々な機能を実行できるようにする、待ち時間アプリケーション164等のソフトウェアアプリケーションを含み得る。管理サーバ162は、通信リンク130を介してノード102のうちの1つ以上と通信し得る。
待ち時間アプリケーション164は、管理サーバ162で実行されるように構成される。さらに後述するように、待ち時間アプリケーション164は、クラウド110内の待ち時間又はエラー状況の増大の1つ以上のシミュレーションをスケジュールする。待ち時間アプリケーションは、選択されたアクティブアプリケーション構成要素(本明細書では標的構成要素と呼ぶ)に関連付けられた指定の通信路に待ち時間又はエラー状況を導入する。
図2は、本発明の一実施形態による待ち時間アプリケーション164を含む管理サーバ162の図である。示されるように、管理サーバ162は、中央演算処理装置(CPU)205、ネットワークインタフェース215、相互接続220、メモリ225、及び記憶装置230を含むが、これに限定されない。管理サーバ162は、I/O装置212(例えば、キーボード、ディスプレイ、及びマウス装置)を管理サーバ162に接続するI/O装置インタフェース210を含むこともできる。
一般に、CPU205は、メモリ225に記憶されているプログラミング命令を検索して実行する。同様に、CPU205は、メモリ225にアプリケーションデータを記憶し、メモリ225に常駐するアプリケーションデータを検索する。相互接続220は、CPU205、I/O装置インタフェース210、記憶装置230、ネットワークインタフェース215、及びメモリ225の間でのプログラミング命令及びアプリケーションデータの伝送に役立つ。CPU205は、単一のCPU、複数のCPU、複数の処理コアを有する単一のCPU等の代表として含められる。メモリ225は一般に、ランダムアクセスメモリの代表として含まれる。記憶装置230はディスクドライブ記憶装置であり得る。単一のユニットとして示されるが、記憶装置230は、固定ディスクドライブ、フロッピー(登録商標)ディスクドライブ、テープドライブ、リムーバブルメモリカード、光学記憶装置、ネットワーク接続ストレージ(NAS)、又はストレージエリアネットワーク(SAN)等の固定及び/又はリムーバブル記憶装置の組合せであり得る。
例示的に、メモリ225は待ち時間アプリケーション164を含み、記憶装置230は監視ログ235を含む。示されるように、待ち時間アプリケーション164は、待ち時間構成要素223、復元モニタ227、及びシミュレーション監視パラメータ229を含む。上述したように、待ち時間アプリケーション164は、待ち時間又はエラー状況を定期的に選択して、ネットワーク化アプリケーションに関連付けられたアクティブネットワーク化アプリケーション構成要素に導入するように構成されるソフトウェアアプリケーションを提供し得る。ネットワーク化アプリケーション構成要素は、クラウド計算環境で実行されている分散計算システム100内のノード102又はプロバイダのデータセンター内のサーバで実行し得る。
一実施形態では、待ち時間構成要素223は、標的アクティブアプリケ−ション構成要素を選択し、アプリケーション構成要素に関連付けられた1つ以上の通信路において待ち時間又はエラー状況をシミュレーションする。待ち時間構成要素223は、監視パラメータ229に従ってシミュレーションを構成する。所与のシミュレーションを制御する監視パラメータ229は、待ち時間アプリケーション164により自動的に事前決定し得る。或いは、待ち時間アプリケーションは、グラフィカルインタフェース又はコマンドラインインタフェースを介してシステム管理者から1つ以上の監視パラメータ229を受信し得る。例えば、待ち時間アプリケーションは、シミュレーションが待ち時間モードで動作するか、それともエラーモードで動作するかに関連付けられた監視パラメータ229を設定し得る。待ち時間モードが指定される場合、待ち時間アプリケーションは、標的構成要素にメッセージを所定の時間量だけ遅延させる。或いは、指定量の時間ではなく、ランダムな遅延を導入し得る。エラーモードが指定される場合、待ち時間アプリケーションは、標的構成要素に、本来ならば予期されるメッセージの代わりにエラーメッセージを導入させる。例えば、指定されたユニフォームリソースロケータ(URL)に関連付けられた要求に応答して、待ち時間アプリケーションは、標的構成要素に、参照されたURLのウェブページではなく、404(「見つかりません(not found)」)エラー等のエラーメッセージを返させ得る。
シミュレーションに関連付けられた他の監視パラメータ229は、シミュレーションが実行をスケジュールされた回数、シミュレーションの開始時間、シミュレーションの持続時間、及び連続したシミュレーション実行の間隔を含むが、これに限定されない。待ち時間アプリケーション164は、選択された構成要素から発せられるすべてのメッセージが影響されるか、それともシステム管理者により指定される1つ以上のイベント記述子を満たすメッセージのみが影響されるかを決めることもできる。例えば、シミュレーションは、ユーザのメールアドレスを要求するメッセージのみに応答して待ち時間を導入するようにプログラムし得る。別の例では、シミュレーションは、標的構成要素から発せられるメッセージ総数のうちの特定の割合に影響するようにプログラムし得る。
標的アプリケーション構成要素が選択され、シミュレーションが開始されると、復元モニタ227は、標的アプリケーション構成要素に依存するアプリケーション構成要素の動作を観測し得る。復元モニタ227は、待ち時間及び他の情報を依存アプリケーション構成要素から収集し、次に、情報をログ235に記憶する。ログ235の内容は、監視パラメータ229により指定される情報を含むとともに、依存アプリケーション構成要素により作成されるログデータを含み得る。
図3は、本発明の一実施形態による分散計算システム内の2つのノード300を示す。示されるように、ノードはアプリケーション構成要素316、クライアントインタフェース312、及びサーバインタフェース314を含む。
アプリケーション構成要素316は、ネットワーク化アプリケーションに関連付けられた1つ以上の機能を提供する。アプリケーション構成要素316は、サーバ、クライアント、又はサーバ及びクライアントの両方として機能し得る。例えば、アプリケーション構成要素316(0)は、アプリケーション構成要素316(1)のサーバとして機能する。それに対応して、アプリケーション構成要素316(1)は、アプリケーション構成要素316(0)のクライアントとして機能する。さらに、アプリケーション構成要素316(0)、316(1)は、他のノード(図示せず)で実行中の他のアプリケーション構成要素のクライアント及びサーバとして機能し得る。
サーバインタフェース314(0)は、アプリケーション構成要素316(0)により送信又は受信されるサーバに基づくメッセージを途中で捕捉する。それに対応して、サーバインタフェース314(1)は、アプリケーション構成要素316(1)により送信又は受信されるサーバに基づくメッセージを途中で補足する。サーバインタフェース314は、データ圧縮/圧縮解除及び不正確にフォーマットされたメッセージのエラー又は例外処理を含むが、これに限定されない様々な機能をこれらのメッセージに対して実行する。例えば、サーバインタフェース314(0)は、メッセージをクライアントインタフェース312(1)から受信し、適切なフォーマットに関してメッセージをチェックし、次に、メッセージをアプリケーション構成要素316(0)に渡し得る。アプリケーション構成要素316(0)はメッセージを処理し、応答メッセージを生成する。アプリケーション構成要素316(0)は、応答メッセージをサーバインタフェース314(0)に送信する。サーバインタフェース314(0)は、1つ以上の機能を応答メッセージに対して実行し、次に、応答メッセージをクライアントインタフェース312(1)に送信する。サーバインタフェース314は、クライアントからのメッセージとサーバからの対応する応答メッセージとの間の待ち時間の測定等のテスト及び測定機能を提供するようにプログラムすることもできる。次に、サーバインタフェース314は、後に検索し評価するために、これらの測定を記憶し得る。
クライアントインタフェース312(0)は、アプリケーション構成要素316(0)により送信又は受信されるクライアントに基づくメッセージを途中で捕捉する。それに対応して、クライアントインタフェース312(1)は、アプリケーション構成要素316(1)により送信又は受信されるクライアントに基づくメッセージを途中で捕捉する。クライアントインタフェース312は、データ圧縮/圧縮解除、不正確にフォーマットされたメッセージのエラー又は例外処理、及びメッセージへの応答がサーバから受信されない場合のメッセージの送信再試行を含むが、これに限定されない様々な機能をこれらのメッセージに対して実行する。例えば、アプリケ−ション構成要素316(1)は、メッセージを生成し、アプリケーション構成要素316(0)に送信し得る。アプリケーション構成要素316(1)は、メッセージをクライアントインタフェース312(1)に送信する。クライアントインタフェース312(1)は、1つ以上の機能をメッセージに対して実行し、次に、メッセージをサーバインタフェース314(0)に送信する。上述したように、サーバインタフェース314(0)及びアプリケーション構成要素316(0)は、メッセージを処理し、応答メッセージを生成する。クライアントインタフェース312(1)は、応答メッセージを受信して処理し、応答メッセージをアプリケーション構成要素316(1)に送信する。クライアントインタフェース312は、メッセージと対応する応答メッセージとの間の待ち時間の測定等のテスト及び測定機能を提供するようにプログラムすることもできる。次に、クライアントインタフェース312は、後に検索して評価するために、これらの測定を記憶し得る。
上述したように、管理サーバ162は、構成機能中、監視機能中、及びテスト機能中、通信リンク130を介してノード102のうちの1つ以上と通信する。待ち時間アプリケーション164は、通信リンク130を使用して、シミュレーションを構成し、シミュレーションの実行を開始し、シミュレーションから生じるメトリックを収集し得る。特に、待ち時間アプリケーション164は、クライアントインタフェース312及びサーバインタフェース314内のパラメータを設定して、メッセージが様々なアプリケーション構成要素316間で渡される際、メッセージに待ち時間又はエラー状況を導入する。例えば、待ち時間アプリケーション164は、サーバインタフェース314(0)内のパラメータを設定し、所定の期間だけアプリケーション構成要素316(0)に送信されるか、又はアプリケーション構成要素316(0)から送信されるメッセージを遅延させて、待ち時間の増大を導入し得る。別の例では、待ち時間アプリケーション164は、サーバインタフェース314(0)内のパラメータを設定して、メッセージを、元のメッセージとは異なるエラーメッセージと置換し得る。待ち時間アプリケーション164は、サーバインタフェース314(0)を通るすべてのメッセージ又はメッセージのうちの特定の割合を変更するようにサーバインタフェース314(0)を構成し得る。或いは、待ち時間アプリケーション164は、特定のユニフォームリソースロケータ(URL)へのアクセスを指定するメッセージを含むが、これに限定されない1つ以上の基準を満たすメッセージを変更するようにサーバインタフェース314(0)を構成し得る。待ち時間アプリケーション164は、サーバインタフェース314(0)に関して上述したのと同様に、クライアント312(0)のパラメータを設定することもできる。
シミュレーションにスケジュールされた時間に達すると、待ち時間アプリケーション164は、アプリケ−ション構成要素316(0)(標的アプリケーション構成要素)を選択し、シミュレーションの設定に従ってパラメータをクライアントインタフェース312(0)及びサーバインタフェース314(0)に書き込み、シミュレーションを開始する。シミュレーション中、標的アプリケーション構成要素316(0)に依存するアプリケーション構成要素は、シミュレーションにより導入される待ち時間又はエラー状況により、待ち時間の増大、エラー状況、又は他の問題を経験し得る。依存アプリケーション構成要素は、標的アプリケーション構成要素316(0)との直接接続(直接依存性)を有し得る。或いは、依存アプリケーション構成要素は、1つ以上のアプリケーション構成要素を通して標的アプリケーション構成要素316(0)との接続(間接的依存性)を有し得る。シミュレーションがスケジュールされた時間期間にわたって実行されると、待ち時間アプリケーション164は、クライアントインタフェース312(0)及びサーバインタフェース314(0)内のパラメータを元の演算値に復元し、シミュレーションは終了する。待ち時間アプリケーション164は、標的アプリケーション構成要素316(0)により直接又は間接的に影響を受けるアプリケーション構成要素に関連付けられたクライアントインタフェース312及びサーバインタフェース314に問い合わせることにより、待ち時間情報及び他のメトリックを収集する。待ち時間アプリケーション164は、システム管理者による後の分析のためにメトリックを記憶する。
図4は、本発明の一実施形態によるネットワーク化アプリケーションの弾力性を検証する方法400を示す。方法ステップ400は図1〜図3のシステムと併せて説明されるが、方法ステップ400を任意の順序で実行するように構成される任意のシステムが本発明の範囲内にあることを当業者は理解するだろう。
方法400はステップ402において開始され、待ち時間アプリケーション164は、シミュレーションのモードが待ち時間モードであるか否かを判断する。シミュレーションのモードが待ち時間モードである場合、方法はステップ404に進み、待ち時間アプリケーション164が、待ち時間モードをシミュレーションに設定し、シミュレーションに関連付けられる遅延時間を設定する。シミュレーション中、選択メッセージが、遅延時間に関連する増大した遅延を受け、ここで、遅延時間は、実際の遅延時間、最大遅延時間、又は平均遅延時間を表し得るが、これに限定されない。ステップ402に戻り、シミュレーションのモードが待ち時間モードではない場合、シミュレーションのモードはエラーモードである。方法400はステップ406に進み、待ち時間アプリケーション164がエラーモードを設定する。エラーモードシミュレーションでは、選択メッセージが、適切なメッセージ応答ではなくエラーメッセージを返す。
ステップ404又は406のいずれかから、方法400はステップ408に進み、待ち時間アプリケーション164は、すべてのメッセージではなく、特定のメッセージタイプが待ち時間の増大又はエラー状況を受けるように、シミュレーションに関連付けられた1つ以上のイベント記述子を設定し得る。例えば、シミュレーションは、ユーザのメールアドレスを要求するメッセージに対してのみ又指定されたユニフォームリソースロケータ(URL)へのアクセスを要求するメッセージに対してのみ、待ち時間又はエラー状況を導入し得る。イベント記述子が設定されない場合、アプリケーション構成要素により送信されるすべてのメッセージは、待ち時間の増大又はエラー応答を受ける。ステップ410において、待ち時間アプリケーション164はシミュレーションの頻度及び持続時間を設定する。例えば、シミュレーションは、10分の持続時間で、1回、定期的に(1週間に1回等)、又はランダムな間隔で行われるようにスケジュールし得る。ステップ412において、待ち時間アプリケーション164は、標的アプリケーションに依存するアプリケーションセットを特定する。依存アプリケーションは、標的アプリケーションに直接依存し得、その場合、依存アプリケーションは標的アプリケーションとの直接通信リンクを有する。或いは、依存アプリケーションは標的アプリケーションに間接的に依存し得、その場合、依存アプリケーションは、1つ以上の介在アプリケーションを介して標的アプリケーションにより影響を受け得る。ステップ414において、待ち時間アプリケーション164は、上述したようなモード、任意の適切なイベント記述子、及び頻度を含むシミュレーションスケジュールを保存する。
ステップ416において、待ち時間アプリケーション164は、シミュレーション実行時間に達するまで待つ。シミュレーション実行時間に達すると、方法400はステップ418に進み、待ち時間アプリケーション164は、前に保存されたシミュレーションに従ってクライアントインタフェース312又はサーバインタフェース314内のシミュレーション属性を設定する。ステップ420において、待ち時間アプリケーション164は、分散コンピュータシステム100内の観測された待ち時間の記録を開始する。特に、待ち時間アプリケーション164は、標的アプリケーションに直接又は間接的に依存するアプリケーションが受ける待ち時間を記録する。ステップ422において、待ち時間アプリケーション164は、シミュレーション持続時間が切れるのを待つ。ステップ424において、待ち時間アプリケーション164は、シミュレーション前の元の値に従ってクライアントインタフェース312又はサーバインタフェース314内のシミュレーション属性をリセットする。ステップ426において、待ち時間アプリケーション164は、シミュレーションから記録された結果を収集する。待ち時間アプリケーション164は、関係データベース、リポート、又は一連のグラフ等の任意の技術的に実現可能な様式で収集結果を編成し得る。次に、方法400は終了する。
要約すると、ネットワーク化アプリケーションの弾力性は、待ち時間又はエラー状況を様々な通信リンクに導入することにより、分散コンピュータシステム100内で評価される。待ち時間アプリケーション164は、特定の標的アプリケーションに関連付けられた待ち時間の増大又はエラー状況を引き起こすシミュレーションをスケジュールするように構成される。一実施形態では、待ち時間アプリケーション164は、各アクティブアプリケーション構成要素を観測し、指定間隔又は非指定間隔で1つのアクティブアプリケーション構成要素を選択し、選択されたアクティブアプリケーション構成要素から発せられる1つ以上のメッセージに待ち時間又はエラーメッセージを導入する。次に、待ち時間アプリケーション164は、影響を受けるアクティブアプリケーション構成要素に依存する他のアクティブアプリケーション構成要素への待ち時間又はエラーメッセージの影響を測定する。
有利には、待ち時間又はエラーシミュレーションからの結果は、ネットワーク化アプリケーションに関連付けられた1つ以上のアプリケーション構成要素の弾力性の特定に有用であり得る。待ち時間及びエラー状況をシミュレーションに導入し、続けて、依存構成要素への影響を測定することにより、待ち時間アプリケーション164により収集された情報は、システム管理者がネットワーク化アプリケーション内の様々な構成要素を向上させて、待ち時間増大又はエラー状況の期間中の弾力性を高めるのに役立ち得る。
上記は本発明の実施形態を対象とするが、本発明の基本範囲から逸脱せずに、本発明の他の実施形態及びさらなる実施形態を考案し得る。例えば、本発明の態様は、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組合せで実施し得る。本発明の一実施形態は、コンピュータシステムと併用されるプログラム製品として実施し得る。プログラム製品のプログラムは、実施形態(本明細書に記載される方法を含む)の機能を定義し、様々なコンピュータ可読記憶媒体内に含むことができる。例示的なコンピュータ可読記憶媒体は、(i)情報が永久的に記憶される不揮発性記憶媒体(例えば、CD−ROMドライブにより読み取り可能なCD−ROMディスク等のコンピュータ内の読み取り専用メモリ装置、フラッシュメモリ、ROMチップ、又は任意のタイプの固体状態不揮発性半導体メモリ)と、(ii)変更可能な情報が記憶される書き込み可能記憶媒体(例えば、ディスケットドライブ内の「フロッピー」ディスク、又はハードディスクドライブ、又は任意のタイプの固体状態ランダムアクセス半導体メモリ)とを含むが、これらに限定されない。そのようなコンピュータ可読記憶媒体は、本発明の機能を指示するコンピュータ可読命令を有する場合、本発明の実施形態である。
上記に鑑みて、本発明の範囲は以下の特許請求の範囲により決定される。
100 分散計算システム
102、300 計算ノード
110 クラウド
120 ネットワーク
130 通信リンク
142 クライアント装置
144 クライアントアプリケーション
162 管理サーバ
164 待ち時間アプリケーション
205 中央演算処理装置
210 I/O装置インタフェース
212 I/O装置
215 ネットワークインタフェース
220 相互接続
223 待ち時間構成要素
225 メモリ
227 復元モニタ
229 シミュレーション監視パラメータ
230 記憶装置
235 監視ログ
312 クライアントインタフェース
314 サーバインタフェース
316 アプリケーション構成要素
400 ネットワーク化アプリケーションの弾力性を検証する方法

Claims (11)

  1. ネットワーク化アプリケーションの弾力性を検証するコンピュータ実行方法において、
    前記ネットワーク化アプリケーションが提供されるネットワーク内の複数のアクティブアプリケーション構成要素を識別するステップと、
    1つ以上の選択基準に基づいて、前記複数のアクティブアプリケーション構成要素から第1のアクティブアプリケーション構成要素を選択するステップと、
    所定の変更規則に従って、前記第1のアクティブアプリケーション構成要素により送信されるメッセージを変更するステップであって、前記メッセージが、ネットワーク管理者により指定される1つ以上のイベント記述子を満たす要求に対する応答であるステップと、
    前記複数のアクティブアプリケーション構成要素に含まれる第2のアクティブアプリケ−ション構成要素を監視して、前記変更されたメッセージにより生じる前記第2のアクティブアプリケーション構成要素に対する影響を特定するステップと、
    を含むことを特徴とする、コンピュータ実行方法。
  2. 変更するステップが、前記メッセージの送信を遅延させることを含むことを特徴とする、請求項1に記載の方法。
  3. 変更するステップが、前記メッセージをエラーメッセージで置換することを含むことを特徴とする、請求項1または2に記載の方法。
  4. 前記メッセージが、前記第2のアクティブアプリケーション構成要素以外の前記複数のアクティブアプリケーション構成要素に含まれる任意のアクティブアプリケーション構成要素から受信されるメッセージへの応答を含むことを特徴とする、請求項1から3のいずれか1項に記載の方法。
  5. 前記1つ以上のイベント記述子が、指定されたユニフォームリソースロケータ(URL)に関連付けられたアクセス動作を記述することを特徴とする、請求項1から4のいずれか1項に記載の方法。
  6. 1つ以上のログエントリを作成して、前記メッセージの変更に起因する前記第2のアクティブアプリケーション構成要素に対する影響を記録するステップをさらに含むことを特徴とする、請求項1から5のいずれか1項に記載の方法。
  7. 処理ユニットにより実行されると、ネットワーク化アプリケーションの柔軟性を検証する動作を前記処理ユニットに実行させる命令を含むコンピュータ可読記憶媒体において、前記動作が、
    前記ネットワーク化アプリケーションが提供されるネットワーク内の複数のアクティブアプリケーション構成要素を識別するステップと、
    1つ以上の選択基準に基づいて、前記複数のアクティブアプリケーション構成要素から第1のアクティブアプリケーション構成要素を選択するステップと、
    所定の変更規則に従って、前記第1のアクティブアプリケーション構成要素により送信されるメッセージを変更するステップであって、前記メッセージが、ネットワーク管理者により指定される1つ以上のイベント記述子を満たす要求に対する応答であるステップと、
    前記複数のアクティブアプリケーション構成要素に含まれる第2のアクティブアプリケ−ション構成要素を監視して、前記変更されたメッセージにより生じる前記第2のアクティブアプリケーション構成要素に対する影響を特定するステップと、
    を含むことを特徴とする、コンピュータ可読記憶媒体。
  8. 前記メッセージが、ネットワーク管理者により指定される1つ以上のイベント記述子を満たす要求に対する応答であることを特徴とする、請求項7に記載のコンピュータ可読記憶媒体。
  9. 前記動作が、1つ以上のログエントリを作成して、前記メッセージの変更に起因する前記第2のアクティブアプリケーション構成要素に対する影響を記録するステップをさらに含むことを特徴とする、請求項7または8に記載のコンピュータ可読記憶媒体。
  10. プロセッサと、
    前記プロセッサにより実行されると、ネットワーク化アプリケーションの柔軟性を検証する動作を実行する命令を含むメモリと、
    を備えるシステムにおいて、前記動作が、
    前記ネットワーク化アプリケーションが提供されるネットワーク内の複数のアクティブアプリケーション構成要素を識別すること、
    1つ以上の選択基準に基づいて、前記複数のアクティブアプリケーション構成要素から第1のアクティブアプリケーション構成要素を選択すること、
    所定の変更規則に従って、前記第1のアクティブアプリケーション構成要素により送信されるメッセージを変更することであって、前記メッセージが、ネットワーク管理者により指定される1つ以上のイベント記述子を満たす要求に対する応答であること、及び
    前記複数のアクティブアプリケーション構成要素に含まれる第2のアクティブアプリケ−ション構成要素を監視して、前記変更されたメッセージにより生じる前記第2のアクティブアプリケーション構成要素に対する影響を特定すること、
    を含むことを特徴とする、システム。
  11. ネットワーク化アプリケーションの弾力性を検証するコンピュータ実行方法において、
    前記ネットワーク化アプリケーションが提供されるネットワーク内の複数のアクティブアプリケーション構成要素を識別するステップと、
    1つ以上の選択基準に基づいて、前記複数のアクティブアプリケーション構成要素から第1のアクティブアプリケーション構成要素を選択するステップと、
    所定の変更規則に従って、前記第1のアクティブアプリケーション構成要素により送信されるメッセージを変更するステップであって、前記メッセージをエラーメッセージで置換することを含むステップと、
    前記複数のアクティブアプリケーション構成要素に含まれる第2のアクティブアプリケ−ション構成要素を監視して、前記変更されたメッセージにより生じる前記第2のアクティブアプリケーション構成要素に対する影響を特定するステップと、
    を含むことを特徴とする、コンピュータ実行方法。
JP2014244827A 2012-04-12 2014-12-03 待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステム Pending JP2015092354A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/445,862 US9015289B2 (en) 2012-04-12 2012-04-12 Method and system for evaluating the resiliency of a distributed computing service by inducing a latency
US13/445,862 2012-04-12

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013080302A Division JP2013232187A (ja) 2012-04-12 2013-04-08 待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステム

Publications (1)

Publication Number Publication Date
JP2015092354A true JP2015092354A (ja) 2015-05-14

Family

ID=48095650

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2013080302A Pending JP2013232187A (ja) 2012-04-12 2013-04-08 待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステム
JP2014244827A Pending JP2015092354A (ja) 2012-04-12 2014-12-03 待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2013080302A Pending JP2013232187A (ja) 2012-04-12 2013-04-08 待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステム

Country Status (8)

Country Link
US (2) US9015289B2 (ja)
EP (1) EP2650791B1 (ja)
JP (2) JP2013232187A (ja)
KR (1) KR101478698B1 (ja)
CN (1) CN103377077B (ja)
AU (1) AU2013202560B2 (ja)
CA (1) CA2810869C (ja)
DK (1) DK2650791T3 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022504087A (ja) * 2018-10-12 2022-01-13 インターナショナル・ビジネス・マシーンズ・コーポレーション クラウド・マイクロサービス埋め込み用自動チューナ

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015289B2 (en) * 2012-04-12 2015-04-21 Netflix, Inc. Method and system for evaluating the resiliency of a distributed computing service by inducing a latency
GB2502571A (en) * 2012-05-31 2013-12-04 Ibm Modifying the lifespan of metrics in response to detecting a fault
US9182949B2 (en) * 2013-03-15 2015-11-10 Imagine Communications Corp. Systems and methods for controlling branch latency within computing applications
US9519557B2 (en) * 2014-07-11 2016-12-13 Microsoft Technology Licensing, Llc Compliance testing through sandbox environments
US9692665B2 (en) * 2014-07-30 2017-06-27 Microsoft Technology Licensing, Llc Failure analysis in cloud based service using synthetic measurements
US9444708B2 (en) * 2014-07-30 2016-09-13 Microsoft Technology Licensing, Llc Detection of outage in cloud based service using synthetic measurements and anonymized usage data
US9436553B2 (en) * 2014-08-04 2016-09-06 Microsoft Technology Licensing, Llc Recovering usability of cloud based service from system failure
US9747153B2 (en) * 2015-06-22 2017-08-29 Microsoft Technology Licensing, Llc Resilience as a service
US10212034B1 (en) * 2015-09-24 2019-02-19 Amazon Technologies, Inc. Automated network change management
US11093836B2 (en) * 2016-06-15 2021-08-17 International Business Machines Corporation Detecting and predicting bottlenecks in complex systems
US10387231B2 (en) * 2016-08-26 2019-08-20 Microsoft Technology Licensing, Llc Distributed system resiliency assessment using faults
US10320957B2 (en) 2016-09-01 2019-06-11 International Business Machines Corporation Increasing data resiliency operations based on identifying bottleneck operators
US10866851B2 (en) * 2016-09-28 2020-12-15 Netflix, Inc. Determining the failure resiliency of a service in a distributed computing system
US10691516B2 (en) * 2017-04-05 2020-06-23 International Business Machines Corporation Measurement and visualization of resiliency in a hybrid IT infrastructure environment
US11234157B2 (en) * 2019-04-08 2022-01-25 T-Mobile Usa, Inc. Network latency aware mobile edge computing routing
CN110427329B (zh) * 2019-08-13 2023-04-25 杭州有赞科技有限公司 一种数据库sql性能数据的采集方法及系统
US11223552B1 (en) 2021-01-08 2022-01-11 Microsoft Technology Licensing, Llc Aggregation-based determination of cloud computing service resiliency to chaos events
US11921604B2 (en) * 2021-10-28 2024-03-05 Red Hat, Inc. Evaluating system recovery using emulated production systems

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225707A (ja) * 1994-02-10 1995-08-22 Fujitsu Ltd アプリケーションのテスト方法及びそのテスト支援装置
WO2012040241A1 (en) * 2010-09-20 2012-03-29 Netflix, Inc. Validating the resiliency of networked applications

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3571121B2 (ja) 1995-08-09 2004-09-29 ヤンマー農機株式会社 耕耘装置
US6618389B2 (en) * 1999-11-22 2003-09-09 Worldcom, Inc. Validation of call processing network performance
US7240364B1 (en) * 2000-05-20 2007-07-03 Ciena Corporation Network device identity authentication
US7336613B2 (en) * 2000-10-17 2008-02-26 Avaya Technology Corp. Method and apparatus for the assessment and optimization of network traffic
US7089456B2 (en) 2002-06-03 2006-08-08 Honeywell International, Inc Error response test system and method using test mask variable
US7334222B2 (en) 2002-09-11 2008-02-19 International Business Machines Corporation Methods and apparatus for dependency-based impact simulation and vulnerability analysis
EP1678888B1 (en) * 2003-08-21 2010-02-10 Vidiator Enterprises Inc. Quality of experience (qoe) metrics for wireless communication networks
US7809982B2 (en) * 2004-10-01 2010-10-05 Lockheed Martin Corporation Reconfigurable computing machine and related systems and methods
US8116731B2 (en) * 2007-11-01 2012-02-14 Finsphere, Inc. System and method for mobile identity protection of a user of multiple computer applications, networks or devices
JPWO2010131425A1 (ja) 2009-05-14 2012-11-01 日本電気株式会社 逐次発生データ解析装置、システム、方法、及びプログラム
US8073946B1 (en) * 2009-08-17 2011-12-06 Google Inc. Monitoring of metrics to identify abnormalities in a large scale distributed computing environment
US8397138B2 (en) * 2009-12-08 2013-03-12 At & T Intellectual Property I, Lp Method and system for network latency virtualization in a cloud transport environment
GB2477921A (en) * 2010-02-17 2011-08-24 Sidonis Ltd Analysing a network using a network model with simulated changes
US8171137B1 (en) * 2011-05-09 2012-05-01 Google Inc. Transferring application state across devices
US9015289B2 (en) * 2012-04-12 2015-04-21 Netflix, Inc. Method and system for evaluating the resiliency of a distributed computing service by inducing a latency
US9612935B2 (en) * 2014-11-21 2017-04-04 Vmware, Inc. Enhanced resiliency testing by enabling state level control for request

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225707A (ja) * 1994-02-10 1995-08-22 Fujitsu Ltd アプリケーションのテスト方法及びそのテスト支援装置
WO2012040241A1 (en) * 2010-09-20 2012-03-29 Netflix, Inc. Validating the resiliency of networked applications

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JPN6015041603; 石井直史: 'Netscape Enterprise Server' OPEN DESIGN 第5巻,第5号, 19981001, pp.34-53, CQ出版株式会社 *
JPN6015041604; 縣俊貴: 'Java グッドデザイン・バッドデザイン 第3回 テストしま専科!?' WEB+DB PRESS 第25巻, 20050315, pp.210-219, (株)技術評論社 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022504087A (ja) * 2018-10-12 2022-01-13 インターナショナル・ビジネス・マシーンズ・コーポレーション クラウド・マイクロサービス埋め込み用自動チューナ
JP7355404B2 (ja) 2018-10-12 2023-10-03 インターナショナル・ビジネス・マシーンズ・コーポレーション クラウド・マイクロサービス埋め込み用自動チューナ

Also Published As

Publication number Publication date
AU2013202560B2 (en) 2015-09-17
CA2810869C (en) 2017-03-21
JP2013232187A (ja) 2013-11-14
US9015289B2 (en) 2015-04-21
KR20130116184A (ko) 2013-10-23
EP2650791A3 (en) 2017-09-20
CN103377077B (zh) 2018-01-02
US9864666B2 (en) 2018-01-09
CN103377077A (zh) 2013-10-30
CA2810869A1 (en) 2013-10-12
US20150227444A1 (en) 2015-08-13
AU2013202560A1 (en) 2013-10-31
DK2650791T3 (da) 2020-07-20
KR101478698B1 (ko) 2015-01-02
US20130275518A1 (en) 2013-10-17
EP2650791B1 (en) 2020-05-06
EP2650791A2 (en) 2013-10-16

Similar Documents

Publication Publication Date Title
JP2015092354A (ja) 待ち時間を誘発することにより、分散計算サービスの弾力性を評価する方法及びシステム
Alhamazani et al. Cross-layer multi-cloud real-time application QoS monitoring and benchmarking as-a-service framework
EP2619664B1 (en) Validating the resiliency of networked applications
US10318399B2 (en) Using canary instances for software analysis
CA2952807A1 (en) Load generation application and cloud computing benchmarking
CN111597099B (zh) 一种监测部署于云平台的应用运行质量的无侵入仿真方法
Jayathilaka et al. Detecting performance anomalies in cloud platform applications
US20160094392A1 (en) Evaluating Configuration Changes Based on Aggregate Activity Level
US20180285082A1 (en) Comparing scripts
Cotroneo et al. Dependability evaluation of middleware technology for large-scale distributed caching
AU2015271911B9 (en) Method and system for evaluating the resiliency of a distributed computing service by inducing latency
Povzner et al. Kora: A Cloud-Native Event Streaming Platform For Kafka
Baset et al. Toward achieving operational excellence in a cloud
US10079715B1 (en) Methods, systems and computer readable mediums for performing metadata-driven data collection
Björnberg Cloud native chaos engineering for IoT systems
Munonye et al. Recursive redundancy zoning for highly available microservices architecture
Mashat CPU Autoscaling in Cloud Computing Environments
Ringhede Application–level Fault Tolerance in Groupware Using Web Technologies: A proposed solution
JARZĄB et al. PaaS Performance Evaluation Methodology.
Srirama et al. Deliverable D6. 7 Performance testing of cloud applications, Final Release
Moulavi Self Tuning for Elastic Storage in Cloud Environment
Baakind Automatic scaling of Cassandra clusters

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150317

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160120

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160329