(57)【要約】  【課題】複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスの性能低下を防止する。  【解決手段】応答計測装置４は、統合ＷｅｂＡＰサーバ１が利用する各ＷｅｂＡＰサーバ２にリクエストを送信してその応答時間を計測し、計測結果を監視サーバ３に通知する。監視サーバ３は、応答計測装置４から通知された応答時間の計測結果から、性能低下あるいは障害が発生しているＷｅｂＡＰサーバ２を検出する。そして、性能低下あるいは障害が発生しているＷｅｂＡＰサーバ２のサーバＩＤを統合ＷｅｂＡＰサーバ１に通知する。統合ＷｅｂＡＰサーバ１は、監視サーバ３よりサーバＩＤが通知されたＷｅｂＡＰサーバ２と同じＷｅｂサービスを提供するＷｅｂＡＰサーバ２を検索する。そして、性能低下あるいは障害が発生しているＷｅｂＡＰサーバ２の利用を停止し、当該ＷｅｂＡＰサーバ２の代わりに、検索したＷｅｂＡＰサーバ２を利用する。  【選択図】図１
2006195709.tif 000002
【特許請求の範囲】
【請求項１】
複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスを提供するＷｅｂサービスシステムであって、
複数のＷｅｂサービスを提供する複数のＷｅｂアプリケーションサーバを利用して、リクエスタに前記統合Ｗｅｂサービスを提供する統合Ｗｅｂアプリケーションサーバと、
前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の状態を監視する監視サーバと、を有し、
前記統合Ｗｅｂアプリケーションサーバは、
当該統合Ｗｅｂアプリケーションサーバが利用可能なＷｅｂアプリケーションサーバ毎に、当該Ｗｅｂアプリケーションサーバが提供するＷｅｂサービスのサービス種別と、前記統合Ｗｅｂサービスに利用中であるか否かを示す利用現況とが記憶されたＷｅｂアプリケーションサーバ管理テーブルと、
前記リクエスタから送信されたリクエストに従い、前記Ｗｅｂアプリケーションサーバ管理テーブルにおいて、前記統合Ｗｅｂサービスに利用中であることを示す利用現況が登録されたＷｅｂアプリケーションサーバ各々に対してリクエストを送信するＷｅｂサービス手段と、
前記統合Ｗｅｂサービスに利用するＷｅｂアプリケーションサーバを管理するＷｅｂアプリケーションサーバ管理手段と、を有し、
前記監視サーバは、
少なくとも前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の状態を収集する状態情報収集手段と、
前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の前記状態情報収集手段が収集した状態に基づいて、当該複数のＷｅｂアプリケーションサーバの中から性能低下あるいは障害が発生したＷｅｂアプリケーションサーバを検出し、検出したＷｅｂアプリケーションサーバを前記統合Ｗｅｂアプリケーションサーバに通知する性能低下・障害検出手段と、を有し、
前記Ｗｅｂアプリケーションサーバ管理手段は、
前記監視サーバより通知された性能低下あるいは障害が発生したＷｅｂアプリケーションサーバに対応付けられて前記Ｗｅｂアプリケーションサーバ管理テーブルに登録されている利用現況を、前記統合Ｗｅｂサービスに利用中であることを示す情報から利用中でないことを示す情報に変更すると共に、前記性能低下あるいは障害が発生したＷｅｂアプリケーションサーバと同じサービス種別のＷｅｂサービスを提供するＷｅｂアプリケーションサーバを、前記Ｗｅｂアプリケーションサーバ管理テーブルから検索し、検索したＷｅｂアプリケーションサーバの利用現況を、前記統合Ｗｅｂサービスに利用中でないことを示す情報から利用中であることを示す情報に変更すると共に、当該検索したＷｅｂアプリケーションサーバを前記監視サーバに通知し、
前記状態情報収集手段は、
前記統合Ｗｅｂアプリケーションサーバより通知されたＷｅｂアプリケーションサーバの状態を収集していない場合、当該Ｗｅｂアプリケーションサーバを状態収集の対象に加えること
を特徴とするＷｅｂサービスシステム。
【請求項２】
請求項１に記載のＷｅｂサービスシステムであって、
前記監視サーバより通知されたＷｅｂアプリケーションサーバにリクエストを送信してその応答時間を計測し、計測結果を当該Ｗｅｂアプリケーションサーバの状態を示す情報として前記監視サーバに通知する応答計測装置をさらに備え、
前記状態情報収集手段は、
状態収集の対象であるＷｅｂアプリケーションサーバを前記応答計測装置に通知すること
を特徴とするＷｅｂサービスシステム。
【請求項３】
請求項１又は２に記載のＷｅｂサービスシステムであって、
前記監視サーバは、
前記統合Ｗｅｂサービスを構成するＷｅｂサービスのサービス種別毎に、当該サービス種別のＷｅｂサービスを提供するＷｅｂアプリケーションサーバに対するリクエストが記憶されたリクエスト記憶手段をさらに有し、
前記状態情報収集手段は、
状態収集の対象であるＷｅｂアプリケーションサーバのサービス種別に対応付けられて前記リクエスト記憶手段に記憶されたリクエストの宛先を当該Ｗｅｂアプリケーションサーバの宛先に変更して、当該変更されたリクエストを含む計測開始要求を前記応答計測装置に送信し、
前記応答計測装置は、
前記監視サーバより受信した計測開始要求に含まれているリクエストを、前記統合Ｗｅｂアプリケーションサーバが利用可能なＷｅｂアプリケーションサーバ各々が接続されたネットワークに送信してその応答時間を計測すること
を特徴とするＷｅｂサービスシステム。
【請求項４】
複数のＷｅｂアプリケーションサーバを利用して、リクエスタに複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスを提供する統合Ｗｅｂアプリケーションサーバであって、
前記統合Ｗｅｂサービスに利用可能なＷｅｂアプリケーションサーバ毎に、当該Ｗｅｂアプリケーションサーバが提供するＷｅｂサービスのサービス種別と、前記統合Ｗｅｂサービスに利用中であるか否かを示す利用現況とが記憶されたＷｅｂアプリケーションサーバ管理テーブルと、
前記リクエスタから送信されたリクエストに従い、前記Ｗｅｂアプリケーションサーバ管理テーブルにおいて、前記統合Ｗｅｂサービスに利用中であることを示す利用現況が登録されたＷｅｂアプリケーションサーバ各々に対してリクエストを送信するＷｅｂサービス手段と、
前記統合Ｗｅｂサービスに利用するＷｅｂアプリケーションサーバを管理するＷｅｂアプリケーションサーバ管理手段と、を有し、
前記Ｗｅｂアプリケーションサーバ管理手段は、
前記統合Ｗｅｂサービスに利用中のＷｅｂアプリケーションサーバの性能低下あるいは障害発生が外部装置より通知された場合に、当該Ｗｅｂアプリケーションサーバに対応付けられて前記Ｗｅｂアプリケーションサーバ管理テーブルに登録されている利用現況を、前記統合Ｗｅｂサービスに利用中であることを示す情報から利用中でないことを示す情報に変更すると共に、当該Ｗｅｂアプリケーションサーバと同じサービス種別のＷｅｂサービスを提供するＷｅｂアプリケーションサーバを、前記Ｗｅｂアプリケーションサーバ管理テーブルから検索し、検索したＷｅｂアプリケーションサーバの利用現況を、前記統合Ｗｅｂサービスに利用中でないことを示す情報から利用中であることを示す情報に変更すること
を特徴とする統合Ｗｅｂアプリケーションサーバ。
【請求項５】
複数のＷｅｂアプリケーションサーバを利用して、リクエスタに複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスを提供する統合Ｗｅｂアプリケーションサーバを、監視する監視サーバであって、
少なくとも前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の状態を収集する状態情報収集手段と、
前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の前記状態情報収集手段が収集した状態に基づいて、当該複数のＷｅｂアプリケーションサーバの中から性能低下あるいは障害が発生したＷｅｂアプリケーションサーバを検出し、検出したＷｅｂアプリケーションサーバを前記統合Ｗｅｂアプリケーションサーバに通知する性能低下・障害検出手段と、を有し、
前記状態情報収集手段は、
前記統合Ｗｅｂアプリケーションサーバより通知されたＷｅｂアプリケーションサーバの状態を収集していない場合、当該Ｗｅｂアプリケーションサーバを状態収集の対象に加えること
を特徴とする監視サーバ。
【請求項６】
コンピュータで読取り可能なプログラムであって、
前記プログラムは、前記コンピュータを、
複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスに利用可能なＷｅｂアプリケーションサーバ毎に、当該Ｗｅｂアプリケーションサーバが提供するＷｅｂサービスのサービス種別と、前記統合Ｗｅｂサービスに利用中であるか否かを示す利用現況とが記憶されたＷｅｂアプリケーションサーバ管理テーブル、
リクエスタから送信されたリクエストに従い、前記Ｗｅｂアプリケーションサーバ管理テーブルにおいて、前記統合Ｗｅｂサービスに利用中であることを示す利用現況が登録されたＷｅｂアプリケーションサーバ各々に対してリクエストを送信するＷｅｂサービス手段、および、
前記統合Ｗｅｂサービスに利用するＷｅｂアプリケーションサーバを管理するＷｅｂアプリケーションサーバ管理手段として機能させ、
前記Ｗｅｂアプリケーションサーバ管理手段は、
前記統合Ｗｅｂサービスに利用中のＷｅｂアプリケーションサーバの性能低下あるいは障害発生が外部装置より通知された場合に、当該Ｗｅｂアプリケーションサーバに対応付けられて前記Ｗｅｂアプリケーションサーバ管理テーブルに登録されている利用現況を、前記統合Ｗｅｂサービスに利用中であることを示す情報から利用中でないことを示す情報に変更すると共に、当該Ｗｅｂアプリケーションサーバと同じサービス種別のＷｅｂサービスを提供するＷｅｂアプリケーションサーバを、前記Ｗｅｂアプリケーションサーバ管理テーブルから検索し、検索したＷｅｂアプリケーションサーバの利用現況を、前記統合Ｗｅｂサービスに利用中でないことを示す情報から利用中であることを示す情報に変更すること
を特徴とするコンピュータで読取り可能なプログラム。
【請求項７】
コンピュータで読取り可能なプログラムであって、
前記プログラムは、前記コンピュータを、
少なくとも、リクエスタに複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスを提供する統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の状態を収集する状態情報収集手段、および、
前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の前記状態情報収集手段が収集した状態に基づいて、当該複数のＷｅｂアプリケーションサーバの中から性能低下あるいは障害が発生したＷｅｂアプリケーションサーバを検出し、検出したＷｅｂアプリケーションサーバを前記統合Ｗｅｂアプリケーションサーバに通知する性能低下・障害検出手段として機能させ、
前記状態情報収集手段は、
前記統合Ｗｅｂアプリケーションサーバより通知されたＷｅｂアプリケーションサーバの状態を収集していない場合、当該Ｗｅｂアプリケーションサーバを状態収集の対象に加えること
を特徴とするコンピュータで読取り可能なプログラム。
【請求項８】
複数のＷｅｂアプリケーションサーバを利用して、リクエスタに複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスを提供する統合Ｗｅｂアプリケーションサーバと、監視サーバと、を有するＷｅｂサービスシステムの監視方法であって、
前記監視サーバが、
少なくとも、前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の状態を収集する状態情報収集ステップと、
前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の前記状態情報収集手段が収集した状態に基づいて、当該複数のＷｅｂアプリケーションサーバの中から性能低下あるいは障害が発生したＷｅｂアプリケーションサーバを検出し、検出したＷｅｂアプリケーションサーバを前記統合Ｗｅｂアプリケーションサーバに通知する性能低下・障害検出ステップと、を行い、
前記統合Ｗｅｂアプリケーションサーバが、
当該統合Ｗｅｂアプリケーションサーバが利用可能なＷｅｂアプリケーションサーバ毎に、当該Ｗｅｂアプリケーションサーバが提供するＷｅｂサービスのサービス種別と、前記統合Ｗｅｂサービスに利用中であるか否かを示す利用現況とが記憶されたＷｅｂアプリケーションサーバ管理テーブルを用いて、前記統合Ｗｅｂサービスに利用するＷｅｂアプリケーションサーバを管理するＷｅｂアプリケーションサーバ管理ステップを行い、
前記Ｗｅｂアプリケーションサーバ管理ステップは、
前記監視サーバより通知された性能低下あるいは障害が発生したＷｅｂアプリケーションサーバに対応付けられて前記Ｗｅｂアプリケーションサーバ管理テーブルに登録されている利用現況を、前記統合Ｗｅｂサービスに利用中であることを示す情報から利用中でないことを示す情報に変更すると共に、前記性能低下あるいは障害が発生したＷｅｂアプリケーションサーバと同じサービス種別のＷｅｂサービスを提供するＷｅｂアプリケーションサーバを、前記Ｗｅｂアプリケーションサーバ管理テーブルから検索し、検索したＷｅｂアプリケーションサーバの利用現況を、前記統合Ｗｅｂサービスに利用中でないことを示す情報から利用中であることを示す情報に変更すると共に、当該検索したＷｅｂアプリケーションサーバを前記監視サーバに通知し、
前記状態情報収集ステップは、
前記統合Ｗｅｂアプリケーションサーバより通知されたＷｅｂアプリケーションサーバの状態を収集していない場合、当該Ｗｅｂアプリケーションサーバを状態収集の対象に加えること
を特徴とするＷｅｂサービスシステムの監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂサービスの監視技術に関し、特に複数のＷｅｂサービスからなる統合Ｗｅｂサービスの応答性能を監視する技術に関する。
【背景技術】
【０００２】
特許文献１には、Ｗｅｂサービスを呼び出すＷｅｂサービスプロバイダを自動選択する技術が開示されている。特許文献１において、Ｗｅｂサービスコンテナは、ＷＳＤＬ（Web Services Description Language）を用いてＷｅｂサービスプロバイダからＷｅｂサービスインプリメンテーションドキュメントを収集し、Ｗｅｂコンシューマが要求するＷｅｂサービスをリモートインプリメンテーションする１以上のＷｅｂサービスプロバイダを特定する。特定できたならば、アベイラビリティ、ＱｏＳ、コストなどに従ってコンパイルされた選択ルールを適用して、Ｗｅｂサービスプロバイダを１つを選択し、ＳＯＡＰ（Simple Object Access Protocol）を用いてこの選択されたＷｅｂサービスプロバイダからＷｅｂコンシューマが要求するＷｅｂサービスを呼び出す。
【０００３】
また、特許文献２には、Ｗｅｂサイトが所望の性能を維持できなくなる可能性がある場合に、当該Ｗｅｂサイトの管理者に通知する技術が開示されている。特許文献２において、性能監視装置は、定期的にＷｅｂサイトのレスポンスタイムを計測し、その結果を蓄積する。また、蓄積された結果から指定時刻におけるレスポンスタイムを予測し、その予測値と所定の保証値とを比較する。そして、予測値が所定の保証値を満足しないと判断した場合に、所定の通知先に当該Ｗｅｂサイトの性能悪化を通知する。
【０００４】
【特許文献１】米国特許出願公開第２００３/０２０４６２２号明細書
【特許文献２】特開２００２-９９４４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術では、多数のＷｅｂコンシューマから要求が同時に発生したり、ネットワーク障害が生じたりすると、ＷｅｂサービスプロバイダがＷｅｂサービスコンテナに通知したＷｅｂサービスインプリメンテーションドキュメントに記述されたサービス提供条件を満足できなくなる場合があり、Ｗｅｂサービスの性能低下を招くことがある。また、特許文献２の技術では、多数のＷｅｂサイトを管理する場合において、Ｗｅｂサイト毎に管理者が異なる場合、管理者毎に通知先を振り分ける必要が生じ時間がかかる。また、管理者が予防策を講じている間に、Ｗｅｂサイトの性能悪化が進行してしまう可能性がある。また、上記特許文献１、２の技術は、いずれも、複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスを考慮していない。統合Ｗｅｂサービスを呼び出す場合、該統合Ｗｅｂサービスを構成する一部のＷｅｂサービスに性能低下、障害発生があった場合に、統合Ｗｅｂサービス全体としての性能低下等を招いてしまう。
【０００６】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスの性能低下を防止することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明では、統合Ｗｅｂサービスを構成する各Ｗｅｂサービスを提供する各Ｗｅｂアプリケーションサーバに、リクエストを送信してその応答時間を計測し、各Ｗｅｂアプリケーションサーバの応答時間の計測結果から、性能低下あるいは障害が発生しているＷｅｂアプリケーションサーバを検出する。性能低下あるいは障害が発生しているＷｅｂアプリケーションサーバを検出した場合、統合Ｗｅｂサービスを構成するＷｅｂサービスとして、当該Ｗｅｂアプリケーションサーバが提供するＷｅｂサービスから、当該Ｗｅｂサービスと同じ機能を持つ予め登録しておいた代替Ｗｅｂサービスに切り換える。これにより、統合Ｗｅｂサービスは、代替Ｗｅｂサービスを提供するＷｅｂアプリケーションサーバにアクセスして、代替Ｗｅｂサービスを利用する。
【０００８】
例えば、本発明は、複数のＷｅｂサービスの組合せからなる統合Ｗｅｂサービスを提供するＷｅｂサービスシステムであって、
複数のＷｅｂサービスを提供する複数のＷｅｂアプリケーションサーバを利用して、リクエスタに前記統合Ｗｅｂサービスを提供する統合Ｗｅｂアプリケーションサーバと、
前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の状態を監視する監視サーバと、を有し、
前記統合Ｗｅｂアプリケーションサーバは、
当該統合Ｗｅｂアプリケーションサーバが利用可能なＷｅｂアプリケーションサーバ毎に、当該Ｗｅｂアプリケーションサーバが提供するＷｅｂサービスのサービス種別と、前記統合Ｗｅｂサービスに利用中であるか否かを示す利用現況とが記憶されたＷｅｂアプリケーションサーバ管理テーブルと、
前記リクエスタから送信されたリクエストに従い、前記Ｗｅｂアプリケーションサーバ管理テーブルにおいて、前記統合Ｗｅｂサービスに利用中であることを示す利用現況が登録されたＷｅｂアプリケーションサーバ各々に対してリクエストを送信するＷｅｂサービス手段と、
前記統合Ｗｅｂサービスに利用するＷｅｂアプリケーションサーバを管理するＷｅｂアプリケーションサーバ管理手段と、を有し、
前記監視サーバは、
少なくとも前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の状態を収集する状態情報収集手段と、
前記統合Ｗｅｂアプリケーションサーバが利用する複数のＷｅｂアプリケーションサーバ各々の前記状態情報収集手段が収集した状態に基づいて、当該複数のＷｅｂアプリケーションサーバの中から性能低下あるいは障害が発生したＷｅｂアプリケーションサーバを検出し、検出したＷｅｂアプリケーションサーバを前記統合Ｗｅｂアプリケーションサーバに通知する性能低下・障害検出手段と、を有し、
前記Ｗｅｂアプリケーションサーバ管理手段は、
前記監視サーバより通知された性能低下あるいは障害が発生したＷｅｂアプリケーションサーバに対応付けられて前記Ｗｅｂアプリケーションサーバ管理テーブルに登録されている利用現況を、前記統合Ｗｅｂサービスに利用中であることを示す情報から利用中でないことを示す情報に変更すると共に、前記性能低下あるいは障害が発生したＷｅｂアプリケーションサーバと同じサービス種別のＷｅｂサービスを提供するＷｅｂアプリケーションサーバを、前記Ｗｅｂアプリケーションサーバ管理テーブルから検索し、検索したＷｅｂアプリケーションサーバの利用現況を、前記統合Ｗｅｂサービスに利用中でないことを示す情報から利用中であることを示す情報に変更すると共に、当該検索したＷｅｂアプリケーションサーバを前記監視サーバに通知し、
前記状態情報収集手段は、
前記統合Ｗｅｂアプリケーションサーバより通知されたＷｅｂアプリケーションサーバの状態を収集していない場合、当該Ｗｅｂアプリケーションサーバを状態収集の対象に加える。
【発明の効果】
【０００９】
本発明によれば、統合Ｗｅｂサービスを構成する一部のＷｅｂサービスに性能低下、障害発生があった場合、当該Ｗｅｂサービスから当該Ｗｅｂサービスと同じ機能を持つ代替Ｗｅｂサービスに切り換え、当該代替Ｗｅｂサービスを統合Ｗｅｂサービスに組み込む。したがって、統合Ｗｅｂサービス全体としての性能低下等を防止できる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態について説明する。
【００１１】
図１は本発明の一実施形態が適用されたＷｅｂサービスシステムの概略図である。図示するように、本実施形態のＷｅｂサービスシステムは、統合ＷｅｂＡＰ（アプリケーション）サーバ１と、Ｗｅｂサービスを提供する複数のＷｅｂＡＰサーバ２と、監視サーバ３と、複数の応答計測装置４と、Ｗｅｂサービスのクライアント端末であるリクエスタ５とが、インターネットなどのネットワーク６を介して互いに接続されて構成されている。ここで、ＷｅｂＡＰサーバ２およびリクエスタ５は、既存のＷｅｂＡＰサーバおよびリクエスタと基本的に同様であるので、その詳細な説明を省略する。
【００１２】
統合ＷｅｂＡＰサーバ１は、複数のＷｅｂサービスを組み合わせた統合Ｗｅｂサービスをリクエスタ５に提供する。本実施形態では、統合Ｗｅｂサービスとして、航空券や列車乗車券など交通券の予約を行う交通券予約サービスを提供するＷｅｂＡＰサーバ２と、ホテルの予約を行うホテル予約サービスを提供するＷｅｂＡＰサーバ２とを用いて、交通券予約サービスとホテル予約サービスとを組み合わせた旅行予約サービスをリクエスタ５に提供する。また、統合ＷｅｂＡＰサーバ１は、旅行予約サービスに用いる各ＷｅｂＡＰサーバ２の識別情報（サーバＩＤ）を監視サーバ３に通知する。そして、監視サーバ３からこれらのＷｅｂＡＰサーバ２のうちのいずれかについて性能低下もしくは障害発生を通知されたならば、旅行予約サービスに利用するＷｅｂＡＰサーバ２として、性能低下もしくは障害発生の対象ＷｅｂＡＰサーバ２から当該ＷｅｂＡＰサーバ２と同じＷｅｂサービスを提供するＷｅｂＡＰサーバ２に切り換える。
【００１３】
図２は、統合ＷｅｂＡＰサーバ１の概略図である。図示するように、統合ＷｅｂＡＰサーバ１は、ネットワーク６を介して他の装置と通信を行なうためのネットワークＩＦ部１１と、リクエスタ５に統合Ｗｅｂサービスを提供するＷｅｂサービス部１２と、統合Ｗｅｂサービスに利用するＷｅｂサービスを提供するＷｅｂＡＰサーバ２にリクエスト（ＳＯＡＰメッセージ）を送信するリクエスタ部１３と、ＷｅｂＡＰサーバ管理部１４と、ＷｅｂＡＰサーバ管理テーブル１５と、を有する。
【００１４】
ＷｅｂＡＰサーバ管理テーブル１５には、各ＷｅｂＡＰサーバ２が提供するＷｅｂサービスを利用するために必要な情報が登録されている。図３はＷｅｂサーバ管理テーブル１５の登録内容例を示す図である。図示するように、ＷｅｂＡＰサーバ管理テーブル１５には、ＷｅｂＡＰサーバ２毎にレコード１５０が登録されている。レコード１５０は、ＷｅｂＡＰサーバ２の識別情報であるサーバＩＤを登録するためのフィールド１５１と、ＷｅｂＡＰサーバ２が提供するＷｅｂサービスのサービス種別を登録するためのフィールド１５２と、ＷｅｂＡＰサーバ２を利用するために必要な情報（service要素、port要素、binding要素、portType要素、message要素、types要素等）が記述されたＷＳＤＬドキュメントもしくはその格納先を登録するためのフィールド１５３と、フィールド１５３のＷＳＤＬドキュメントに基づいて作成されたＳＯＡＰメッセージ（リクエスト）の雛形を登録するためのフィールド１５４と、ＷｅｂＡＰサーバ２を統合Ｗｅｂサービスに利用しているか否かを示す利用現況を登録するためのフィールド１５５と、を有する。
【００１５】
Ｗｅｂサービス部１２は、ネットワークＩＦ部１１を介してリクエスタ５から旅行予約サービス（統合Ｗｅｂサービス）のためのリクエストを受信すると、ＷｅｂＡＰサーバ管理テーブル１５の各レコード１５０のフィールド１５４を参照し、旅行予約サービスに利用するＷｅｂＡＰサーバ２を特定する。そして、特定したＷｅｂＡＰサーバ２各々のレコード１５０と共に、受信したリクエストに含まれる希望条件（出発時刻、帰宅時刻、宿泊数等）をリクエスタ部１３に通知する。また、Ｗｅｂサービス部１２は、リクエスタ部１３より受信した情報（Ｗｅｂサービスの結果情報）を、ネットワークＩＦ部１１を介してリクエスタ５に送信する。
【００１６】
リクエスタ部１３は、Ｗｅｂサービス部１２から受信したレコード１５０毎に、所定の書式に従って、当該レコード１５０のフィールド１５５に登録されているＳＯＡＰメッセージの雛形に、Ｗｅｂサービス部１２から受信した希望条件を記述して、当該レコード１５０のフィールド１５１に登録されているサーバＩＤを持つＷｅｂＡＰサーバ２から希望条件に合致するＷｅｂサービス（交通券あるいはホテルの予約）を受けるためのＳＯＡＰメッセージ（リクエスト）を作成する。そして、作成したＳＯＡＰメッセージをネットワーク６にネットワークＩＦ部１１を介して送信する。また、リクエスタ部１３は、送信したＳＯＡＰメッセージに応答して、ＷｅｂＡＰサーバ２より受信した情報（Ｗｅｂサービスの結果情報）をＷｅｂサービス部１２に通知する。
【００１７】
ＷｅｂＡＰサーバ管理部１４は、旅行予約サービス（統合Ｗｅｂサービス）に利用するＷｅｂＡＰサーバ２の情報を、ネットワークＩＦ部１１を介して監視サーバ３に送信する。また、監視サーバ３から通知された性能低下・障害発生通知情報に従い、旅行予約サービスに利用するＷｅｂＡＰサーバ２を変更し、それに合わせてＷｅｂＡＰサーバ管理テーブル１５の登録内容（フィールド１５５の「利用現況」）を更新する。
【００１８】
図４は統合ＷｅｂＡＰサーバ１のＷｅｂＡＰサーバ管理部１４の動作フローを説明するための図である。
【００１９】
まず、ＷｅｂＡＰサーバ管理部１４は、ＷｅｂＡＰサーバ管理テーブル１５を参照し、フィールド１５４に、旅行予約サービスで利用中であることを示す情報が登録されているレコード１５０を検索する。そして、検索した各レコード１５０のフィールド１５１に登録されているサーバＩＤを持つＷｅｂＡＰサーバ２を、旅行予約サービスに利用するＷｅｂＡＰサーバ２として特定する（Ｓ１０１）。そして、検索した各レコード１５０のフィールド１５１、１５２、１５３に登録されているサーバＩＤ、サービス種別、ＷＳＤＬドキュメントを含むサーバ通知情報を生成し、このサーバ通知情報をネットワークＩＦ部１１を介して監視サーバ３に送信する（Ｓ１０２）。それから、ＷｅｂＡＰサーバ管理部１４は、ネットワークＩＦ部１１を介して監視サーバ３から性能低下・障害通知情報が送られてくるのを待つ（Ｓ１０３）。
【００２０】
さて、ＷｅｂＡＰサーバ管理部１４は、ネットワークＩＦ部１１を介して監視サーバ３から性能低下・障害通知情報を受信したならば（Ｓ１０３でＹＥＳ）、ＷｅｂＡＰサーバ管理テーブル１５を参照し、性能低下・障害通知情報に含まれているサーバＩＤがフィールド１５１に登録されているレコード１５０を検索する。そして、検索したレコード１５０のフィールド１５２に登録されているサービス種別を特定すると共に、フィールド１５５の登録内容を「利用中」から「利用停止中」に変更する。これにより、性能低下・障害が発生したＷｅｂＡＰサーバ２の旅行予約サービスへの利用を停止する（Ｓ１０４）。
【００２１】
次に、ＷｅｂＡＰサーバ管理部１４は、性能低下・障害が発生したＷｅｂＡＰサーバ２のレコード１５０のフィールド１５２に登録されているサービス種別と同じサービス種別がフィールド１５２に登録されているレコード１５０であって、性能低下・障害が発生したＷｅｂＡＰサーバ２のレコード１５０以外のレコード１５０の中からレコード１５０を１つ選択し、選択したレコード１５０のフィールド１５５の登録内容を「利用停止中」から「利用中」に変更する。これにより、選択したレコード１５０のフィールド１５１に登録されているサーバＩＤを持つＷｅｂＡＰサーバ２を、性能低下・障害が発生したＷｅｂＡＰサーバ２の代替サーバに決定する（Ｓ１０５）。それから、ＷｅｂＡＰサーバ管理部１４は、性能低下・障害が発生したＷｅｂＡＰサーバ２のサーバＩＤ(障害等発生サーバＩＤと呼ぶ）と、選択したレコード１５０のフィールド１５１、１５２、１５３に登録されているサーバＩＤ（代替サーバＩＤと呼ぶ）、サービス種別、ＷＳＤＬドキュメントとを含む代替サーバ通知情報を生成し、この代替サーバ通知情報をネットワークＩＦ部１１を介して監視サーバ３に送信する（Ｓ１０６）。その後、Ｓ１０３に戻る。
【００２２】
図１に戻って説明を続ける。監視サーバ３は、応答計測装置４を用いて、旅行予約サービスに利用する各ＷｅｂＡＰサーバ２の性能低下・障害発生を監視する。
【００２３】
図５は、監視サーバ３の概略図である。図示するように、監視サーバ３は、ネットワーク６を介して他の装置と通信を行なうためのネットワークＩＦ部３１と、性能情報収集部３２と、性能低下・障害検出部３３と、応答計測装置管理テーブル３４と、性能情報管理テーブル３５と、閾値管理テーブル３６と、を有する。
【００２４】
応答計測装置管理テーブル３４には、各応答計測装置４の情報が登録される。図６は応答計測装置管理テーブル３４の登録内容例を示す図である。図示するように、応答計測装置管理テーブル３４には、応答計測装置３毎にレコード３４０が登録されている。レコード３４０は、応答計測装置３の識別情報である装置ＩＤを登録するためのフィールド３４１と、応答計測装置３のアドレスを登録するためのフィールド３４２と、計測対象のＷｅｂＡＰサーバ２のサーバＩＤを登録するためのフィールド３４３と、計測対象のＷｅｂＡＰサーバ２が提供するＷｅｂサービスのサービス種別を登録するためのフィールド３４４と、計測対象のＷｅｂＡＰサーバ２を利用するのに必要な各種情報（service要素、port要素、binding要素、portType要素、message要素、types要素等）が記述されたＷＳＤＬドキュメントあるいはその格納先を登録するためのフィールド３４５と、計測対象のＷｅｂＡＰサーバ２に送信する応答計測用の架空のリクエストであるＳＯＡＰメッセージを登録するためのフィールド３４６と、を有する。ここで、架空のリクエストとは、ＷｅｂＡＰサーバ２の応答時間を計測するために利用されるリクエストであり、例えば所定の旅行地に所定の日程で旅行する場合の交通券、ホテルの予約の問合せである。
【００２５】
なお、本実施形態では、同じサービス種別を提供するＷｅｂＡＰサーバ２は、Ｗｅｂサービスにアクセスするためのネットワークアドレスを表すport要素を除いて共通化されているものとする。すなわち、同じサービス種別を提供するＷｅｂＡＰサーバ２各々に対するＳＯＡＰメッセージが、Ｗｅｂサービスにアクセスするためのネットワークアドレスを除いて共通化されているものとする。
【００２６】
また、本実施形態では、初期(デフォルト）状態において、Ｗｅｂサービスのサービス種別毎に、当該サービス種別のＷｅｂサービスを提供する少なくとも１つのＷｅｂＡＰサーバ２の応答時間が、少なくとも１つの応答計測装置４で計測されるようにしている。したがって、応答計測装置管理テーブル３４に登録されているレコード３４０のうちの少なくともＷｅｂサービスのサービス種別数分のレコード３４０は、初期（デフォルト）状態において、全てのフィールド３４１〜３４６に情報が登録されている。ここで、レコード３４０のフィールド３４６に登録するＳＯＡＰメッセージは、例えば次のようにして作成することができる。
【００２７】
つまり、監視サーバ３の管理者は、コンピュータ上で稼動しているＳＯＡＰメッセージ作成支援ツール、例えば"Apache Software Foundation"で管理されているツールであって、オープンソースとして広く使われているツールである"Apache SOAP"の後継である"Apache Axis"に付属しているユーティリティである"Java2WSDL"に、ＷＳＤＬドキュメントを入力する。"Java2WSDL"は、入力されたＷＳＤＬドキュメントからスタブを生成し出力する。スタブは、送受信ＡＰＩ（Application Programming Interface）を呼び出すメソッドを提供するプログラムコードである。このスタブにより、Ｗｅｂサービスのユーザは、通信ＡＰＩに触れることなく、メソッド呼び出しだけで、Ｗｅｂサービスを享受できる。そこで、監視サーバ３の管理者は、Ｗｅｂサービスを呼び出すメソッドを含むＷｅｂサービスプロキシクライアントプログラムを作成する。そして、Ｗｅｂサービスプロキシクライアントプログラムにサンプルパラメータを入力する。Ｗｅｂサービスプロキシクライアントプログラムは、入力されたサンプルパラメータに従いＷｅｂサービスを要求するＳＯＡＰメッセージ（リクエスト）を生成する。なお、このＳＯＡＰメッセージをＷｅｂＡＰサーバ２に送信すると、ＷｅｂＡＰサーバ３は応答のＳＯＡＰメッセージを、Ｗｅｂサービスプロキシクライアントプログラムに返信する。
【００２８】
性能情報管理テーブル３５は、応答計測装置３によって応答が計測されている各ＷｅｂＡＰサーバ２の応答性能の計測値情報が登録される。図７は応答計測装置管理テーブル３４の登録内容例を示す図である。図示するように、性能情報管理テーブル３５には、応答計測装置３によって応答が計測されているＷｅｂＡＰサーバ２毎に、サブテーブル３５０が登録される。サブテーブル３５０には、応答計測対象のＷｅｂＡＰサーバ２のサーバＩＤ３５１０と、応答計測対象のＷｅｂＡＰサーバが旅行予約サービスに利用されているか否かを示す統合Ｗｅｂサービス対象３５２０とが対応付けられる。また、サブテーブル３５０は、当該テーブル３５０に対応付けられたサーバＩＤ３５１０を持つＷｅｂＡＰサーバ２の応答性能計測値のレコード３５３０が登録される。レコード３５３０は、計測時刻を登録するためのフィールド３５３１と、応答時間の計測値を登録するためのフィールド３５３２と、を有する。
【００２９】
閾値管理テーブル３６には、ＷｅｂＡＰサーバ２毎に、当該ＷｅｂＡＰサーバ３の性能低下および障害発生を検出するための閾値が登録されている。図８は閾値管理テーブル３６の登録内容例を示す図である。図示するように、閾値管理テーブル３６には、ＷｅｂＡＰサーバ２毎にレコード３６０が登録されている。レコード３６０は、ＷｅｂＡＰサーバ２のサーバＩＤを登録するためのフィールド３６１と、性能低下および障害発生を検出するための閾値を登録するためのフィールド３６２と、を有する。
【００３０】
性能情報収集部３２は、ネットワークＩＦ部１１を介して応答計測装置４から受信した応答性能計測情報を性能情報管理テーブル３５に登録する。また、ネットワークＩＦ部３１を介して統合ＷｅｂＡＰサーバ１から受信したサーバ通知情報あるいは代替サーバ通知情報に従い、当該通知情報に含まれているサーバＩＤを持つＷｅｂＡＰサーバ２の応答性能を計測できるように、応答計測装置管理テーブル３４および性能情報管理テーブル３５を更新する。また、当該通知情報に含まれているサーバＩＤを持つＷｅｂＡＰサーバ２が旅行予約サービスに利用されることが明確になるように、性能情報管理テーブル３５のサブテーブル３５０の統合Ｗｅｂサービス対象３５２０を更新する。
【００３１】
性能低下・障害検出部３３は、性能情報計測管理テーブル３５と閾値管理テーブル３６とを用いて、旅行予約サービスに利用されるＷｅｂＡＰサーバ２の性能低下あるいは障害発生を検出する。そして、性能低下あるいは障害発生を検出したＷｅｂＡＰサーバ２のサーバＩＤを含む性能低下・障害通知情報を生成し、これをネットワークＩＦ部３１を介して統合ＷｅｂＡＰサーバ１に送信する。
【００３２】
図９は監視サーバ３の性能情報収集部３２の動作フローを説明するための図である。
【００３３】
まず、性能情報収集部３２は、ネットワークＩＦ部３１を介して応答計測装置４から性能計測情報を受信すると（Ｓ３１０でＹＥＳ）、該性能計測情報に含まれているサーバＩＤがサーバＩＤ３５１０として登録されているサブテーブル３５０を性能情報管理テーブル３５から特定する（Ｓ３１１）。そして、特定したサブテーブル３５０にレコード３５３０を追加し、追加したレコード３５３０のフィールド３５３１、３５３２に、該性能計測情報に含まれている計測時刻、応答時間を登録する（Ｓ３１２）。
【００３４】
また、性能情報収集部３２は、ネットワークＩＦ部３１を介して統合ＷｅｂＡＰサーバ１からサーバ通知情報を受信すると（Ｓ３２０でＹＥＳ）、該サーバ通知情報に含まれているサーバＩＤ各々について、フィールド３４３に当該サーバＩＤが登録されているレコード３４０が応答計測装置管理テーブル３４に登録されているか否かを調べる（Ｓ３２１）。該サーバ通知情報に含まれている全てのサーバＩＤ各々について、当該サーバＩＤがフィールド３４３に登録されているレコード３４０が応答計測装置管理テーブル３４に登録されている場合、該サーバ通知情報に含まれているサーバＩＤを持つ全てのＷｅｂＡＰサーバ２に対する応答性能情報の計測が既に開始されている。この場合、Ｓ３２６に進む（Ｓ３２１でＹＥＳ）。一方、該サーバ通知情報に含まれているいずれかのサーバＩＤについて、当該サーバＩＤがフィールド３４３に登録されているレコード３４０が応答計測装置管理テーブル３４に登録されていない場合、当該サーバＩＤを持つＷｅｂＡＰサーバ２に対する応答性能情報の計測が開始されていない。この場合、応答性能情報が開始されていないＷｅｂＡＰサーバ２（計測開始サーバと呼ぶ）の各々に対して、Ｓ３２２〜Ｓ３２５に示す処理を行う（Ｓ３２１でＮＯ）。
【００３５】
まず、Ｓ３２２において、性能情報収集部３２は、応答計測管理装置管理テーブル３４を参照し、フィールド３４３にＷｅｂＡＰサーバ２のサーバＩＤが登録されていないレコード３４０を検索し、検索したレコード３４０のフィールド３４１、３４２に登録されている装置ＩＤ、アドレスを持つ応答計測装置４を、計測開始サーバの応答性能情報を計測する応答計測装置４に決定する。
【００３６】
次に、Ｓ３２３において、性能情報収集部３２は、Ｓ３２２で検索したレコード３４０（計測開始サーバレコードと呼ぶ）のフィールド３４３、３４４、３４５にそれぞれ計測開始サーバのサーバＩＤ、サーバ種別、ＷＳＤＬドキュメントを登録する。なお、計測開始サーバのＷＳＤＬドキュメントは、該サーバ通知情報に含まれている。また、計測開始サーバと同じサーバ種別がフィールド３４４に登録されているレコード３４０であって、フィールド３４３に計測開始サーバ以外のＷｅｂＡＰサーバ２のサーバＩＤが登録されているレコード３４０を検索し、該レコード３４０のフィールド３４６に登録されているＳＯＡＰメッセージを、計測開始サーバレコードのフィールド３４６にコピーする。
【００３７】
また、図１０に示すように、コピーしたＳＯＡＰメッセージのネットワークアドレス３４５２、３４５３を、計測開始サーバレコードのフィールド３４５に登録されているＷＳＤＬドキュメントのネットワークアドレス（port要素）３４４２に置き換える。上述したように、本実施形態では、同じサービス種別を提供するＷｅｂＡＰサーバ２各々に対するＳＯＡＰメッセージが、Ｗｅｂサービスにアクセスするためのネットワークアドレスを除いて共通化されている。したがって、計測開始サーバと同じサービス種別を提供するＷｅｂＡＰサーバ２のＳＯＡＰメッセージをコピーし、コピーしたＳＯＡＰメッセージのネットワークアドレスを、計測開始サーバのＷＳＤＬドキュメントで記述されているネットワークアドレスに変更することで、計測開始サーバに対するＳＯＡＰメッセージを作成することができる。
【００３８】
次に、Ｓ３２４において、性能情報収集部３２は、計測開始サーバレコードのフィールド３４３、３４６に登録されているサーバＩＤ、ＳＯＡＰメッセージを含む計測開始要求情報を作成し、ネットワークＩＦ部３１を介して、計測開始サーバレコードのフィールド３４２に登録されているアドレスにより特定される応答計測装置４へ送信する。これにより、Ｓ３２２で決定した応答計測装置４に対して応答性能情報の計測を開始させる。
【００３９】
それから、Ｓ３２５において、性能情報収集部３２は、性能情報管理テーブル３５に、計測開始サーバのサーバＩＤをサーバＩＤ３５１０とするサブテーブル３５０を追加し、Ｓ３２６に進む。
【００４０】
Ｓ３２６において、性能情報収集部３２は、性能情報管理テーブル３５を参照し、統合Ｗｅｂサービス対象３５２０が旅行予約サービス「利用中」であるサブテーブル３５０を全て特定し、該特定したサブテーブル３５０各々の統合Ｗｅｂサービス対象３５２０を旅行予約サービス「利用中」から「利用停止中」に変更する。次に、性能情報収集部３２は、サーバ通知情報に含まれているサーバＩＤを持つサブテーブル３５０を全て特定し、該特定したサブテーブル３５０各々の統合Ｗｅｂサービス対象３５２０を旅行予約サービス「利用停止中」から「利用中」に変更する。これにより、旅行予約サービスに利用されているＷｅｂＡＰサーバ２を更新する。
【００４１】
また、性能情報収集部３２は、ネットワークＩＦ部３１を介して統合ＷｅｂＡＰサーバ１から代替サーバ通知情報を受信すると（Ｓ３３０でＹＥＳ）、該代替サーバ通知情報に含まれている代替サーバＩＤがフィールド３４３に登録されているレコード３４０が応答計測装置管理テーブル３４に登録されているか否かを調べる（Ｓ３３１）。代替サーバＩＤがフィールド３４３に登録されているレコード３４０が応答計測装置管理テーブル３４に登録されている場合、代替サーバＩＤを持つＷｅｂＡＰサーバ２に対する応答性能情報の計測が既に開始されている。この場合、Ｓ３３６に進む（Ｓ３３１でＹＥＳ）。一方、代替サーバＩＤがフィールド３４３に登録されているレコード３４０が応答計測装置管理テーブル３４に登録されていない場合、代替サーバＩＤを持つＷｅｂＡＰサーバ２に対する応答性能情報の計測が開始されていない。この場合、応答性能情報が開始されていないＷｅｂＡＰサーバ２（計測開始サーバ）に対して、Ｓ３３２〜Ｓ３３５に示す処理を行う（Ｓ３３１でＮＯ）。なお、Ｓ３３２〜Ｓ３３５に示す処理は、サーバ通知情報が代替サーバ通知情報となる点を除き、Ｓ３２２〜Ｓ３２５に示す処理と同様である。
【００４２】
次に、Ｓ３３６において、性能情報収集部３２は、性能情報管理テーブル３５を参照し、代替サーバ通知情報に含まれている障害等発生サーバＩＤを持つサブテーブル３５０を特定し、特定したサブテーブル３５０の統合Ｗｅｂサービス対象３５２０を旅行予約サービス「利用中」から「利用停止中」に変更する。次に、性能情報収集部３２は、代替サーバ通知情報に含まれている代替サーバＩＤを持つサブテーブル３５０を特定し、特定したサブテーブル３５０の統合Ｗｅｂサービス対象３５２０を旅行予約サービス「利用停止中」から「利用中」に変更する。これにより、旅行予約サービスに利用されているＷｅｂＡＰサーバ２を更新する。
【００４３】
図１１は監視サーバ３の性能低下・障害検出部３３の動作フローを説明するための図である。
【００４４】
まず、性能低下・障害検出部３３は、定期的に、統合Ｗｅｂサービス対象３５２０が旅行予約サービス「利用中」であるサブテーブル３５０を、性能情報管理テーブル３５から検索する（Ｓ３４１）。また、検索したサブテーブル３５０のサーバＩＤ３５１０がフィールド３６１に登録されているレコード３６０を閾値管理テーブル３６から検索する（Ｓ３４２）。そして、検索したサブテーブル３５０毎に、フィールド３５３１に登録されている計測時刻が最新のレコード３５３０を特定し、特定したレコード３５３０のフィールド３５３２に登録されている応答時間の計測値が、サブテーブル３５０のサーバＩＤ３５１０がフィールド３６１に登録されているレコード３６０のフィールド３６２に登録されている閾値を超えているか否かを判断する（Ｓ３４３）。
【００４５】
最新の計測時刻を持つレコード３５３０の応答時間の計測値が閾値を超えているサブテーブル３５０が存在する場合（Ｓ３４３でＹＥＳ）、性能低下・障害検出部３３は、このサブテーブル３５０のサーバＩＤ３５１０を持つＷｅｂＡＰサーバ２を、性能低下もしくは障害が発生しているＷｅｂＡＰサーバ２と判断する。この場合、このＷｅｂＡＰサーバ２のサーバＩＤを含む性能低下・障害通知情報を生成し、ネットワークＩＦ部３１を介して、統合Ｗｅｂ管理サーバ１に送信する（Ｓ３４４）。
【００４６】
図１に戻って説明を続ける。応答計測装置４は、監視サーバ３よりの指示に従いＷｅｂＡＰサーバ２の応答性能情報を計測する。
【００４７】
図１２は、応答計測装置４の概略図である。図示するように、応答計測装置４は、ネットワーク６を介して他の装置と通信を行なうためのネットワークＩＦ部４１と、性能情報測定部４２と、ＷｅｂＡＰサーバ２に送信する架空のリクエスト（ＳＯＡＰメッセージ）を格納するＳＯＡＰメッセージ格納部４３と、を有する。
【００４８】
性能情報測定部４２は、監視サーバ３よりの指示に従い、ＷｅｂＡＰサーバ２の応答時間を計測し、計測結果を監視サーバ３に送信する。
【００４９】
図１３は応答計測装置４の性能情報測定部４２の動作フローを説明する図である。
【００５０】
性能情報測定４２は、ネットワークＩＦ部４１を介して監視サーバ３から計測開始要求情報を受信すると（Ｓ４０１でＹＥＳ）、受信した計測開始要求情報に含まれているサーバＩＤ、ＳＯＡＰメッセージ（架空のリクエスト）を互いに対応付けてＳＯＡＰメッセージ格納部４４に登録する（Ｓ４０２）。その後、定期的に（Ｓ４０３）、ＳＯＡＰメッセージ格納部４４に登録されているＳＯＡＰメッセージ（リクエスト）を、ネットワークＩＦ部４１を介して、当該ＳＯＡＰメッセージに対応付けられてＳＯＡＰメッセージ格納部４４に登録されているサーバＩＤを持つＷｅｂＡＰサーバ２に送信し（Ｓ４０４）、当該ＷｅｂＡＰサーバ２から当該ＳＯＡＰメッセージに対する応答（ＳＯＡＰメッセージ）を受信する（Ｓ４０５）。また、性能情報測定部４２は、ＳＯＡＰメッセージを送信してから当該ＳＯＡＰメッセージに対する応答を受信するまでの時間（応答時間）を計測し（Ｓ４０６）、その計測結果と、当該ＳＯＡＰメッセージに対応付けられてＳＯＡＰメッセージ格納部４４に登録されているサーバＩＤとを含む性能計測情報を生成し、ネットワークＩＦ部４１を介して監視サーバ３に送信する（Ｓ４０７）。
【００５１】
上述した統合ＷｅｂＡＰサーバ１、監視サーバ３および応答計測装置４は、例えば図１４に示すような、ＣＰＵ９０１と、メモリ９０２と、ＨＤＤ等の外部記憶装置９０３と、ＣＤ-ＲＯＭやＤＶＤ-ＲＯＭやＩＣカードなどの記憶媒体からデータを読み取る読取装置９０４と、キーボードやマウスなどの入力装置９０６と、モニタやプリンタなどの出力装置９０７と、ネットワーク６に接続するための通信装置９０８と、これらの各装置を接続するバス９０９と、を備えた一般的なコンピュータシステムにおいて、ＣＰＵ９０１がメモリ９０２上にロードされたプログラムを実行することで実現できる。このプログラムは、読取装置９０４を介して記憶媒体から、あるいは、通信装置９０８を介してネットワーク３から、外部記憶装置９０３にダウンロードされ、それから、メモリ９０２上にロードされてＣＰＵ９０１により実行されるようにしてもよい。あるいは、外部記憶装置９０３を経由せずに、メモリ９０２上に直接ロードされ、ＣＰＵ９０１により実行されるようにしてもよい。なお、この場合において、テーブル１５、３４〜３６、ＳＯＡＰメッセージ格納部４３にはメモリ９０２や外部記憶装置９０３が利用される。また、ネットワークＩＦ部１１、３１、４１には通信装置９０８が利用される。
【００５２】
次に、統合Ｗｅｂサービスに利用するいずれかのＷｅｂＡＰサーバ２に性能低下あるいは障害が発生した場合を例にとり、Ｗｅｂサービスシステム全体の動作を説明する。
【００５３】
図１５はＷｅｂサービスシステムの動作の一例を説明するための図である。
【００５４】
統合ＷｅｂＡＰサーバ１には、統合Ｗｅｂサービスに利用するＷｅｂＡＰサーバ２として、交通券予約サービスを行うＷｅｂＡＰサーバＡおよびホテル予約サービスを行うＷｅｂサーバＮが初期設定されているものとする。先ず、統合ＷｅｂＡＰサーバ２は、ＷｅｂＡＰサーバＡのサーバＩＤおよびＷｅｂＡＰサーバＮのサーバＩＤを含むサーバ通知情報を生成し、監視サーバ３に送信する（Ｔ１：図４のＳ１０２）。
【００５５】
監視サーバ３は、統合ＷｅｂＡＰサーバ１よりサーバ通知情報を受信すると、サーバ通知情報に含まれているサーバＩＤを持つＷｅｂＡＰサーバ２の応答性能情報が計測されているか否かを調べ、計測されていないならば、応答性能情報が計測されていないＷｅｂＡＰサーバ２の計測開始要求を生成し、これを応答計測装置４に送信する（Ｔ２：図９のＳ３２４）。
【００５６】
応答計測装置４は、計測開始要求を受信すると、計測対象のＷｅｂＡＰサーバ２（ＷｅｂＡＰサーバＡおよびＷｅｂＡＰサーバＮのいずれか）に架空のリクエストを送信し（Ｔ３：図１３のＳ４０４）、計測対象のＷｅｂＡＰサーバ２から応答を受信する（Ｔ４、５：図１３のＳ４０５）。そして、架空のリクエストを送信してから応答を受信するまでの応答時間を計測し、その計測結果を含む性能計測情報を監視サーバ３に送信する（Ｔ６：図１３のＳ４０７）。応答計測装置４は、この処理を繰り返す。
【００５７】
さて、監視サーバ３は、応答計測装置４から逐次送られてくる性能計測情報を監視する。そして、例えばＷｅｂＡＰサーバＡの応答時間の計測値が、ＷｅｂＡＰサーバＡに付与された閾値を超えたことを検出すると、ＷｅｂＡＰサーバＡの性能低下・障害発生通知を生成し、統合ＷｅｂＡＰサーバ１に送信する（Ｔ７：図１１のＳ３４４）。
【００５８】
統合ＷｅｂＡＰサーバ１は、ＷｅｂＡＰサーバＡの性能低下・障害発生通知を受信すると、ＷｅｂＡＰサーバＡと同じＷｅｂサービスつまり交通券予約サービスを行うＷｅｂＡｐサーバ２、例えばＷｅｂＡＰサーバＢを代替サーバとして選出し、代替サーバ通知情報を監視サーバ３に送信する（Ｔ８：図４のＳ１０６）。
【００５９】
監視サーバ３は、統合ＷｅｂＡＰサーバ１より代替サーバ通知情報を受信すると、代替サーバ通知情報に含まれている代替サーバＩＤを持つＷｅｂＡＰサーバ２の応答性能情報が計測されているか否かを調べ、計測されていないならば、代替サーバの計測開始要求を生成し、これを応答計測装置４に送信する（Ｔ９：図９のＳ３３４）。
【００６０】
応答計測装置４は、代替サーバの計測開始要求を受信すると、代替サーバであるＷｅｂＡＰサーバＢにも架空のリクエストを送信して（Ｔ１０：図１３のＳ４０４）、代替サーバから応答を受信する（Ｔ１１、１２、１３：図１３のＳ４０５）。これにより、応答時間の計測対象に代替サーバを追加する。
【００６１】
図１６は、図１５に示す動作例における統合ＷｅｂＡＰサーバ１、ＷｅｂＡＰサーバＡ（交通券予約サービス）２、ＷｅｂＡＰサーバＢ（交通券予約サービス）２およびＷｅｂＡＰサーバＮ（ホテル予約サービス）２の応答時間の推移を示した図である。
【００６２】
初期状態では、ＷｅｂＡＰサーバＡ（交通券予約サービス）２およびＷｅｂＡＰサーバＮ（ホテル予約サービス）２を用いて、統合ＷｅｂＡＰサーバ１の統合Ｗｅｂサービス（旅行予約サービス）が実現される。このため、統合ＷｅｂＡＰサーバ１の応答時間７０１は、ＷｅｂＡＰサーバＡ（交通券予約サービス）２の応答時間７０２およびＷｅｂＡＰサーバＮ（ホテル予約サービス）２の応答時間７０４の影響を受ける。したがって、ＷｅｂＡＰサーバＡ（交通券予約サービス）２の応答時間７０２が長くなると、これに合わせて統合ＷｅｂＡＰサーバ１の応答時間７０１も長くなる。
【００６３】
しかし、ＷｅｂＡＰサーバＡ(交通券予約サービス）２の応答時間が閾値（ここでは５分）を超えると（時刻ｔ１）、統合ＷｅｂＡＰサーバ１の統合Ｗｅｂサービスに用いるＷｅｂＡＰサーバ２として、ＷｅｂＡＰサーバＡ（交通券予約サービス）２から同じＷｅｂサービスを提供するＷｅｂＡＰサーバＢ（交通券予約サービス）２に切り替わる（時刻ｔ２）。そして、ＷｅｂＡＰサーバＢ（交通券予約サービス）２の応答時間７０３が短いため、統合ＷｅｂＡＰサーバ１の応答時間７０１も短くなる。
【００６４】
以上、本発明の一実施形態について説明した。
【００６５】
本実施形態によれば、統合ＷｅｂＡＰサーバ１が利用するいずれかのＷｅｂＡＰサーバ２に性能低下もしくは障害が発生した場合、当該いずれかのＷｅｂＡＰサーン２から同じＷｅｂサービスを提供する代替ＷｅｂＡＰサーバ２に切り換え、代替ＷｅｂＡＰサーバ２を利用する。したがって、統合ＷｅｂＡＰサーバ１が提供する統合Ｗｅｂサービスの全体としての性能低下等を防止できる。
【００６６】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、統合ＷｅｂＡＰサーバ１が提供する統合Ｗｅｂサービスが、少なくとも２つのＷｅｂＡＰサーバ２が提供するＷｅｂサービスである交通券予約サービスと、他の少なくとも２つのＷｅｂＡＰサーバ２が提供するＷｅｂサービスであるホテル予約サービスとを組み合わせたものである場合を例にとり説明した。しかし、本発明はこれに限定されない。統合ＷｅｂＡＰサーバ１が提供する統合Ｗｅｂサービスは、それぞれ、少なくとも２つのＷｅｂＡＰサーバ２が提供する異なるＷｅｂサービスを組み合わせたものであればよい。
【００６７】
また、上記の実施形態では、１つの応答計測装置４が１つのＷｅｂＡＰサーバ２の応答性能情報を計測する場合を例にとり説明した。しかし、本発明はこれに限定されない。１つの応答計測装置４で複数のＷｅｂＡＰサーバ２の応答性能情報を計測するようにしてもよい。
【００６８】
また、上記の実施形態では、統合ＷｅｂＡＰサーバ１、監視サーバ３および応答計測装置４は、それぞれ別個のコンピュータで実現する場合を例にとり説明したが、本発明はこれに限定されない。例えば、統合ＷｅｂＡＰサーバ１と監視サーバ３とを１つのコンピュータで実現してもよい。あるいは、監視サーバ３と応答計測装置４とを１つのコンピュータで実現してもよい。
【００６９】
また、上記の実施形態では、ＷｅｂＡＰサーバ２の性能情報として、応答計測装置４がリクエストに対する応答時間を計測する場合を例にとり説明したが、本発明はこれに限定されない。例えば、各ＷｅｂＡＰサーバ２に待ちキューの長さを計測するキュー長計測手段を設け、計測したキュー長を監視サーバ３に通知することにより、監視サーバ３が、キュー長に基づいて性能低下または障害発生を検出するようにしてもよい。
【００７０】
また、上記の実施形態において、統合ＷｅｂＡＰサーバ１のＷｅｂＡＰサーバ管理部１４は、性能低下もしくは障害が発生したＷｅｂＡＰサーバ２の代替サーバとして、性能低下もしくは障害が発生したＷｅｂＡＰサーバ２と同じサービス種別のＷｅｂサービスを提供するＷｅｂＡＰサーバ２であって、統合Ｗｅｂサービスに利用されていないＷｅｂＡＰサーバ２（候補サーバと呼ぶ）の中から１つのＷｅｂＡｐサーバ２を、ＷｅｂＡＰサーバ管理テーブル１５を用いて選択している。ここで、各候補サーバの性能情報を考慮して、代替サーバを選択するようにしてもよい。この場合、監視サーバ３の性能情報収集部３２に、全てのＷｅｂＡＰサーバ２の応答性能を計測させる。そして、性能低下・障害検出部３３に、性能低下もしくは障害が発生したＷｅｂＡＰサーバ２のサーバＩＤと、各ＷｅｂＡＰサーバ２の測定結果とを含む性能低下・障害通知を、統合ＷｅｂＡＰサーバ１に送信させる。統合ＷｅｂＡＰサーバ１のＷｅｂＡＰサーバ管理部１４は、性能低下・障害通知に含まれている各候補サーバの応答性能の計測値を参照し、性能低下が最も小さい（応答時間が最も短い）候補サーバを代替サーバとして選択する。
【図面の簡単な説明】
【００７１】
【図１】図１は本発明の一実施形態が適用されたＷｅｂサービスシステムの概略図である。
【図２】図２は統合ＷｅｂＡＰサーバ１の概略図である。
【図３】図３はＷｅｂサーバ管理テーブル１５の登録内容例を示す図である。
【図４】図４は統合ＷｅｂＡＰサーバ１のＷｅｂＡＰサーバ管理部１４の動作フローを説明するための図である。
【図５】図５は監視サーバ３の概略図である。
【図６】図６は応答計測装置管理テーブル３４の登録内容例を示す図である。
【図７】図７は応答計測装置管理テーブル３４の登録内容例を示す図である。
【図８】図８は閾値管理テーブル３６の登録内容例を示す図である。
【図９】図９は監視サーバ３の性能情報収集部３２の動作フローを説明するための図である。
【図１０】図１０は監視サーバ３におけるＳＯＡＰメッセージの作成処理の一例を説明するための図である。
【図１１】図１１は監視サーバ３の性能低下・障害検出部３３の動作フローを説明するための図である。
【図１２】図１２は応答計測装置４の概略図である。
【図１３】図１３は応答計測装置４の性能情報測定部４２の動作フローを説明する図である。
【図１４】図１４は統合ＷｅｂＡＰサーバ１、監視サーバ３および応答計測装置４のハードウエア構成例を示す図である。
【図１５】図１５はＷｅｂサービスシステムの動作の一例を説明するための図である。
【図１６】図１６は図１５に示す動作例における統合ＷｅｂＡＰサーバ１、ＷｅｂＡＰサーバＡ（交通券予約サービス）２、ＷｅｂＡＰサーバＢ（交通券予約サービス）２およびＷｅｂＡＰサーバＮ（ホテル予約サービス）２の応答時間の推移を示した図である。
【符号の説明】
【００７２】
１…統合ＷｅｂＡＰサーバ、２…ＷｅｂＡＰサーバ、３…監視サーバ、４…応答計測装置、５…リクエスタ、６…ネットワーク、１１…ネットワークＩＦ部、１２…Ｗｅｂサービス部、１３…リクエスタ部、１４…ＷｅｂＡＰサーバ管理部、１５…ＷｅｂＡＰサーバ管理テーブル、３１…ネットワークＩＦ部、３２…性能情報収集部、３３…性能低下・障害検出部、３４…応答計測装置管理テーブル、３５…性能情報管理テーブル、３６…閾値管理テーブル、４１…ネットワークＩＦ部、４２…性能情報測定部、４３…ＳＯＡＰメッセージ格納部
【図１】
2006195709.tif 000003
【図２】
2006195709.tif 000004
【図３】
2006195709.tif 000005
【図４】
2006195709.tif 000006
【図５】
2006195709.tif 000007
【図６】
2006195709.tif 000008
【図７】
2006195709.tif 000009
【図８】
2006195709.tif 000010
【図９】
2006195709.tif 000011
【図１０】
2006195709.tif 000012
【図１１】
2006195709.tif 000013
【図１２】
2006195709.tif 000014
【図１３】
2006195709.tif 000015
【図１４】
2006195709.tif 000016
【図１５】
2006195709.tif 000017
【図１６】
2006195709.tif 000018