(57)【特許請求の範囲】
【請求項１】
ネットワークに接続された複数のサービスコンポーネントを利用して提供されるウェブサービスにおいて、複数の前記サービスコンポーネントの状態を監視するウェブサービス監視システムであって、
前記サービスコンポーネントに対する実行要求を送信するか否かの情報と、監視対象の前記サービスコンポーネントの情報とを保持する第１の記憶手段と、
前記第１の記憶手段に保持された監視対象の前記サービスコンポーネントの情報に基づいて、該監視対象の前記サービスコンポーネントにおいて実行中の処理内容があるか否かを確認する処理内容の有無確認指示を出力し、該処理内容の有無確認指示に対する返答結果が、実行中の処理内容がない場合に、監視の実行を指示する監視実行指示を出力する監視制御手段と、
前記監視制御手段からの前記処理内容の有無確認指示に応じて、監視対象の前記サービスコンポーネントのそれぞれに対する処理の実行指示を出力し、それぞれの前記サービスコンポーネントからの応答に基づいて、該監視対象の前記サービスコンポーネントにおいて実行中の処理内容があるか否かを確認し、該確認した結果を返答し、前記監視制御手段からの前記監視実行指示に応じて、監視対象の前記サービスコンポーネントのそれぞれに対する処理の実行指示を出力し、それぞれの前記サービスコンポーネントからの応答に基づいて、該監視対象の前記サービスコンポーネントが利用できるか否かを監視する監視実行手段と、
前記監視実行手段からの前記実行指示を、前記サービスコンポーネントのそれぞれに送信し、該実行指示に応じて送信された前記サービスコンポーネントのそれぞれからの応答を前記監視実行手段に出力する実行指示送信手段と、
前記サービスコンポーネントが利用できるか否かの情報を保持する第２の記憶手段と、
前記監視実行手段による監視の結果に応じて前記第１の記憶手段に保持された前記サービスコンポーネントに対する実行要求を送信するか否かの情報、および前記第２の記憶手段に保持された前記サービスコンポーネントが利用できるか否かの情報を更新する更新手段と、
を備えることを特徴とするサービス監視システム。
【請求項２】
前記監視実行手段は、
監視対象の前記サービスコンポーネントを一定時間毎に監視し、
前記監視実行手段による監視の結果、監視対象の前記サービスコンポーネントのいずれかに実行中の処理内容がある場合には、現在の周期における前記監視指示の出力を中止する、
ことを特徴とする請求項１に記載のサービス監視システム。
【請求項３】
前記監視実行手段による監視の結果に応じて、前記サービスコンポーネントの提供者に通知を行う通知手段、
をさらに備えることを特徴とする請求項２に記載のサービス監視システム。
【請求項４】
前記サービスコンポーネントを検索する際に、前記第２の記憶手段に利用可能であるとの情報が保持されている前記サービスコンポーネントのみを検索結果として応答する検索応答手段、
をさらに備えることを特徴とする請求項２に記載のサービス監視システム。
【請求項５】
ネットワークに接続された複数のサービスコンポーネントを利用して提供されるウェブサービスにおいて、複数の前記サービスコンポーネントの状態を監視するウェブサービス監視方法であって、
前記サービスコンポーネントに対する実行要求を送信するか否かの情報と、監視対象の前記サービスコンポーネントの情報とを保持する第１の記憶手段に保持された、監視対象の前記サービスコンポーネントの情報に基づいて、該監視対象の前記サービスコンポーネントにおいて実行中の処理内容があるか否かを確認する処理内容の有無確認指示を出力し、該処理内容の有無確認指示に対する返答結果が、実行中の処理内容がない場合に、監視の実行を指示する監視実行指示を出力する監視制御手順と、
前記監視制御手順による前記処理内容の有無確認指示に応じて、監視対象の前記サービスコンポーネントのそれぞれに対する処理の実行指示を出力し、それぞれの前記サービスコンポーネントからの応答に基づいて、該監視対象の前記サービスコンポーネントにおいて実行中の処理内容があるか否かを確認し、該確認した結果を返答し、前記監視制御手順による前記監視実行指示に応じて、監視対象の前記サービスコンポーネントのそれぞれに対する処理の実行指示を出力し、それぞれの前記サービスコンポーネントからの応答に基づいて、該監視対象の前記サービスコンポーネントが利用できるか否かを監視する監視実行手順と、
前記監視実行手順による前記実行指示を、前記サービスコンポーネントのそれぞれに送信し、該実行指示に応じて送信された前記サービスコンポーネントのそれぞれからの応答を前記監視実行手順に出力する実行指示送信手順と、
前記監視実行手順による前記監視の結果に応じて前記第１の記憶手段に保持された前記サービスコンポーネントに対する実行要求を送信するか否かの情報、および前記サービスコンポーネントが利用できるか否かの情報を保持する第２の記憶手段に保持された該情報を更新する更新手順と、
を含むことを特徴とするサービス監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェブサービス等のネットワークに接続されたサービスコンポーネントを利用するシステムにおいて、サービスコンポーネントの状態を監視する技術に関する。
【背景技術】
【０００２】
一般に、ネットワークに接続されたウェブコンポーネントサーバが提供するサービスコンポーネント（ソフトウェアの部品）の機能を、ネットワークを通じて利用するウェブサービス等のシステムがある。
【０００３】
インターネットやイントラネット等のネットワーク系システムは、テレコム系システムに比べて信頼性が低いという状況にあるが、サービス利用者は、通信サービス事業者における当該ネットワークが一定のサービス水準を維持することを保証するＳＬＡ（Service Level Agreement：サービス品質保証制度）の保証項目である、サービス利用の可用性を示すサービス利用不能率（サービス稼働率）を過去の履歴として参考にして、通信サービス事業者の信頼性を確認している。非特許文献１では、サービスの公開状態の更新方法に関して、サービス合成技術を利用して、意味的サービステンプレート（ＳＴ）に基づき、サービス合成エンジンが、必要なサービス要素（ＳＥ）を発見して、結合することにより、動的にサービスを合成する連携サービスを実現している。
【０００４】
また、ウェブサービスシステムは、テレコム系システムに比べ信頼性が低いことから、非特許文献２では、サービスコンポーネントへのリクエストのプロキシとして動作し、認証認可、トラフィック制御などにより、サービス利用認可を行う実行制御機能を提供している。
【非特許文献１】山登庸次，仲辻真，須永浩，“ユビキタス環境で動的にサービスを実現するためのサービス合成技術”，情報処理学会論文誌  Vol.48 No.2，P.562-577，Feb.2007
【非特許文献２】H.Ohnishi，et all，“Service delivery platform for telecom-enterprise-Internet combined services.”，IEEE GLOBECOM2007，Nov.2007
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、複数のウェブコンポーネントサーバやサービスコンポーネントを連携して利用する電子商取引等のウェブサービスシステムにおいて、非特許文献１は、動的に連携したサービスを実現するが、サービスコンポーネントが停止している場合でも当該データベースが検索され、サービス利用者が、サービスコンポーネントを実行するまで正常に動作しているか確認できないという問題がある。
【０００６】
また、非特許文献２は、サービス利用認可を行う実行制御機能を提供するが、サービスコンポーネントの利用可否状態は考慮されていないため、サービスコンポーネントを実行するまで正常に動作しているか確認できないという問題がある。
【０００７】
本発明は、上記の課題認識に基づいてなされたものであり、複数のウェブコンポーネントサーバやサービスコンポーネントが連携して実現されるウェブサービスの実行途中で処理が完了できないという問題を防ぐことを目的としている。
【課題を解決するための手段】
【０００８】
上記の課題を解決するため、本発明のサービス監視システムは、ネットワークに接続された複数のサービスコンポーネントを利用して提供されるウェブサービスにおいて、複数の前記サービスコンポーネントの状態を監視するウェブサービス監視システムであって、前記サービスコンポーネントに対する実行要求を送信するか否かの情報と、監視対象の前記サービスコンポーネントの情報とを保持する第１の記憶手段と、前記第１の記憶手段に保持された監視対象の前記サービスコンポーネントの情報に基づいて、該監視対象の前記サービスコンポーネントにおいて実行中の処理内容があるか否かを確認する処理内容の有無確認指示を出力し、該処理内容の有無確認指示に対する返答結果が、実行中の処理内容がない場合に、監視の実行を指示する監視実行指示を出力する監視制御手段と、前記監視制御手段からの前記処理内容の有無確認指示に応じて、監視対象の前記サービスコンポーネントのそれぞれに対する処理の実行指示を出力し、それぞれの前記サービスコンポーネントからの応答に基づいて、該監視対象の前記サービスコンポーネントにおいて実行中の処理内容があるか否かを確認し、該確認した結果を返答し、前記監視制御手段からの前記監視実行指示に応じて、監視対象の前記サービスコンポーネントのそれぞれに対する処理の実行指示を出力し、それぞれの前記サービスコンポーネントからの応答に基づいて、該監視対象の前記サービスコンポーネントが利用できるか否かを監視する監視実行手段と、前記監視実行手段からの前記実行指示を、前記サービスコンポーネントのそれぞれに送信し、該実行指示に応じて送信された前記サービスコンポーネントのそれぞれからの応答を前記監視実行手段に出力する実行指示送信手段と、前記サービスコンポーネントが利用できるか否かの情報を保持する第２の記憶手段と、前記監視実行手段による監視の結果に応じて前記第１の記憶手段に保持された前記サービスコンポーネントに対する実行要求を送信するか否かの情報、および前記第２の記憶手段に保持された前記サービスコンポーネントが利用できるか否かの情報を更新する更新手段と、を備えることを特徴とする。
これにより、サービスコンポーネント毎に利用できるか否かを監視することができ、利用できない、すなわち、実行中の処理内容があるために停止しているサービスコンポーネントには実行要求を送信しないため、サービス全体の処理が完了しないことを防ぐという効果が得られる。
【００１０】
また、本発明の前記監視実行手段は、監視対象の前記サービスコンポーネントを一定時間毎に監視し、前記監視実行手段による監視の結果、監視対象の前記サービスコンポーネントのいずれかに実行中の処理内容がある場合には、現在の周期における前記監視指示の出力を中止する、ことを特徴とする。
これにより、常に監視を継続して行うことができ、安定したウェブサービスを提供する
ことができるという効果が得られる。
【００１１】
また、本発明のサービス監視システムは、前記監視実行手段による監視の結果に応じて、前記サービスコンポーネントの提供者に通知を行う通知手段、をさらに備えることを特徴とする。
これにより、サービスコンポーネント提供者は、サービスコンポーネントが停止した場
合の保守を迅速に行うことができるという効果が得られる。
【００１２】
また、本発明のサービス監視システムは、前記サービスコンポーネントを検索する際に、前記第２の記憶手段に利用可能であるとの情報が保持されている前記サービスコンポーネントのみを検索結果として応答する検索応答手段、をさらに備えることを特徴とする。
これにより、サービス利用者が、サービスコンポーネントを検索した際に停止しているサービスコンポーネントは発見されないため、代替のサービスコンポーネントを選択することができるという効果が得られる。
【００１３】
また、本発明のサービス監視方法は、ネットワークに接続された複数のサービスコンポーネントを利用して提供されるウェブサービスにおいて、複数の前記サービスコンポーネントの状態を監視するウェブサービス監視方法であって、前記サービスコンポーネントに対する実行要求を送信するか否かの情報と、監視対象の前記サービスコンポーネントの情報とを保持する第１の記憶手段に保持された、監視対象の前記サービスコンポーネントの情報に基づいて、該監視対象の前記サービスコンポーネントにおいて実行中の処理内容があるか否かを確認する処理内容の有無確認指示を出力し、該処理内容の有無確認指示に対する返答結果が、実行中の処理内容がない場合に、監視の実行を指示する監視実行指示を出力する監視制御手順と、前記監視制御手順による前記処理内容の有無確認指示に応じて、監視対象の前記サービスコンポーネントのそれぞれに対する処理の実行指示を出力し、それぞれの前記サービスコンポーネントからの応答に基づいて、該監視対象の前記サービスコンポーネントにおいて実行中の処理内容があるか否かを確認し、該確認した結果を返答し、前記監視制御手順による前記監視実行指示に応じて、監視対象の前記サービスコンポーネントのそれぞれに対する処理の実行指示を出力し、それぞれの前記サービスコンポーネントからの応答に基づいて、該監視対象の前記サービスコンポーネントが利用できるか否かを監視する監視実行手順と、前記監視実行手順による前記実行指示を、前記サービスコンポーネントのそれぞれに送信し、該実行指示に応じて送信された前記サービスコンポーネントのそれぞれからの応答を前記監視実行手順に出力する実行指示送信手順と、前記監視実行手順による前記監視の結果に応じて前記第１の記憶手段に保持された前記サービスコンポーネントに対する実行要求を送信するか否かの情報、および前記サービスコンポーネントが利用できるか否かの情報を保持する第２の記憶手段に保持された該情報を更新する更新手順と、を含むことを特徴とする。
これにより、サービスコンポーネントの利用可能状況に応じた起動制御が行えるという
効果が得られる。
【００１４】
この上記の処理をプログラム化することにより、ネットワークに接続されたウェブコンポーネントサーバが提供するサービスコンポーネントの機能を、ネットワークを通じて利用するウェブサービスにおいて、サービスコンポーネントの監視を行い、監視結果に基づいたサービスコンポーネントの稼働状況の更新を中断なく行うことが可能となる。
【発明の効果】
【００１５】
以上説明したように、本発明によれば、インターネットやイントラネットで標準的に用いられるドキュメントサービスであるワールドワイドウェブ（ＷＷＷ）の技術を用いて、ネットワークを通じて接続された複数のウェブコンポーネントサーバやサービスコンポーネントが連携して実現されるウェブサービスの実行途中で処理が完了できないという問題を防ぐことができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の一実施形態について、図面を参照して説明する。ウェブサービスの利用は、サービス利用者が通常利用する通常利用時と、監視システムが監視を行う監視実行時がある。
【００１７】
図１は、本実施形態によるサービス監視システムを利用したウェブサービスシステムのシステム構成を示したブロック図である。図１において、ウェブサービスシステムは、サービス実行サーバ１１、ウェブサービス監視サーバ１２、ウェブコンポーネントサーバ１３、サービス状態記憶サーバ１４、および、検索エンジン１５から構成される。
【００１８】
図１のウェブサービスシステムを通常利用する場合は、サービス利用者が、当該サービス利用者が管理するサービス利用者コンピュータ１７を操作し、サービス実行サーバ１１を介して、ウェブコンポーネントサーバ１３に実装されているソフトウェア機能であるサービスコンポーネントに実行要求を送信する。ウェブコンポーネントサーバ１３に実装されているソフトウェア機能の例として、電子商取引や航空券予約がある。このウェブサービスシステムにおいて、利用可能なサービスコンポーネントを検索する場合は、サービス利用者コンピュータ１７を操作し、検索エンジン１５を介して、サービス状態記憶サーバ１４の情報を検索する。
【００１９】
サービス実行サーバ１１は、サービスコンポーネント毎にサービス利用者コンピュータ１７からの実行要求を送信するか否かの情報と、どのサービスコンポーネントを監視するかの情報が登録されたデータベース（以下サービス実行データベースという）を含むサーバである。サービスコンポーネントを実行する際、通常利用時はサービス利用者が利用者コンピュータ１７を操作して、サービスコンポーネントの利用要求を送信し、サービス利用者から利用要求があったサービスコンポーネントに対応したサービス実行データベースの情報に従い、実行要求を送信する。また、ウェブサービスシステムの保守管理者１８のコマンド操作により、サービス実行データベースに記憶されている、監視するサービスコンポーネントの追加、削除、および、当該サービスコンポーネントの実行要求を送信するか否かのデータを変更することができる。サービスコンポーネントの監視実行時は、ウェブサービス監視サーバ１２からの情報提供要求を受けて、サービス実行データベースを参照して、どのサービスコンポーネントを監視するかの情報を提供する。また、ウェブサービス監視サーバ１２のからのサービスコンポーネント監視結果を取得して、サービス実行データベースに記憶しているサービスコンポーネントへの実行要求を送信するか否かのデータを更新する。
【００２０】
ウェブサービス監視サーバ１２は、一定周期でサービスコンポーネントの監視を行うサーバであり、通常利用時は、ウェブサービスの利用に関与しない。サービスコンポーネントの監視実行時は、サービス実行サーバ１１に対して、どのサービスコンポーネントを監視するかの情報提供を要求し、サービス実行サーバ１１から監視対象とするサービスコンポーネントの情報を受け取り、ネットワークに接続されたウェブコンポーネントサーバ１３が実装しているサービスコンポーネントの中の監視対象のサービスコンポーネントが利用できるか否かを監視する。その監視結果に応じてサービス実行サーバ１１および、サービス状態記憶サーバ１４に対して、当該サービスコンポーネントに対応するデータベースを更新するための要求を行う。また、監視したサービスコンポーネントが停止している場合は、サービスコンポーネント提供者コンピュータ１６に警告音の発信命令、電子メールによる通知等で、サービスコンポーネント提供者にアラーム通知する。
【００２１】
ウェブコンポーネントサーバ１３は、１または複数のサービスコンポーネントを実装し、サービスコンポーネントの実行要求を受けて、提供しているサービスコンポーネントを実行し、結果を応答するサーバである。通常利用時は、サービス利用者が要求し、サービス実行サーバ１１からの実行要求に対して、サービスコンポーネントの機能を実行し、結果を応答する。サービスコンポーネントの監視実行時は、ウェブサービス監視サーバ１２からの監視要求に対して、サービスコンポーネントの機能を実行し、結果を応答する。このウェブコンポーネントサーバ１３は、サービスコンポーネント提供者の管理するサーバであり、サービスコンポーネント提供者コンピュータ１６と同一であっても本発明の趣旨を逸脱しない。
【００２２】
サービス状態記憶サーバ１４は、サービスコンポーネントを利用する際に、サービスコンポーネント毎の利用できるか否かの情報が登録されたデータベース（以下サービス利用データベースという）を含むサーバである。通常利用時は、サービス利用者からの検索要求を受けた検索エンジン１５からの要求を受けて、利用可能なサービスコンポーネントの情報を検索し、その結果を検索エンジン１５に応答する。サービスコンポーネントの監視実行時は、ウェブサービス監視サーバ１２からのサービスコンポーネント監視結果を取得して、サービス利用データベースに記憶しているサービスコンポーネントの検索を許可するか否かのデータを更新する。また、停止しているサービスコンポーネントの判別のために、検索エンジン１５からすべてのデータを参照する要求があった場合は、サービスコンポーネントが利用できるか否かを表すサービスコンポーネント毎のデータを提供する。
【００２３】
検索エンジン１５は、ウェブサービスシステムで提供しているサービスコンポーネントの検索を行うコンピュータであり、サービス状態記憶サーバ１４からの利用可能なサービスコンポーネントの情報を受け取り、サービス利用者コンピュータにサービスコンポーネントの検索結果を提示する。
【００２４】
サービスコンポーネント提供者コンピュータ１６は、サービスコンポーネント提供者が管理しているコンピュータであり、ウェブコンポーネントサーバ１３および、提供しているサービスコンポーネントの管理に使用され、ウェブサービス監視サーバ１２の監視結果によるアラーム通知を受け取り、サービスコンポーネント提供者にアラームの内容を伝える。
【００２５】
サービス利用者コンピュータ１７は、ウェブサービスを利用するサービス利用者が通常利用時に使用するコンピュータである。サービス利用者は、サービス利用者コンピュータ１７を操作して、提供されているサービスコンポーネントの検索や実行要求といったウェブサービスシステムの通常機能を利用することができる。
【００２６】
以上のように、ウェブサービス監視サーバ１２は、ウェブサービス全体としての定期的なサービスコンポーネントを監視する。そして、停止しているサービスコンポーネントがある場合は、サービス実行サーバ１１のサービス実行データベースを自動的に更新する。また、サービス状態記憶サーバ１４のサービス利用データベースを自動的に更新する。これにより、検索エンジン１５の検索で代替のサービスコンポーネントの検索が可能となり、サービス利用者は、代替のサービスコンポーネントを選択することができる。また、サービスコンポーネント提供者に対して、サービスが停止していることをアラーム通知する付加価値サービスを提供することができる。
【００２７】
次に、サービスコンポーネントの監視方法について説明する。
図２は、図１に示したウェブサービスシステムにおいて、監視処理を行うための詳細な構成を示したブロック図である。図２において、サービス実行サーバ１１は、サービス実行データベース１１１と、サービス実行データベース更新受付部１１２と、を備え、ウェブサービス監視サーバ１２は、監視制御部１２１と、監視実行部１２２と、第１の通信制御部１２３と、第２の通信制御部１２４と、を備え、ウェブコンポーネントサーバ１３は、サービスコンポーネント１３１を備え、サービス状態記憶サーバ１４は、サービス利用データベース１４１と、サービス利用データベース更新受付部１４２と、を備えている。
【００２８】
サービス実行データベース更新受付部１１２は、ウェブサービス監視サーバ１２の第２の通信制御部１２４からのデータベース更新要求を受けて、サービス実行データベース１１１の対応するサービスコンポーネントの実行要求を送信するか否かのデータを更新する。
【００２９】
監視制御部１２１は、サービス実行サーバ１１のサービス実行データベース１１１から監視対象とするサービスコンポーネントの情報を受け取り、監視対象であるサービスコンポーネント１３１において実行中の処理内容が有るか否かの確認を監視実行部１２２に指示する。監視実行部１２２からの応答に監視対象とするサービスコンポーネント１３１における実行中の処理内容が残っていない場合は、監視実行部１２２に監視の実行を指示する。なお、実行中の処理内容が有るか否かの確認指示および、監視の実行指示は、サービス実行データベース１１１から入手した１または複数の監視対象とするサービスコンポーネント１３１のすべてに対して指示を行う。また、監視対象とするサービスコンポーネント１３１における実行中の処理内容が残っていた場合は、現在の周期での監視指示を中止する。
【００３０】
監視実行部１２２は、監視制御部１２１から処理内容の有無確認指示を受けた場合は、監視対象とするサービスコンポーネントに対する実行指示を、第１の通信制御部１２３に出力し、第１の通信制御部１２３経由して受け取ったウェブコンポーネントサーバ１３１からの応答に対して、実行中の処理内容が有るか否かを確認し、監視制御部１２１に結果を返答する。
監視制御部１２１から監視実行指示を受けた場合は、監視対象とするサービスコンポーネントに対する実行指示を第１の通信制御部１２３に出力し、第１の通信制御部１２３を経由して受け取ったウェブコンポーネントサーバ１３１からの応答に対して、利用できるか否かの判断を行う。なお、監視制御部１２１は、例えば、監視実行指示の送信によるウェブコンポーネントサーバ１３の応答データや、応答時間によって、監視対象とするサービスコンポーネント１３１が利用できるか否かの判断を行う。また、監視制御部１２１は、監視実行指示の送信および、ウェブコンポーネントサーバ１３の応答データの確認を予め設定された閾値の回数分繰り返した結果で総合的に判断を行う。
【００３１】
また、監視実行部１２２は、監視対象のサービスコンポーネント１３１が利用可能か否かの判断結果を第２の通信制御部１２４に通知する。
【００３２】
第１の通信制御部１２３は、監視実行部１２２からの監視実行の指示を受け取り、監視対象とするサービスコンポーネント１３１を実装しているウェブコンポーネントサーバ１３に適合するコマンド形式に変換して、当該ウェブコンポーネントサーバ１３に送信する。また、第１の通信制御部１２３は、監視コマンドを受けたウェブコンポーネントサーバ１３から返信された監視対象とするサービスコンポーネントの応答を、監視実行部１２２に適合する形式に変換して監視実行部１２２に提供する。
【００３３】
第２の通信制御部１２４は、監視実行部１２２から通知された、判断結果および、利用不可能となったサービスコンポーネント１３１の情報を基に、サービス実行サーバ１１のサービス実行データベース更新受付部１１２および、サービス状態記憶サーバ１４のサービス利用データベース更新受付部１４２に対して、サービスコンポーネント１３１のデータ更新要求を送信する。
【００３４】
サービス利用データベース更新受付部１４２は、ウェブサービス監視サーバ１２の第２の通信制御部１２４からのデータベース更新要求を受けて、サービス利用データベース１４１内の対応するデータであって、サービスコンポーネントが利用可能か否かを表すデータを更新する。
【００３５】
ウェブコンポーネントサーバ１３は、ウェブサービス監視サーバ１２の第１の通信制御部１２３からの監視コマンドを受け取り、実装しているサービスコンポーネント１３１を起動し、監視コマンドの実行結果をウェブサービス監視サーバ１２の第１の通信制御部１２３に送信する。
【００３６】
次に、サービスコンポーネントの監視手順について説明する。図３は、本実施形態によるウェブサービスシステム監視処理の手順を示したフローチャートである。
【００３７】
まず、監視制御部１２１は、ステップＳ１において、サービス実行データベース１１１から、監視対象のサービスコンポーネントの情報を取得する。
【００３８】
次に、監視制御部１２１は、ステップＳ２において、監視実行部１２２に対して、監視対象とするサービスコンポーネント１３１における実行中の処理を確認する指示を行い、
監視実行部１２２から戻される結果により、実行中の処理内容が有るか否かを判定する。また、監視対象とするサービスコンポーネント１３１に実行中の処理内容が残っていた場合は、現在の周期での監視処理を中止し、処理を最初に戻す。監視対象とするサービスコンポーネント１３１に実行中の処理内容が残っていない場合は、ステップＳ３において、監視実行部１２２に監視実行する指示を行う。
【００３９】
次に、監視実行部１２２は、ステップＳ４において、１または複数の監視対象サービスコンポーネント１３１を監視するため、第１の通信制御部１２３を介して、監視コマンドを発行する。
【００４０】
次に、監視実行部１２２は、ステップＳ５において、発行した監視コマンドに対するウェブコンポーネントサーバ１３からの応答に対する判断を、予め設定された閾値の回数分繰り返し、監視対象とするサービスコンポーネント１３１の利用可否判断を行い、利用可能である場合は、処理をステップＳ１に戻す。
【００４１】
次に、監視実行部１２２は、監視対象とするサービスコンポーネント１３１の少なくとも１つ以上に問題が発見された場合は、ステップＳ６において、サービス実行データベース更新受付部１１２に、停止しているサービスコンポーネント１３１に対する実行要求を転送しないよう、サービス状態記憶サーバ１４のサービス利用データベース更新受付部１４２に停止しているサービスコンポーネント１３１に対する利用を不可能とするよう、データ更新要求を出し、ステップＳ１に戻る。
【００４２】
以後、監視は一定周期で連続して実行する。
【００４３】
次に、本発明のサービス監視機能を実行するためのウェブコンポーネントサーバ１３のソフトウェア機能について説明する。
図４（Ａ）乃至図４（Ｃ）は、本実施形態によるウェブサービスシステムにおける、ウェブコンポーネントサーバ１３のソフトウェア構成の例を示した図である。
【００４４】
図４（Ａ）において、ウェブコンポーネントサーバ１３は、ＯＳ（オペレーティング・システム）４１、ウェブサーバ機能４２、ＳＯＡＰ（Simple Object Access Protocol）エンジン４３、サービスコンポーネント１３１、機能インターフェース（ＩＦ）１３２、監視用インターフェース（ＩＦ）１３３で構成される。この例は、サービスコンポーネント１３１に実装された監視用インターフェース１３３で監視が行われるものである。
【００４５】
ＯＳ４１は、コンピュータシステムを管理する基本ソフトウェアであり、本ウェブコンポーネントサーバ１３内で共通して利用される基本的な動作を提供し、管理を行っている。ウェブサーバ機能４２は、ＷＷＷシステムにおいて情報の送受信を行うソフトウェアで、本ウェブコンポーネントサーバ１３内でネットワークに対する通信制御機能を提供している。ＳＯＡＰエンジン４３は、ネットワークのプロトコル（通信規約）を利用して他のコンピュータとのデータ授受を行うソフトウェアで、本ウェブコンポーネントサーバ１３内で他のコンピュータからの要求をサービスコンポーネント１３１に伝え、サービスコンポーネント１３１の応答結果を他のコンピュータに伝える。
【００４６】
サービスコンポーネント１３１は、本実施形態によるサービス監視において、正常動作しているか停止しているかを監視する対象となるソフトウェアでウェブサービスシステムにおけるサービスを提供する機能の一つである。機能インターフェース１３２は、ウェブサービスシステムにおける通常利用時に使用されるインターフェースである。監視用インターフェース１３３は、本実施形態によるウェブサービス監視サーバ１２が監視実行時に使用するインターフェースであり、ウェブサービス監視サーバ１２は、監視用インターフェース１３３を動作させることでサービスコンポーネント１３１の監視を行う。
【００４７】
図４（Ａ）は、サービスコンポーネント提供者がサービスコンポーネント１３１に対する監視用インターフェース１３３を準備する方式で、本実施形態を利用する特定のプラットフォーム（ハードウェア環境）においては、監視用インターフェース１３３の監視を行い、サービスコンポーネント１３１が動作していることの確認ができる。この方式において、ウェブサービスシステムの保守管理者１８は、監視用インターフェース１３３を実現するためのプログラム言語仕様（例えば、ＷＳＤＬ：Web Service Description Language）をサービスコンポーネント提供者に配布し、サービスコンポーネント提供者は、提供されたプログラム仕様に基づいて監視用インターフェース１３３を実装することで、サービスコンポーネント１３１の監視が実現可能である。
【００４８】
図４（Ｂ）において、ウェブコンポーネントサーバ１３は、ＯＳ４１、ウェブサーバ機能４２、ＳＯＡＰエンジン４３、管理用コンポーネント４４、サービスコンポーネント１３１、機能インターフェース（ＩＦ）１３２、監視用インターフェース（ＩＦ）１３３で構成され、本実施形態による監視方式は、サービスコンポーネント１３１と連携して動作している管理用コンポーネント４４に実装された監視用インターフェース１３３で監視が行われるものである。
【００４９】
ＯＳ４１、ウェブサーバ機能４２、ＳＯＡＰエンジン４３、サービスコンポーネント１３１、機能インターフェース１３２は、図４Ａと同様の動作を提供している。
【００５０】
管理用コンポーネント４４は、サービスコンポーネント１３１の監視を目的としたソフトウェアで、監視インターフェース１３３からの要求を受けて、サービスコンポーネント１３１を実行させる。監視用インターフェース１３３は、本実施形態によるウェブサービス監視サーバによる監視時に使用されるインターフェースで、管理用コンポーネントと連携して動作し、ウェブ監視サーバ１２は、監視用インターフェース１３３を動作させることで、管理用コンポーネント４４を経由してサービスコンポーネント１３１の監視を行う。
【００５１】
図４（Ｂ）は、ウェブサービスシステムの保守管理者１８が監視インターフェース１３３を備えた管理用コンポーネント４４をサービスコンポーネント提供者に配布する方式で、本実施形態を利用する特定のプラットフォームにおいては、監視インターフェース１３３の監視を行うことで、サービスコンポーネント１３１が動作していることの確認ができ、監視結果の情報をサービスコンポーネント１３１が動作しているウェブサーバ機能４２まで展開することができる。この方式において、ウェブサービスシステムの保守管理者１８は、サービスコンポーネント提供者から、サービスコンポーネント１３１のプログラム言語仕様の提供を受けて、サービスコンポーネント提供者のサービスコンポーネント実行環境（例えば、Ａｘｉｓ，ＪＡＸ−ＷＳ，．ＮＥＴ，ＢＰＥＬ（Business Process Execution Language：ビジネスプロセスを記述・設計するための言語））にあった監視用コンポーネント４４を作成し、提供することで、サービスが動作しているミドルウェアまでの監視が可能であり、ウェブサービスシステムの保守管理者１８として、きめ細かな制御ができる。
【００５２】
図４（Ｃ）において、ウェブコンポーネントサーバ１３は、ＯＳ４１、ウェブサーバ機能４２、ＳＯＡＰエンジン４３、サービスコンポーネント１３１、機能インターフェース（ＩＦ）１３２で構成され、本実施形態による監視方式は、監視用インターフェースを備えることなく、サービスコンポーネント１３１の監視を行うものである。
【００５３】
ＯＳ４１、ウェブサーバ機能４２、ＳＯＡＰエンジン４３、サービスコンポーネント１３１、機能インターフェース１３２は、図４Ａと同様の動作を提供している。
【００５４】
図４（Ｃ）は、ウェブコンポーネントサーバ１３の上位のレイヤに監視用インターフェースを備けることなく、ネットワークの疎通を確認するＰｉｎｇコマンド等を低位のレイヤに発行することで、ウェブサーバ機能４２の動作を確認する方式である。この方式は、サービスコンポーネント提供者のサービスコンポーネント実行環境において、仮想エンドポイント（Ｌ／ＢやＨＴＴＰプロキシ等が介在）を採用している場合には、サービスコンポーネント１３１の動作までの監視ができず、サービスコンポーネント提供者の管理責任範囲が大きくなるが、あらゆるサービスコンポーネント提供者に対して適用することができる。
【００５５】
なお、上記の説明において、サービス利用者は、ＳＬＡの保証項目であるサービス利用不能率（サービス稼働率）を過去の履歴として参考にして、通信サービス事業者の信頼性を確認している。本発明のサービス監視システムおよび方法は、サービス状態そのものに対し、ウェブサービス監視サーバ１２により、定期的に監視を行っている。定期的に監視した結果でサービスコンポーネントが利用不可能と判断された場合、たまたまサービス利用者がいなかったことも考えられるので、監視結果の状態とＳＬＡにおけるサービス稼働率または、サービス利用不能率の結果は、一致しない。よって、監視によりサービスコンポーネントが利用不可能を判断された結果は、必ずしもＳＬＡ違反と限定しない。また、逆にサービス稼働率または、サービス利用不能率のＳＬＡ違反であっても、ＢＰＥＬ，ＥＳＢ（Enterprise Service Bus：ウェブサービス関連の標準技術をベースにシステム間のデータ連携を実現させる技術）等のプラットフォームの障害の場合もあり、監視したサービスコンポーネントは利用不可能とは限定しない。
【００５６】
また、サービス実行サーバ１１のサービス実行データベースの更新および、サービス状態記憶サーバ１４のサービス利用データベースの更新は、手動的に行うこともできる。また、サービスコンポーネント提供者への通知は、アラームによる警告、電子メールによる通知等、趣旨を逸脱しない範囲で変更できる。
【００５７】
なお、上述した実施形態におけるサービス監視システムの機能をコンピュータで実現する。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時刻の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時刻プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００５８】
上記に述べたとおり、本発明を実施するための最良の形態によれば、ウェブサービスシステムで利用できるサービスコンポーネントが正常に動作していることを監視し、連携しているデータベースを更新するので、常にウェブサービスを正常な状態で提供することが可能となる。
【００５９】
また、サービスコンポーネントが利用できるか否かの状態が監視されているため、サービス利用者には、停止しているサービスコンポーネントは発見されないため代替を選択できる。また、停止しているサービスコンポーネントには、サービス利用者の利用時にリクエストが転送されないため、連携サービスの手続きが完了できないという問題を防ぐこともできる。サービスコンポーネント提供者には、サービスコンポーネントが停止している場合に通知を受け取ることができるという利点がある。
【００６０】
本実施形態を利用する特定のプラットフォームに登録されたサービスコンポーネントの監視をプラットフォーム全体としてとして行うことで、テレコム系システムに比べ信頼が低いインターネットやイントラネット等のネットワーク系システムに対して、プラットフォーム全体および、登録されているサービスコンポーネントの連携の信頼性を高めることができ、以前は、通信サービス事業者が保証するＳＬＡにおいて、サービス稼働時間／（サービス稼働時間＋サービス停止時間）で求められるサービス稼働率または、サービス停止時間／（サービス稼働時間＋サービス停止時間）で求められるサービス利用不能率は、サービス利用者にとっては、過去の履歴を参考にした、通信サービス事業者の信頼性を確認する一指標としての利用であったのに対し、本発明のサービス監視システムおよび方法で、さらに、通信サービス事業者の信頼性を高め、関連サービスの重要性が一層高まることが期待できる。
【００６１】
以上、本発明の実施形態について、図１乃至図４を参照して説明してきたが、具体的な構成はこの実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲においての種々の変更も含まれる。
【図面の簡単な説明】
【００６２】
【図１】本発明の実施形態によるサービス監視システムを利用したウェブサービスシステムのシステム構成を示したブロック図である。
【図２】本発明の実施形態による図１に示したウェブサービスシステムにおいて、監視処理を行うための詳細な構成を示したブロック図である。
【図３】本発明の実施形態によるウェブサービスシステム監視処理を示したフローチャートである。
【図４】本発明の実施形態によるウェブサービスシステムにおける、ウェブコンポーネントサーバ１３のソフトウェア構成の例を示した図である。
【符号の説明】
【００６３】
１１  サービス実行サーバ  １２  ウェブサービス監視サーバ  １３  ウェブコンポーネントサーバ  １４  サービス状態記憶サーバ  １５  検索エンジン  １６  サービスコンポーネント提供者コンピュータ  １７  サービス利用者コンピュータ  １８  保守管理者  １１１  サービス実行データベース  １１２  サービス実行データベース更新受付部  １２１  監視制御部  １２２  監視実行部  
１２３、１１２４  通信制御部  １３１  サービスコンポーネント  １４１  サービス利用データベース  １４２  サービス利用データベース更新受付部  
４１  ＯＳ（Operating System）  ４２  ウェブサーバ機能  ４３  ＳＯＡＰ（Simple Object Access Protocol）エンジン  ４４  管理用コンポーネント  １３２  機能インターフェース  １３３  監視用インターフェース
【図１】
0005348907.tif 000002
【図２】
0005348907.tif 000003
【図３】
0005348907.tif 000004
【図４】
0005348907.tif 000005