(57)【要約】【課題】クライアントの接続数を一律的に制限することによるウェブサーバの処理効率の低下を防止することのできるウェブ監視制御システム、ウェブサーバ制御装置およびウェブサーバ制御プログラムを得ること。【解決手段】ウェブシステム安定化装置１０４は、情報収集部１７１が図示しないそれぞれのウェブサーバのリクエストの状況の報告を受け、システムリソースや同時接続数といった情報の統計がとられ統計管理用データベースに格納される。検査制御部１８１はこれらの統計とシステムリソースを比較して、検査結果を判定処理部１９１に出力する。判定結果実行部１９２は、これを元に、接続数についての制御を必要とするウェブサーバに接続の拡縮を指示することで、システムの安定運用を図る。【選択図】図３
2008250669.tif 000002
【特許請求の範囲】
【請求項１】
クライアントと接続する接続手段と、この接続手段によって接続したクライアントからのリクエストの内容を特定の宛先に逐次報告する報告手段と、前記特定の宛先からクライアントの接続数の拡縮についての通知を受ける通知受信手段と、この通知受信手段の受信した通知内容に応じて前記接続手段の接続を拡縮する接続制御手段とを備えた複数のウェブサーバと、
前記特定の宛先としてこれら複数のウェブサーバと接続され、前記報告手段から報告される内容を受信し、それぞれのウェブサーバのリソースの状態を監視する監視手段と、この監視手段の監視結果から前記複数のウェブサーバのそれぞれについてクライアントの接続数の拡縮を必要とするかを判定する判定手段と、この判定手段がクライアントの接続数の拡縮を必要とすると判定したときこれを該当するウェブサーバに通知する通知手段とを備えたウェブサーバ制御装置
とを具備することを特徴とするウェブ監視制御システム。
【請求項２】
前記監視手段は、前記報告手段から報告される内容の統計をとり、この統計の結果に基づいてクライアントのリクエストにより必要とされるデータ量との関係でそれぞれのウェブサーバのリソースの余剰が予め定めた適正値の範囲に保たれているかの監視を行う手段であり、前記通知手段はリソースの余剰が前記適正値の範囲よりも多いとき前記接続手段による接続数の拡張の指示を通知し、リソースの余剰が前記適正値の範囲よりも少ないときには接続数の減少による接続数の縮退の指示を通知することを特徴とする請求項１記載のウェブ監視制御システム。
【請求項３】
前記監視手段は、前記報告手段から報告される内容の統計をとり、この統計の結果に基づいて同一のリクエストを処理するウェブサーバ同士におけるリクエストの偏在を監視する手段であることを特徴とする請求項１記載のウェブ監視制御システム。
【請求項４】
前記監視手段は、前記報告手段から報告される内容の統計をとり、この統計の結果に基づいて前記複数のウェブサーバの障害やこれらのウェブサーバに関連するネットワーク障害を検出する手段であることを特徴とする請求項１記載のウェブ監視制御システム。
【請求項５】
複数のウェブサーバと接続され、これらのウェブサーバからこれらに対するクライアントからのリクエスト状況とこれらのリクエストに伴う必要なデータ量の報告を受ける報告受信手段と、
この報告受信手段の受信した報告に基づいて個々のウェブサーバの状況およびこれらのウェブサーバ全体の状況の統計をとる統計手段と、
この統計手段の統計を用いてそれぞれのウェブサーバのリソースの変動状態を監視する監視手段と、
この監視手段の監視結果からクライアントの接続数の拡縮を必要とするウェブサーバを判別する拡縮対象判別手段と、
この拡縮対象判別手段で拡縮を必要とすると判別されたウェブサーバに対して接続数の拡縮を行わせるための通知を行う拡縮通知手段
とを具備することを特徴とするウェブサーバ制御装置。
【請求項６】
複数のウェブサーバと接続され、これらに接続するクライアントの接続数を制御するウェブサーバ制御装置のコンピュータに、
前記複数のウェブサーバからこれらに対するクライアントからのリクエスト状況とこれらのリクエストに伴う必要なデータ量の報告を受ける報告受信処理と、
この報告受信処理で受信した報告に基づいて個々のウェブサーバの状況およびこれらのウェブサーバ全体の状況の統計をとる統計処理と、
この統計算出処理でとった統計を用いてそれぞれのウェブサーバのリソースの変動状態を監視する監視処理と、
この監視処理による監視結果からクライアントの接続数の拡縮を必要とするウェブサーバを判別する拡縮対象判別処理と、
この拡縮対象判別処理で拡縮を必要とすると判別されたウェブサーバに対して接続数の拡縮を行わせるための通知を行う拡縮通知処理
とを実行させることを特徴とするウェブサーバ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットに代表されるネットワークに接続された複数のコンピュータを用いて各種の情報を公開するウェブで、ウェブサーバの監視制御を行うウェブ監視制御システム、ウェブサーバ制御装置およびウェブサーバ制御プログラムに関する。
【背景技術】
【０００２】
たとえばインターネット上には各種のウェブサイトが存在しており、ウェブサーバがクライアントコンピュータ（以下、単にクライアントと称する。）の要求に応じて各種の情報を送信するようになっている。ウェブサーバはクライアントの要求したファイルを送信するファイル送信機能や、クライアントの要求したプログラムを実行して、その結果を返す実行結果送信機能を備えている。
【０００３】
インターネットを例にとると、各クライアントはウェブサーバに時間の制限なく自由にアクセスすることができる。したがって、ウェブサーバを立ち上げてウェブシステムを構築する際には、クライアントからのファイルの転送の要求やプログラムの実行結果の送信の要求といったリクエストが単位時間当たりどの程度であるかを予め予測して、このようなリクエストに余裕を持って対応できるようにウェブ全体のシステムリソースを配置することが行われている。たとえば、ウェブサーバを構成するコンピュータのＣＰＵ（Central Processing Unit；中央演算処理ユニット）の処理速度や搭載するメモリの容量を適切なものに設定すると共に、１台のウェブサーバで処理能力が十分でないとされる場合には複数台のウェブサーバに分散処理を行わせるといったことが行われている。
【０００４】
また、ウェブサーバのリソースにも余裕を持たせるようにしており、データ量の多いリクエストを短時間に大量に受け付けた場合を想定してクライアントに対する最大接続数の設定も行われている。
【０００５】
ところが、ウェブサーバが同時に接続できるクライアントの数を所定数に制限すると、接続中のクライアントの一部が接続を強制的に切断されるという不具合が発生する場合がある。これは、クライアントが接続中のウェブサーバから送られてきたデータに基づく画面の切り替えを要求したような場合に、これによる処理の中断中に他のクライアントの要求が割り込まれて処理される場合があったからである。
【０００６】
そこで、画面の切り替え時には、ウェブサーバが「画面の切替中」の管理状態のデータをそのクライアントに対して保持するようにして、他のクライアントの割り込みを阻止することが第１の提案として提案されている（たとえば特許文献１参照）。
【０００７】
また、複数のクライアントとこれらのアクセスの対象となる複数のウェブサーバとの間にトラフィックを制御するトラフィック制御装置を配置して、最大接続数との関係でそれぞれのウェブサーバに対する接続数を制御するようにした第２の提案も行われている。
【特許文献１】特開２００３−３４５６８０号公報（第００１３段落、図１）
【特許文献２】特開２００５−１８４１６５号公報（第００８７段落、図９）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
このうちの第１の提案のウェブサーバは、これに接続中のクライアントに対する１つの単位のデータの送信を終了させても、そのクライアントが「画面の切替中」の管理状態にあり、続いて他の画面についてのデータを処理して同様にそのクライアントに送信するであろうことを知っている。したがって、接続数が上限となっており、他のクライアントからのリクエストが待機中である場合に、この待機中のクライアントのリクエストを割込処理することはない。
【０００９】
しかしながら、接続数が上限に達している場合にも、接続中のクライアントの個々のリクエストのデータ量が共に少ないような状態では該当するウェブサーバのリソースにかなりの余裕がある場合がある。このような場合にも、接続数が上限に達しているという理由で新たな接続を認めないことは、未接続のクライアントの接続までの時間が長時間化して、システム全体の処理効率が悪くなるという問題がある。
【００１０】
この点は、トラフィック制御装置をクライアントとウェブサーバの間に配置して接続数の制御を行う第２の提案についても同様である。しかも、ウェブサービスのリクエストの内容や傾向は、ユーザの使い方や時期によって大きく左右される。また、さまざまなデータベース・サーバ等のバックエンドシステムを抱える場合、各々のサービス内容により、どのサービスの使用頻度が大きくなるかをシステム担当者が予測することは困難となっている。
【００１１】
このため従来では、ウェブサーバの構築時には、予め余裕を持たせたリソースの配置を行うことになり、リソースが余剰になり非効率となる問題があった。また、ウェブサービスのチューニングをシステム担当者に行わせようとすると、データ量の多いリクエストが来るのか、あるいはデータ量は少ないがリクエスト数が多いのかというさまざまなケースが想定される。したがって、システム担当者の負担が大きくなるだけでなく、予測に反した場合のリスクも考えられ、その実施は非現実的であった。
【００１２】
そこで本発明の目的は、クライアントの接続数を一律的に制限することによるウェブサーバの処理効率の低下を防止することのできるウェブ監視制御システム、ウェブサーバ制御装置およびウェブサーバ制御プログラムを得ることにある。
【課題を解決するための手段】
【００１３】
請求項１記載の発明では、（イ）クライアントと接続する接続手段と、この接続手段によって接続したクライアントからのリクエストの内容を特定の宛先に逐次報告する報告手段と、前記した特定の宛先からクライアントの接続数の拡縮についての通知を受ける通知受信手段と、この通知受信手段の受信した通知内容に応じて接続手段の接続を拡縮する接続制御手段とを備えた複数のウェブサーバと、（ロ）前記した特定の宛先としてこれら複数のウェブサーバと接続され、報告手段から報告される内容を受信し、それぞれのウェブサーバのリソースの状態を監視する監視手段と、この監視手段の監視結果から前記した複数のウェブサーバのそれぞれについてクライアントの接続数の拡縮を必要とするかを判定する判定手段と、この判定手段がクライアントの接続数の拡縮を必要とすると判定したときこれを該当するウェブサーバに通知する通知手段とを備えたウェブサーバ制御装置とをウェブ監視制御システムに具備させる。
【００１４】
すなわち本発明では、ウェブサーバ制御装置が複数のウェブサーバのそれぞれからクライアントのリクエストの内容の報告を受けて、これらのウェブサーバのリソースの状態を監視するようにしている。そして、監視結果から前記した複数のウェブサーバのそれぞれについてクライアントの接続数の拡縮を必要とするかを判定し、クライアントの接続数の拡縮を必要とすると判定したときに該当するウェブサーバにこれを通知するようにしている。これにより、最大接続数という１つの基準でのみクライアントの接続数を決める従来の手法よりもフレキシブルな制御が可能になる。また、ウェブサーバ制御装置は複数のウェブサーバの制御を行うので、これらウェブサーバ間のアクセスの不均一等の通信システム全体を観点とした制御も可能になる。
【００１５】
請求項５記載の発明では、（イ）複数のウェブサーバと接続され、これらのウェブサーバからこれらに対するクライアントからのリクエスト状況とこれらのリクエストに伴う必要なデータ量の報告を受ける報告受信手段と、（ロ）この報告受信手段の受信した報告に基づいて個々のウェブサーバの状況およびこれらのウェブサーバ全体の状況の統計をとる統計手段と、（ハ）この統計手段の統計を用いてそれぞれのウェブサーバのリソースの変動状態を監視する監視手段と、（ニ）この監視手段の監視結果からクライアントの接続数の拡縮を必要とするウェブサーバを判別する拡縮対象判別手段と、（ホ）この拡縮対象判別手段で拡縮を必要とすると判別されたウェブサーバに対して接続数の拡縮を行わせるための通知を行う拡縮通知手段とをウェブサーバ制御装置に具備させる。
【００１６】
すなわち本発明では、ウェブサーバ制御装置がこれに接続されている複数のウェブサーバからこれらに対するクライアントからのリクエスト状況とこれらのリクエストに伴う必要なデータ量の報告を受け、これを基にして個々のウェブサーバの状況およびこれらのウェブサーバ全体の状況の統計をとるようにしている。そして、この統計を用いてそれぞれのウェブサーバのリソースの変動状態を監視し、監視結果からクライアントの接続数の拡縮を必要とするウェブサーバを判別して、これらのウェブサーバに対して接続数の拡縮を行わせるための通知を行うようにしている。これにより、最大接続数という１つの基準でのみクライアントの接続数を決める従来の手法よりもフレキシブルな制御が可能になる。また、ウェブサーバ制御装置は複数のウェブサーバの制御を行うので、これらウェブサーバ間のアクセスの不均一等の通信システム全体を観点とした制御も可能になる。
【００１７】
請求項６記載の発明では、複数のウェブサーバと接続され、これらに接続するクライアントの接続数を制御するウェブサーバ制御装置のコンピュータに、ウェブサーバ制御プログラムとして、（イ）前記した複数のウェブサーバからこれらに対するクライアントからのリクエスト状況とこれらのリクエストに伴う必要なデータ量の報告を受ける報告受信処理と、（ロ）この報告受信処理で受信した報告に基づいて個々のウェブサーバの状況およびこれらのウェブサーバ全体の状況の統計をとる統計処理と、（ハ）この統計算出処理でとった統計を用いてそれぞれのウェブサーバのリソースの変動状態を監視する監視処理と、（ニ）この監視処理による監視結果からクライアントの接続数の拡縮を必要とするウェブサーバを判別する拡縮対象判別処理と、（ホ）この拡縮対象判別処理で拡縮を必要とすると判別されたウェブサーバに対して接続数の拡縮を行わせるための通知を行う拡縮通知処理とを実行させることを特徴としている。
【００１８】
すなわち本発明では、請求項５記載の発明の技術思想をウェブサーバ制御プログラムとして実現している。
【発明の効果】
【００１９】
以上説明したように本発明によれば、ウェブサーバ制御装置が個々のウェブサーバに対するクライアントのリクエストの状況の報告を受けて、その結果を用いてこれらのウェブサーバに対して必要な指示を与えることにしたので、クライアントとウェブサーバの間に介在するトラフィックを制御する装置と異なり、各ウェブサーバの状況を把握しながら実情にあった制御が可能になる。このため、単に接続数を拡縮制御できるだけでなく、ウェブサーバの一部に障害が発生したような場合にも、該当するウェブサーバの制御を行ったり、影響を受ける他のウェブサーバに対して適切な指示を与えるといった包括的な制御が可能になり、システムの安定性の向上に寄与することになる。
【発明を実施するための最良の形態】
【００２０】
以下実施例につき本発明を詳細に説明する。
【実施例１】
【００２１】
図１は、本発明の一実施例におけるウェブ監視制御システムの構成を表わしたものである。このウェブ監視制御システム１００は、インターネットに代表されるネットワーク１０１に、それぞれウェブサイトを立ち上げた第１〜第ｎのウェブサーバ１０２1〜１０２nと、これらにアクセスすることのできる第１〜第ｍのクライアント１０３1〜１０３mと、ウェブの監視制御を行うウェブシステム安定化装置１０４とを接続することで構成されている。
【００２２】
ここで第１〜第ｎのウェブサーバ１０２1〜１０２nは、第１〜第ｍのクライアント１０３1〜１０３mのうちの任意のものからアクセスがあると、接続を行ったものに対してリクエストを受け付ける。そして、たとえば第１のクライアント１０３1が第１のウェブサーバ１０２1にファイル送付のリクエストを行ったものとすると、リクエストの対象となったファイルを第１のウェブサーバ１０２1に送信する。また、プログラムの実行がリクエストされた場合には、これを実行して処理結果を第１のウェブサーバ１０２1に送信する。
【００２３】
ウェブシステム安定化装置１０４は、第１〜第ｎのウェブサーバ１０２1〜１０２nからそれぞれが第１〜第ｍのクライアント１０３1〜１０３mの任意のものからリクエストを受けている状況の報告を受ける。そして、所定のデータベースを活用して、個々のウェブサーバ１０２1〜１０２nの状況を分析して、これらのウェブサーバ１０２1〜１０２nのリソースが逼迫しているか、十分余裕があるかを判定する。そして、判定結果を第１〜第ｎのウェブサーバ１０２1〜１０２nのそれぞれ該当するものに伝えるようになっている。たとえば第１のウェブサーバ１０２1が第１〜第ｍのクライアント１０３1〜１０３mのうちの幾つかと接続することで最大接続数に到達していても、そのシステムリソースの使用状況が上限値を大きく下回っていると判定された場合、更に接続数を増加することを指示する。これに対して、たとえば第１のウェブサーバ１０２1のシステムリソースの状況が上限値を超えていると判定された場合には、過負荷に陥らないように自動閉塞処理を指示して、１つのウェブサーバ１０２内での接続数の自然な減少を図るようにしている。もちろん、同一のリクエストに対処できるウェブサーバ１０２がウェブシステム安定化装置１０４に複数接続されている場合には、これらの間でリクエストの処理を分散することで特定のウェブサーバ１０２の接続数を減少させることも可能である。
【００２４】
このようにしてウェブシステム安定化装置１０４は第１〜第ｎのウェブサーバ１０２1〜１０２nの処理の安定化と、これによりウェブシステム全体の処理の効率化を図っている。
【００２５】
図２は、このようなウェブ監視制御システムにおける第１のウェブサーバの構成の概要を表わしたものである。図１に示した第２〜第ｎのウェブサーバ１０２2〜１０２nは、第１のウェブサーバ１０２1と回路構成が基本的に同一である。そこで、第２〜第ｎのウェブサーバ１０２2〜１０２nについての図示および回路構成の具体的な説明は省略する。
【００２６】
第１のウェブサーバ１０２1は、ＣＰＵ１２１と、各種制御のための制御プログラムを格納すると共に作業用のメモリ領域を配置したメモリ１２２と通信モジュール１２３からなる基本ハードウェア１２４を備えている。そして、ＣＰＵ１２１がメモリ１２２内の制御プログラムを実行することによって、ウェブサービス部１３０と処理部１４０を実現させている。
【００２７】
このうちウェブサービス部１３０は、図１に示した第１〜第ｍのクライアント１０３1〜１０３mからのリクエストを処理する回路部分であり、クライアント接続処理部１３１と、クライアントリクエスト受信部１３２と、処理結果送信部１３３および最大接続数記憶部１３４によって構成されている。ここで、クライアント接続処理部１３１は、最大接続数記憶部１３５に記憶された最大接続数を基準として第１〜第ｍのクライアント１０３1〜１０３mと接続を行うようになっている。ここで最大接続数は、従来から一般のウェブサーバに設定されていた接続数の上限値と同様の概念である。ただし、本実施例の場合には最大接続数を一応の基準として使用しており、場合によってこれよりも多いクライアント１０３を接続するようになっている。
【００２８】
クライアントリクエスト受信部１３２は、第１〜第ｍのクライアント１０３1〜１０３mのいずれかと接続したときそのリクエストを受信するようになっている。受信内容は処理部１４０に送られて処理される。処理結果はウェブサービス部１３０に返されて、処理結果送信部１３３がこれをリクエストのあったクライアント１０３に返信するようになっている。
【００２９】
一方、処理部１４０は、クライアントリクエスト処理部１４１と、リクエスト・データ量報告部１４２と、判定結果受信部１４３および閉塞・拡張処理部１４４によって構成されている。ここでクライアントリクエスト処理部１４１はクライアントリクエスト受信部１３２の受信したリクエストの内容を受け取ってその処理を行うようになっている。たとえば要求されたウェブページを読み出して処理結果送信部１３３に送ったり、所定の処理を行って、処理結果を処理結果送信部１３３に送信する。
【００３０】
リクエスト・データ量報告部１４２は、クライアントリクエスト受信部１３２がリクエストを受信したことと、このリクエストの処理に要するデータ量を図１に示すウェブシステム安定化装置１０４に報告する回路部分である。過去にリクエストを行って処理の完了した分についての報告も行われる。報告は１件ごとに行ってもよいし、比較的短時間の周期で行うようにしてもよい。本実施例では一定周期で報告を行うようにしている。判定結果受信部１４３は、リクエスト・データ量報告部１４２の報告による第１のウェブサーバ１０２1に対する統計処理に基づいてウェブシステム安定化装置１０４が判定した判定結果を受信する回路部分である。
【００３１】
閉塞・拡張処理部１４４は、判定結果受信部１４３が受信する図１に示すウェブシステム安定化装置１０４から送られてくる判定結果を基にして、第１のウェブサーバ１０２1が最大接続数あるいはこれを超えた数でクライアント１０３と接続している状態における接続数の減少（接続の閉塞）あるいは増加（接続の拡張）のためのフィードバック制御を行うようになっている。たとえば、第１のウェブサーバ１０２1が最大接続数で第１〜第ｍのクライアント１０３1〜１０３mのうちの幾つかと接続しているにもかかわらず、システムリソースの消耗が少ない状況であると判定されてきた場合には、所定量だけ接続数を増加させる。また反対に、第１のウェブサーバ１０２1が最大接続数あるいはこれを超過している状態で第１〜第ｍのクライアント１０３1〜１０３mのうちの幾つかと接続している状態でシステムリソースがしきい値を超えてその限界値に逼迫していると判定されてきた場合には、所定量だけ接続数を減少させる。
【００３２】
閉塞・拡張処理部１４４による接続の閉塞あるいは拡張は、現在接続中のクライアント１０３に対するサービスが停止しないような形で行われる。すなわち、接続の閉塞については、サービスが終了したクライアント１０３がその接続を終了させた時点で、新たなクライアント１０３を代わって接続しないことによる自然減による処理で行われる。また、接続の拡張については、第１〜第ｍのクライアント１０３1〜１０３mのうちで新たに接続を要求しているものに対して所定数ずつ接続によるサービスを開始し、これに対応させてリクエスト・データ量報告部１４２がその内容をウェブシステム安定化装置１０４に報告して判定結果を待つ形で、接続数をフィードバック制御によって無理なく増加させる形で行う。このように本実施例のウェブ監視制御システム１００では、第１〜第ｎのウェブサーバ１０２1〜１０２nのそれぞれがウェブシステム安定化装置１０４に情報を提供し、専門的な判定結果を得ることで、従来の最大接続数という枠を超えた制御を可能にしている。
【００３３】
図３は、本実施例のウェブシステム安定化装置の構成の概要を表わしたものである。ウェブシステム安定化装置１０４は、ＣＰＵ１６１と、各種制御のための制御プログラムを格納すると共に作業用のメモリ領域を配置したメモリ１６２と通信モジュール１６３からなる基本ハードウェア１６４を備えている。そして、ＣＰＵ１６１がメモリ１６２内の制御プログラムを実行することによって、管理部１７０と監視部１８０および判定部１９０を実現させている。
【００３４】
ここで、管理部１７０は、情報収集部１７１と、情報蓄積管理部１７２と、統計管理用データベース１７３で構成されている。情報収集部１７１は、図１に示した第１〜第ｎのウェブサーバ１０２1〜１０２nのうちの接続中のものからリクエスト・データ量報告部１４２（図２）を通じてリクエストの発生状況とこれらのリクエストで必要とされるデータ量の報告を受けるようになっている。これらの報告は、リクエスト・データ量報告部１４２に関して説明したようにリクエストが行われるたびに行われてもよいし、一定時間間隔で行われてもよい。
【００３５】
統計管理用データベース１７３には、第１〜第ｎのウェブサーバ１０２1〜１０２nのそれぞれについてのシステムリソースや、それらのＣＰＵ１２１等の基本ハードウェア１２４（図２）の仕様や、現時点および最近の同時接続数といった判定処理に役立つデータが格納されている。情報蓄積管理部１７２は、管理対象となるウェブサーバ１０２についての採取したクエスト数受付状況、リクエストのデータ量、およびシステムリソースの使用状況と統計管理用データベース１７３に格納されている各種のデータを用いて、統計管理を行うようになっている。統計管理の結果は統計管理用データベース１７３に反映される。
【００３６】
監視部１８０は、検査制御部１８１およびしきい値情報格納部１８２によって構成されている。ここでしきい値情報格納部１８２には、システムリソースのしきい値としての上限値と下限値が格納されている。検査制御部１８１は、第１〜第ｎのウェブサーバ１０２1〜１０２nのそれぞれについて順に統計管理用データベース１７３からシステムリソースの状態を読み出して、しきい値情報格納部１８２に格納されている上限値と下限値の範囲内に収まっているかを判別するようになっている。判別結果が上限値と下限値の範囲内に収まっている場合には、正常範囲として特別の制御は行わない。これに対して判別結果が上限値を超えていたり下限値未満となっている場合、監視部１８０は該当するウェブサーバ１０２を特定する識別情報と共に、正常範囲を超えた方向とその程度を示す検査結果情報１８４を判定部１９０に送出するようになっている。
【００３７】
ただし、該当するウェブサーバ１０２の現在のクライアント１０３の接続数が最大接続数を超えていることが条件となる。もちろん、そのウェブサーバ１０２の設定によって、この付加条件を採用しないようにすることができる。この付加条件を採用しない場合、現在のクライアント１０３の接続数が最大接続数を超えていれば、判別結果が正常範囲を超えると検査結果情報１８４が常に判定部１９０に送出されることになる。
【００３８】
判定部１９０は、判定処理部１９１と判定結果実行部１９２によって構成されている。ここで判定部は監視部１８０から検査結果情報１８４を受信すると、統計管理用データベース１７３を参照してこれを該当するウェブサーバ１０２の制御内容に適応した判定処理結果１９４を判定結果実行部１９２に供給する。これは、図２に示した閉塞・拡張処理部１４４の制御の内容が第１〜第ｎのウェブサーバ１０２1〜１０２nによって必ずしも同一ではないことによるものである。判定結果実行部１９２は判定結果を実行してシステムリソースの使用状況を適正化させるための処理データを判定結果として該当するウェブサーバ１０２に送出することになる。
【００３９】
なお、図１に示した第１〜第ｍのクライアント１０３1〜１０３mは、ノート型やデスクトップ型のパーソナルコンピュータや、携帯電話機、ＰＤＡ（Personal Digital Assistant）、ＰＨＳ（Personal Handy-phone System）等の通常の情報処理端末である。これらは所定のブラウザを搭載していれば、特別のアプリケーションプログラムを使用することなく第１〜第ｎのウェブサーバ１０２1〜１０２nにアクセスすることができる。このように、これら第１〜第ｍのクライアント１０３1〜１０３mの構成は特別のものではないので、これらの具体的な回路構成の図示および説明は省略する。
【００４０】
次にこのような構成のウェブ監視制御システム１００で第１のウェブサーバ１０２1を例にとって接続数のチューニングが行われる状態を具体的な処理の流れと共に説明する。
【００４１】
図４は、第１のウェブサーバによるリクエスト・データ量報告処理の様子を表わしたものである。図２に示したリクエスト・データ量報告部１４２は、所定の時間ｔ1が経過するたびに（ステップＳ２０１：Ｙ）、クライアントリクエスト受信部１３２が受信した新規のリクエストとそれらのデータ量、最大接続数記憶部１３４に設定してある最大接続数の超過の有無および処理が新たに終了したリクエストを、図３に示すウェブシステム安定化装置１０４の情報収集部１７１に送信する（ステップＳ２０２）。ここで最大接続数記憶部１３４に設定してある最大接続数の超過の有無の情報は、第１のウェブサーバ１０２1が最大接続数と関係なくウェブシステム安定化装置１０４の制御を受けるようにしている場合には、このウェブシステム安定化装置１０４に送信する必要はない。
【００４２】
なお、図１に示した第１〜第ｎのウェブサーバ１０２1〜１０２nがそれぞれウェブシステム安定化装置１０４の情報収集部１７１に勝手にデータの送信を行う代わりに、情報収集部１７１が第１〜第ｎのウェブサーバ１０２1〜１０２nにそれぞれポーリングでデータの収集を行うようにしてもよい。
【００４３】
図５は、ウェブシステム安定化装置の検査制御部における検査結果情報の出力処理の様子を表わしたものである。図３に示した監視部１８０内の検査制御部１８１は、統計管理用データベース１７３を参照することで、管理対象としてのウェブサーバ１０２1〜１０２nの数「ｎ」を把握している。処理の開始時点で、この数「ｎ」だけの第１〜第ｎのウェブサーバ１０２1〜１０２nを順に検査するためにパラメータｎを「１」に初期化し、第１のウェブサーバ１０２1のデータを統計管理用データベース１７３から読み出す（ステップＳ２２２）。次に、読み出したシステムリソースの値を、しきい値情報格納部１８２に格納されているしきい値としての上限値および下限値と比較して、これらを逸脱していない正常範囲にシステムリソースの値が収まっているかどうかを判別する（ステップＳ２２３）。
【００４４】
この処理で正常範囲であると判別された場合には（ステップＳ２２３：Ｙ）、第１のウェブサーバ１０２1の状態をチューニングする必要はない。そこでこの場合には、パラメータｎを「１」だけ加算して（ステップＳ２２４）、加算後のパラメータｎがウェブサーバ１０２1〜１０２nの数「ｎ」を超過するかどうかをチェックする（ステップＳ２２５）。パラメータｎが十分大きな値と仮定すると、今の例ではパラメータｎが値「１」から値「２」となり、これは数「ｎ」に満たない（ステップＳ２２５：Ｎ）。そこで、この場合にはステップＳ２２２に戻って、第２のウェブサーバ１０２2について同様の処理が開始されることになる。なお、パラメータｎが数「ｎ」よりも大きくなると（ステップＳ２２５：Ｙ）、ステップＳ２２１に処理が戻って、再び第１のウェブサーバ１０２1の状態を検査することになる（リターン）。
【００４５】
ところで、ステップＳ２２３で第１のウェブサーバ１０２1のシステムリソースが正常範囲を外れると判別された場合には（Ｎ）、最大接続数に拘束される状態で現在の第１〜第ｍのクライアント１０３1〜１０３m（図１）の接続数が、この最大接続数を超えているかどうかの判別が行われる（ステップＳ２２６）。本実施例のウェブ監視制御システム１００では、第１のウェブサーバ１０２1が最大接続数以内で第１〜第ｍのクライアント１０３1〜１０３mを接続しているのであればウェブシステム安定化装置１０４の制御を受けないという処理を行うことができる。具体的には、第１のウェブサーバ１０２1が前記したように図４のステップＳ２０２で最大接続数をウェブシステム安定化装置１０４に通知しなければ、最大接続数に拘束されていることになり、このときには最大接続数を超えて、かつシステムリソースが正常範囲を外れているときにのみウェブシステム安定化装置１０４が接続数の制御を行う。
【００４６】
これに対して、第１のウェブサーバ１０２1が前記したように図４のステップＳ２０２で最大接続数をウェブシステム安定化装置１０４に通知しないときには、最大接続数に拘束されていないと処理される。この後者の場合には、システムリソースが正常範囲を外れる事態が発生すれば、ウェブシステム安定化装置１０４が無条件で、すなわち最大接続数を超えているかどうかを問わずに、第１のウェブサーバ１０２1の制御を行うことになる。
【００４７】
本実施例では第１のウェブサーバ１０２1が前記したように図４のステップＳ２０２で最大接続数をウェブシステム安定化装置１０４に通知している。そこでステップＳ２２３でシステムリソースが正常範囲外とされた場合には（Ｎ）、ステップＳ２２６の処理で最大接続数以内と判断されれば（Ｙ）、そのまま処理がステップＳ２２４に進む。したがって、この場合、第１のウェブサーバ１０２1に対するウェブシステム安定化装置１０４の制御は行われない。
【００４８】
一方、第１のウェブサーバ１０２1が最大接続数をウェブシステム安定化装置１０４に通知している状況でも、最大接続数を超えている場合には（ステップＳ２２６：Ｎ）、検査結果情報１８４が判定部１９０に送出され（ステップＳ２２７）、処理がステップＳ２２４に進むことになる。したがって、最大接続数を超えているときにはウェブシステム安定化装置１０４が第１のウェブサーバ１０２1の制御を行うことになる。
【００４９】
図６は、判定結果実行部による判定結果送信処理の様子を表わしたものである。図３に示した判定結果実行部１９２は、図５のステップＳ２２７における検査結果情報１８４の判定処理部１９１への送出処理に基づいた判定処理結果１９４の受信を待機している（ステップＳ２４１）。今、第１のウェブサーバ１０２1についての判定処理結果１９４が受信されたものとする（Ｙ）。判定結果実行部１９２は、この場合、第１のウェブサーバ１０２1に対して第１〜第ｍのクライアント１０３1〜１０３m（図１）についての接続数の増減量を指示する（ステップＳ２４２）。具体的には、第１のウェブサーバ１０２1に対して、一度に接続数を２クライアント分増加させるとか、接続数を１クライアント分減少させるといった指示が行われる。
【００５０】
図７は、第１のウェブサーバのクライアント接続処理部におけるクライアントの接続数の増減処理の様子を表わしたものである。図２に示したクライアント接続処理部１３１は、図３に示した判定結果実行部１９２から第１〜第ｍのクライアント１０３1〜１０３m（図１）についての接続数の増減量の指示を受信するのを待機している（ステップＳ２６１）。この指示があると（Ｙ）、それが第１〜第ｍのクライアント１０３1〜１０３mの接続を増加する指示であるか減少する指示であるかを判別する（ステップＳ２６２）。
【００５１】
増加を指示している場合には（Ｙ）、設定された最大接続数以上の接続が行われているかどうかをチェックする（ステップＳ２６３）。現在、最大接続数未満の接続しか行われていない場合には（Ｎ）、第１〜第ｍのクライアント１０３1〜１０３mのいずれかから新たな接続要求があれば、今回の接続の増加の指示がなくても接続が行われることになる。そこでこの場合には特別の接続数増加の処理を行う必要がないので、そのまま処理を最初のステップＳ２６１に戻す（リターン）。
【００５２】
一方、現在、最大接続数以上の接続が行われている場合には（ステップＳ２６３：Ｙ）、このままでは新たな接続が行われない。そこで、増加を指示された範囲で接続許容数を増加する（ステップＳ２６４）。そして、現在、第１〜第ｍのクライアント１０３1〜１０３mのうちのいずれかが接続を待機している状態であるかをチェックする（ステップＳ２６５）。接続を待機中であれば（Ｙ）、接続許容数の範囲でクライアント１０３を新たに接続する（ステップＳ２６６）。そして処理を最初のステップＳ２６１に戻す（リターン）。ステップＳ２６５で接続待機中のクライアント１０３が存在しない場合は（Ｎ）、ステップＳ２６６の処理を行うことなく、処理を最初のステップＳ２６１に戻す（リターン）。
【００５３】
なお、これらの場合には、第１のウェブサーバ１０２1の接続状態がウェブシステム安定化装置１０４にフィードバックされる。したがって、このフィードバックの行われた時点でなおもシステムリソースに十分な余裕があると判別されれば、再度増加指示が出されることになる。
【００５４】
一方、ステップＳ２６２で減少指示が行われた場合には（Ｎ）、第１のウェブサーバ１０２1の第１〜第ｍのクライアント１０３1〜１０３mに対する接続数が指示された数だけ減少するまで、新規のクライアント１０３の接続を禁止する（ステップＳ２６７）。すなわち、現在の接続はそのまま保持して、リクエストに対する処理が完了して接続が解除になることによる自然減によって接続数を目標値に減少させる。これにより、接続中のクライアント１０３に対する処理がキャンセルされるというおそれはない。ウェブシステム安定化装置１０４が統計的な手法をもって第１〜第ｎのウェブサーバ１０２1〜１０２nの制御を行うので、このような緩やかな制御が可能になる。
【００５５】
以上説明したように実施例によれば、ウェブシステム安定化装置１０４が第１〜第ｎのウェブサーバ１０２1〜１０２nのリソースを管理するので、これらのウェブサーバ１０２1〜１０２nはリソースが不足する手前の段階に新たな接続を一時的に見合わせることでリソースの逼迫する事態を回避することができる。したがって、リソースが不足したときにサービスを停止して人手で設定変更の作業を行った従来の手法と比べると、サービスが停止せず、ウェブサービスが安定稼動するという利点が生じるだけでなく、作業に要するコストが発生しないという利点がある。
【００５６】
また、最大接続数の接続を行った状態でリソースに余裕がある場合には、ウェブシステム安定化装置１０４の指示により接続数を増加することができるので、第１〜第ｎのウェブサーバ１０２1〜１０２nの効率的な活用を図ることができる。もちろん、このように接続数が超過した状態でもウェブシステム安定化装置１０４がリソースの状態を継続して把握する。したがって、その後にリソースの状態に変化が生じれば、それに応じて接続を縮退させる処理も可能であり、不具合の発生を防止することができる。
【００５７】
＜発明の変形可能性＞
【００５８】
以上説明した実施例では、ウェブシステム安定化装置１０４が第１〜第ｎのウェブサーバ１０２1〜１０２nのそれぞれのシステムリソースの管理を行ったが、これに限るものではない。たとえば第１のウェブサーバ１０２1と第２のウェブサーバ１０２2が同一のコンテンツを公開しているウェブサーバであるような場合がある。このような場合、第１のウェブサーバ１０２1と第２のウェブサーバ１０２2はこれらの前段にロードバランサ等の負荷分散装置を配置して、リクエストがこれらに均等に配分される工夫が行われるのが通常である。
【００５９】
しかしながら、何らかの原因で第１のウェブサーバ１０２1にだけリクエストが偏ってそのリソースが逼迫することがあり得る。このような場合、ウェブシステム安定化装置１０４が第１のウェブサーバ１０２1に対して「同時接続数の減少指示」を行う。ウェブシステム安定化装置１０４はその結果を見ながら「同時接続数の減少指示」をなおも行うかを判断することになる。
【００６０】
このとき、負荷分散装置が第２のウェブサーバ１０２2に第１のウェブサーバ１０２1の減少分を割り振ることになるので、減少の対象となるクライアント１０３（図１）は接続が切断されてエラーとなることはない。なお、この例の同一のコンテンツを公開しているウェブサーバとしての第１のウェブサーバ１０２1と第２のウェブサーバ１０２2に共にリクエストが集中して、これらが共に接続数の限界を超えたような場合でも、リクエストをこれらのサーバ内のキューに一時的に保持しておくようにすれば、処理待ちの状態となるので、処理ができないとするエラーを回避することができる。
【００６１】
また、監視部１８０は、管理部１７０内の統計管理用データベース１７３を監視することで、第１〜第ｎのウェブサーバ１０２1〜１０２nからなるシステム全体のレスポンスに影響を与えるおそれのある特定のウェブサーバ１０２の要素を検知することができる。たとえば、特定のウェブサーバ１０２の内部でプロセスに暴走が生じているとか、メモリのリークが発生しているということや、第１〜第ｎのウェブサーバ１０２1〜１０２nを含めたネットワークの一部に障害が発生しているということが、ウェブシステム安定化装置１０４の統計的な処理で検知できる場合がある。
【００６２】
このような場合、ウェブシステム安定化装置１０４は該当するウェブサーバ１０２の判定結果受信部１４３にその旨の通知を行い、該当するプロセスを強制停止させた後に再起動させる。定義されていないプロセスの暴走であれば、該当するウェブサーバ１０２に通知することで運用者にアラートを上げて、必要なオペレーションを行わせることもできる。
【００６３】
ネットワークに障害が発生した場合には、その障害によって通知不能となったウェブサーバ１０２にリクエストが割り当てられると、これが処理されないためにエラーが発生する可能性がある。そこで、この場合、ウェブシステム安定化装置１０４は該当するウェブサーバ１０２のサービスを停止させて、リクエストが振り分けられないようにすることになる。
【００６４】
また、統計管理用データベース１７３を用いた詳細な統計情報を第１〜第ｎのウェブサーバ１０２1〜１０２nの全部あるいは該当するものに配布することで、これらの管理者に必要な措置を採らせることも可能である。管理者は、これを基にしてサーバシステム全体のスケールアップの検討や、ウェブサーバの増設の検討を行うことができる。更に、リクエストの行われる曜日や時間帯や、コンテンツの更新時期とリクエストの増減をチェックすることで、顧客のニーズの分析を行うこともできる。
【図面の簡単な説明】
【００６５】
【図１】本発明の一実施例におけるウェブ監視制御システムの構成を表わしたシステム構成図である。
【図２】本実施例における第１のウェブサーバの構成の概要を表わしたブロック図である。
【図３】本実施例のウェブシステム安定化装置の構成の概要を表わしたブロック図である。
【図４】本実施例の第１のウェブサーバによるリクエスト・データ量報告処理の様子を表わした流れ図である。
【図５】本実施例のウェブシステム安定化装置の検査制御部における検査結果情報の出力処理の様子を表わした流れ図である。
【図６】本実施例の判定結果実行部による判定結果送信処理の様子を表わした流れ図である。
【図７】本実施例でクライアントの接続数の増減処理の様子を表わした流れ図である。
【符号の説明】
【００６６】
１００  ウェブ監視制御システム
１０１  ネットワーク
１０２  ウェブサーバ
１０３  クライアント
１０４  ウェブシステム安定化装置（ウェブサーバ制御装置）
１２４、１６４  基本ハードウェア
１３１  クライアント接続処理部
１３３  処理結果送信部
１４１  クライアントリクエスト処理部
１４２  リクエスト・データ量報告部
１４３  判定結果受信部
１４４  閉塞・拡張処理部
１７１  情報収集部
１７３  統計管理用データベース
１８１  検査制御部
１８２  しきい値情報格納部
１９１  判定処理部
１９２  判定結果実行部
【図１】
2008250669.tif 000003
【図２】
2008250669.tif 000004
【図３】
2008250669.tif 000005
【図４】
2008250669.tif 000006
【図５】
2008250669.tif 000007
【図６】
2008250669.tif 000008
【図７】
2008250669.tif 000009