(57)【要約】本発明は、ネットワーク上で遠隔ウェブ・サイトまたはソフトウェア・コンポーネントに分散負荷テストを実行する方法を提供する。世界中に配置された様々なシステムから希望するウェブ・サイトまたはソフトウェア・コンポーネントに負荷が与えられる。一般的イントラネット上にある一般的に所有されたシステムを使用することに限定される従来システムとは異なり、ここに述べる方法は、世界中からの様々なシステムを使用して、世界の様々な部分から負荷を提供することができ、実質的に全世界共同品質保証機関を作り出す。世界中に配置された非常に様々なシステムから選択されたシステムを使用することは、実世界環境をより正確にエミュレートするテスト環境を提供する。
2004536358.tif 000002
【特許請求の範囲】
【請求項１】
所定の基準に合う少なくとも１つのシステムを識別するステップと、
前記ターゲットに負荷を提供するために、前記少なくとも１つのシステムをスケジュールするステップと、
前記ターゲットに負荷を提供する前記少なくとも１つのシステムを、スケジュールされた時刻に配備するステップと、
を含む、ターゲットの分散テストを実行する方法。
【請求項２】
前記ターゲットがウェブ・サイトを含む、請求項１に記載の方法。
【請求項３】
前記ターゲットがソフトウェア・コンポーネントを含む、請求項１に記載の方法。
【請求項４】
前記所定の基準が、前記システムの位置、前記システムのサイズ、前記システムのスピード、および前記システムの可用性からなるグループから選択される、請求項１に記載の方法。
【請求項５】
前記少なくとも１つのシステムが、ネットワーク上で前記ターゲットに負荷を提供する、請求項１に記載の方法。
【請求項６】
前記所定の基準に合う可能性のあるシステムのカタログを定義するステップをさらに含む方法であって、少なくとも１つのシステムを識別する前記ステップが、前記可能性のあるシステムのカタログから実行される、請求項１に記載の方法。
【請求項７】
前記ソフトウェア・コンポーネントが、ＥＪＢ、Ｃｏｒｂａ、ＣＯＭ、ＤＣＯＭおよびＣＯＭ＋からなるグループから選択される、請求項３に記載の方法。
【請求項８】
前記ネットワークがインターネットを含む、請求項５に記載の方法。
【請求項９】
前記カタログが動的である、請求項６に記載の方法。
【請求項１０】
前記カタログが静的である、請求項６に記載の方法。
【請求項１１】
ターゲットの分散監視を実行する方法であって、
所定の基準に合う少なくとも１つのシステムを識別するステップと、
前記ターゲットを監視するために前記少なくとも１つのシステムをスケジュールするステップと、
前記ターゲットに監視機能を提供する前記少なくとも１つのシステムを、スケジュールされた時刻に配備するステップと、
を含む方法。
【請求項１２】
前記ターゲットがウェブ・サイトを含む、請求項１１に記載の方法。
【請求項１３】
前記所定の基準が、前記少なくとも１つのシステムの位置、前記少なくとも１つのシステムのサイズ、前記少なくとも１つのシステムのスピード、および前記少なくとも１つのシステムの可用性からなるグループから選択される、請求項１１に記載の方法。
【請求項１４】
前記少なくとも１つのシステムが、ネットワーク上で前記ターゲットに監視機能を提供する、請求項１１に記載の方法。
【請求項１５】
前記所定の基準に合う可能性のあるシステムのカタログを定義するステップをさらに含む方法であって、少なくとも１つのシステムを識別する前記ステップが、前記可能性のあるシステムのカタログから実行される、請求項１に記載の方法。
【請求項１６】
前記ネットワークがインターネットを含む、請求項１４に記載の方法。
【請求項１７】
前記カタログが動的である、請求項１５に記載の方法。
【請求項１８】
前記カタログが静的である、請求項１５に記載の方法。
【請求項１９】
ターゲットの分散負荷テストを実行するコンピュータ・プログラム製品であって、その上にコンピュータ可読コードを有するコンピュータ使用可能媒体を備え、プログラム・コードが、
所定の基準に合う少なくとも１つのシステムを識別し、
前記ターゲットに負荷を提供するために、前記少なくとも１つのシステムをスケジュールし、
前記ターゲットに負荷を提供する前記少なくとも１つのシステムを、スケジュールされた時刻に配備する、
コンピュータ・プログラム製品。
【請求項２０】
前記ターゲットがウェブ・サイトを含む、請求項１９に記載のコンピュータ・プログラム製品。
【請求項２１】
前記ターゲットがソフトウェア・コンポーネントを含む、請求項１９に記載のコンピュータ・プログラム製品。
【請求項２２】
前記所定の基準が、前記少なくとも１つのシステムの位置、前記少なくとも１つのシステムのサイズ、前記少なくとも１つのシステムのスピード、および前記少なくとも１つのシステムの可用性からなるグループから選択される、請求項１９に記載のコンピュータ・プログラム製品。
【請求項２３】
前記システムが、ネットワーク上で前記ターゲットに負荷を提供する、請求項１９に記載のコンピュータ・プログラム製品。
【請求項２４】
前記所定の基準に合う可能性のあるシステムのカタログを定義するプログラム・コードをさらに含むコンピュータ・プログラム製品であって、前記少なくとも１つのシステムを識別する前記プログラム・コードが、可能性のあるシステムの前記カタログから実行される、請求項１９に記載のコンピュータ・プログラム製品。
【請求項２５】
前記ソフトウェア・コンポーネントが、ＥＪＢ、Ｃｏｒｂａ、ＣＯＭ、ＤＣＯＭおよびＣＯＭ＋からなるグループから選択される、請求項２１に記載の方法。
【請求項２６】
前記ネットワークがインターネットを含む、請求項２３に記載のコンピュータ・プログラム製品。
【請求項２７】
前記カタログが動的である、請求項２４に記載のコンピュータ・プログラム製品。
【請求項２８】
前記カタログが静的である、請求項２４に記載のコンピュータ・プログラム製品。
【請求項２９】
ターゲットの分散監視を実行するコンピュータ・プログラム製品であって、その上にコンピュータ可読コードを有するコンピュータ使用可能媒体を備え、プログラムコードが、
所定の基準に合う少なくとも１つのシステムを識別し、
前記ターゲットに負荷を提供する前記少なくとも１つのシステムをスケジュールし、
前記ターゲットに監視機能を提供する前記少なくとも１つのシステムを、スケジュールされた時刻に配備する、コンピュータ・プログラム製品。
【請求項３０】
前記ターゲットがウェブ・サイトを含む、請求項２９に記載のコンピュータ・プログラム製品。
【請求項３１】
前記ターゲットがソフトウェア・コンポーネントを含む、請求項２９に記載のコンピュータ・プログラム製品。
【請求項３２】
前記所定の基準が、前記少なくとも１つのシステムの位置、前記少なくとも１つのシステムのサイズ、前記少なくとも１つのシステムのスピード、および前記少なくとも１つのシステムの可用性からなるグループから、選択される、請求項１８に記載のコンピュータ・プログラム製品。
【請求項３３】
前記所定の基準に合う可能性のあるシステムのカタログを定義するプログラム・コードをさらに含むコンピュータ・プログラム製品であって、前記少なくとも１つのシステムを識別する前記プログラム・コードが、前記可能性のあるシステムの前記カタログから実行される、請求項２７に記載のコンピュータ・プログラム製品。
【請求項３４】
前記ソフトウェア・コンポーネントが、ＥＪＢ、ＣＯＲＢＡ、ＣＯＭ、ＤＣＯＭおよびＣＯＭ＋からなるグループから選択される、請求項２７に記載のコンピュータ・プログラム製品。
【請求項３５】
前記システムがネットワーク上で前記ターゲットに負荷を提供する、請求項２９に記載のコンピュータ・プログラム製品。
【請求項３６】
前記ネットワークがインターネットを含む、請求項２２に記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【０００１】
発明の背景
ウェブ・サイトまたはソフトウェア・コンポーネントを効果的に働かせるには、そのウェブ・サイトまたはソフトウェア・コンポーネントにいくつかの負荷を提供することが必要である。負荷は、そのウェブ・サイトまたはソフトウェア・コンポーネントで１つまたは複数のトランザクションを実行する仮想ユーザと考えることができる。従来の方法は、ネットワーク上の様々な点からターゲットのウェブ・サイトまたはソフトウェア・コンポーネントに希望する負荷を提供する一般的なイントラネット上の一般的に所有されるシステムを使用する。これは、充分な負荷を与えるが、絶えずネットワーク上の同じ点からそうするので、ネットワークの異なる点からのアクセスは、適切にテストすることができない。実際の使用であれば、ウェブ・サイトまたはソフトウェア・コンポーネントは、同じパスに限定される固定位置の代わりに、ネットワーク全体の様々なパスを使用して、様々な位置からアクセスされる。さらに、従来技術の方法は、様々な位置から負荷を提供するために、サービス・プロバイダが、ネットワーク全体に配置された複数のシステムを購入し保守することが必要であった。これらのシステムは、サービス・プロバイダによって購入またはリースされ、保守されなければならず、したがって重大なコストおよび費用をサービス・プロバイダが被ることになる。ネットワーク上の異なる位置から動的にテストを可能にすること、実際に配備されたときにそのウェブ・サイトまたはソフトウェア・コンポーネントが見る実世界環境をより厳密にエミュレートすること、および遠隔地に複数のシステムを購入し保守する費用を被ることなく、そうすること、が望ましい。
【０００２】
発明の概要
前述の背景を心に留めると、本発明の一目的は、分散負荷テストを実行する方法を提供することである。負荷は、世界中に配置された様々なシステムから希望するウェブ・サイトまたはソフトウェア・コンポーネントに与えられる。一般的イントラネット上にある一般的に所有されるシステムを使用することに限定される従来システムとは異なり、ここに述べる方法は、世界の様々な部分から負荷を提供する世界中からの様々なシステムを使用することができ、実質的に全世界共同品質保証機関を作り出す。世界中に配置された非常に様々なシステムから選択されたシステムを使用することは、実世界環境をより正確にエミュレートするテスト環境を提供する。
【０００３】
本発明は、次のより詳細な説明および添付の図面を参照することによって、よりよく理解されよう。
（詳細な説明）
図１を参照すると、分散負荷テストが実行されるシステム１が示される。一実施形態において、ウェブ・サイト３０（ターゲット・ウェブ・サイト）をテストすることが所望されている。ウェブ・サイト３０は負荷テストすることができ、そのウェブ・サイトには、インターネット４０などのネットワーク上でウェブ・サイト３０にアクセスする所定の数の仮想ユーザが提供される。仮想ユーザは、そのウェブ・サイトが実世界環境であれば経験するのと同じだけの様々な機能またはトランザクションをウェブ・サイト３０で実行する。好ましい一実施形態において、諸システム所有者は、そうでなければ自分のシステムが非活動状態である間、負荷を生成するために使用される自分のシステムにサイン・アップする。システム５０、６０、７０、８０は、負荷を提供するために利用可能なシステムの（動的または静的）カタログ２５を形成するために、サービス・プロバイダのウェブ・サイト２０を介して登録される。カタログ２５はエントリ・リストを含み、一つのエントリは登録された各システムに対するものである。エントリは、そのシステムの特性に関する情報を含むことができる。この情報は、システムの位置、システムのＩＰアドレス、システムのサイズまたはスピード、およびシステムの可用性を含むことができる。システムの他の特性もまた含むことができる。スケジューラ１０は、希望する負荷をスケジュールするために使用され、その結果、所定の数のシステムまたは所定の地理的領域あるいはその両方からの負荷を求める要求を提供することができる。
【０００４】
ある実施例では、ターゲット・ウェブ・サイト３０の所有者は、ボストン、シアトルおよびシカゴに物理的に配置されたシステムからの負荷エージェントにより、午後１０：００から午前１：００まで、そのターゲット・ウェブ・サイト３０がテストされることを所望し得る。ここでは、わずか３つのシステムを述べるが、これは、本発明の概念を説明するのを容易にするためである。実際の使用では、本発明にしたがって多数のシステムが使用される。負荷エージェントは、マサチューセッツ州ウォルサムのＥｍｐｉｒｉｘ  Ｉｎｃ．によって提供されるｅ−Ｌｏａｄ（登録商標）などの負荷テスト・ツールから利用可能なスクリプトでよい。スケジューラ１０は、指定された基準に合う利用可能なシステムを識別するために、カタログ２５を解析する。負荷を生成するために使用する適切なシステムを識別すると、スケジューラ１０は、各識別されたシステムが適切な時刻にインターネット４０上においてターゲット・ウェブ・サイト３０にその負荷エージェントを実行するようにスケジュールする。したがって、午後１０：００に、ボストンのＩＰアドレス１．１．１．２のシステム５０、シカゴのＩＰアドレス１．１．１．３のシステム８０、およびシアトルのＩＰアドレス１．１．１．７のシステム６０が、自分の負荷エージェントを実行し、インターネット４０上でターゲット・ウェブ・サイト３０にアクセスするいくつかの仮想ユーザを生成する。そのような方法で、国の様々な部分から生成されるトラフィックによって、ターゲット・ウェブ・サイト３０が負荷テストされている。
【０００５】
次の日、ウェブ・サイトの所有者は、同じ時刻に同じサイトから同じテストが実行されることを所望し売る。カタログの動的性格のために、ボストンのシステムは、前回使用されたものとは異なるシステムである可能性がある。したがって負荷は、ターゲット・ウェブ・サイトをエクササイズするために、異なる物理的位置にあるルータ及び交換機のパスを介して来る可能性がある。
【０００６】
代替的に、ウェブ・サイトの所有者は、午後１０：００から午前１：００まで、ボストン、ニューヨークおよびシカゴのシステムからの負荷エージェントによってターゲット・ウェブ・サイト３０がテストされることを所望し得る。再びスケジューラ１０は、カタログ２５を解析して、指定された基準に合う利用可能なシステムを識別する。負荷を生成するために使用する適切なシステムを識別すると、スケジューラ１０は、適切な時刻にターゲット・ウェブ・サイト３０にその負荷エージェントを実行させるそれぞれの識別されたシステムをスケジュールする。したがって、午後１０：００に、ボストンのＩＰアドレス１．１．１．２のシステム５０、シカゴのＩＰアドレス１．１．１．３のシステム８０、およびニューヨークのＩＰアドレス１．１．１．５のシステム７０が、自分の負荷エージェントを実行し、インターネット４０上でターゲット・ウェブ・サイト３０にアクセスするいくつかの仮想ユーザを生成する。そのような方法で、国の様々な部分から生成されるトラフィックにより、ターゲット・ウェブ・サイトが負荷テストされている。再び、これらの負荷は、ターゲット・ウェブ・サイトにアクセスする異なるパスを取り、したがって実際の使用においてターゲット・ウェブ・サイトが経験するトラフィックのタイプに、より厳密に類似するより実際的テスト環境を提供する。まだ公に配備されていないターゲット・ウェブ・サイトに対して負荷を配備して、ウェブ・サイトが公衆に利用可能になるときにそのウェブ・サイトがどのように機能するかを判断することができる。公衆に利用可能なターゲット・ウェブ・サイトに負荷を配備して、期待したとおりにウェブ・サイトが機能していることを保証することもまたできる。
【０００７】
この説明にはほんのわずかのカタログ・エントリしか使用されなかったが、これは単に単純化のためにしたことに留意されたい。使用の際であれば、カタログは、分散負荷を提供するために利用可能な任意の数のシステムを含む。負荷テストを述べたが、本方法であれば、ターゲット・ウェブ・サイトの監視のために使用することもまたできる。監視は、パフォーマンス問題を検出し報告するために、配備されたウェブ・アプリケーションのテストを提供することに使用される。監視ソフトウェアは、マサチューセッツ州ウォルサムのＥｍｐｉｒｉｘ  Ｉｎｃ．から市販のｅ−Ｍｏｎｉｔｏｒ（登録商標）であり得る。システムによって提供される監視は、リアル・タイムで故障を報告する。監視ソフトウェアは、様々な通知オプションおよび訂正アクションを提供して、ウェブ・サイトの所有者がどの問題も迅速に解決することを可能にすることができる。
【０００８】
さらに進んだ実施形態では、ソフトウェア・コンポーネントをテストすることが望まれる。ソフトウェア・コンポーネントは、アプリケーション、Ｓｕｎ  Ｍｉｃｒｏｓｙｓｔｅｍｓから市販のＥｎｔｅｒｐｒｉｓｅ  Ｊａｖａ（登録商標）  Ｂｅａｎ（ＥＪＢ）、ＩＢＭから市販のＣＯＲＢＡ、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎから市販のＣＯＭ、ＤＣＯＭ、ＣＯＭ＋などのオブジェクト、またはオブジェクトの集合、を含むことができる。テストされるコンポーネントに負荷を提供するのに利用可能な登録されたシステムのカタログを形成するために、サービス・プロバイダのウェブ・サイトを介してシステムが登録される。カタログは、エントリ・リストを含み、１エントリはそれぞれの利用可能なシステムに対するものである。エントリは、システムの特性に関する情報を含むことができる。この情報は、システムの位置、システムのＩＰアドレス、システムのサイズ、およびシステムの可用性を含むことができる。システムの他の特性もまた含むことができる。スケジューラは、負荷をスケジュールするために使用され、その結果、所定の数のシステムまたは所定の地理的領域あるいはその両方からの負荷を求める要求を提供することができる。
【０００９】
ある実施例では、テストされるソフトウェア・コンポーネントの所有者は、ボストン、シアトルおよびシカゴからの負荷エージェントによって、午後１０：００から午前１：００までソフトウェア・コンポーネントをテストすることを所望し得る。ソフトウェア・コンポーネントをテストする負荷エージェントは、マサチューセッツ州ウォルサムのＥｍｐｉｒｉｘ  Ｉｎｃ．から市販のＢｅａｎ−ｔｅｓｔ（商標）などのソフトウェア・コンポーネント・テスト・ツールから利用可能なスクリプトでよい。スケジューラは、カタログを解析して、指定された基準に合う利用可能なシステムを識別する。負荷を生成するために使用する適切なシステムを識別すると、スケジューラは、各識別されたシステムをスケジュールして、適切な時刻にインターネット上でソフトウェア・コンポーネント上でその負荷エージェントを実行する。したがって、午後１０：００に、ボストンのＩＰアドレス１．１．１．２のシステム、シカゴのＩＰアドレス１．１．１．３のシステム、およびシアトルのＩＰアドレス１．１．１．７のシステムが、自分の負荷エージェントを実行し、ソフトウェア・コンポーネントにアクセスするいくつかの仮想ユーザを生成する。そのような方法で、国の様々な部分から生成されるトラフィックによって、ソフトウェア・コンポーネントが負荷テストされている。
【００１０】
上述のように、世界中に物理的に配置されたシステムから生成された負荷で、ウェブ・サイトまたはソフトウェア・コンポーネントをテストする能力は、実世界環境をより厳密にエミュレートするテストを提供する。さらに、サービス・プロバイダは、サービス・プロバイダに登録された様々なシステムを所有または保守あるいはその両方をする必要がないので、そのようなシステムを実施するコストは最低限に維持される。
【００１１】
本発明の好ましい実施形態を述べたが、これらの概念を組込む他の実施形態を使用できることが、当業者には今、明らかになろう。さらに、本発明の一部として含まれるソフトウェアは、コンピュータ使用可能媒体を含むコンピュータ・プログラム製品内に実施することができる。例えばそのようなコンピュータ使用可能媒体は、ハード・ドライブ・デバイス、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、コンピュータ・ディスケットなどの可読メモリ・デバイスを含み、コンピュータ可読プログラム・コード・セグメントをその中に格納することができる。コンピュータ可読媒体は、光、有線または無線のいずれかの通信リンクを含み、プログラム・コード・セグメントをデジタルまたはアナログ信号としてその上を搬送することもまたできる。したがって、本発明は、ここに述べた実施形態に限定されるべきではなく、添付の請求の範囲の精神および範囲によってのみ限定されるべきものである。
【図面の簡単な説明】
【図１】
本方法を実行するために使用されるシステムの図である。
【図１】
2004536358.tif 000003
【国際公開パンフレット】
2004536358.tif 000004
2004536358.tif 000005
2004536358.tif 000006
2004536358.tif 000007
2004536358.tif 000008
2004536358.tif 000009
2004536358.tif 000010
2004536358.tif 000011
2004536358.tif 000012
2004536358.tif 000013
2004536358.tif 000014
2004536358.tif 000015
2004536358.tif 000016
【国際公開パンフレット（コレクトバージョン）】
2004536358.tif 000017
2004536358.tif 000018
【国際調査報告】
2004536358.tif 000019
2004536358.tif 000020
2004536358.tif 000021