(57)【要約】    【課題】  共有ファイルシステムへのアクセスを最低限に抑えることにより、応答速度の低下を防止することができるＷｅｂアプリケーション及びそのデータ共有方法、並びにプログラムを提供する。    【解決手段】  ネットワーク１００は、Ｗｅｂクライアント１０１，１０２，１０３と、夫々ローカルファイル１１１ａ，１１２ａ，１１３ａを有すると共に、共有ファイル１１５を共有し、Ｗｅｂアプリケーションを実行するＷｅｂサーバクラスタを構成するＷｅｂサーバ１１１，１１２，１１３とを備える。Ｗｅｂアプリケーションは、セッションが有効な間は、このセッションに関わるＷｅｂクライアントからのＨＴＴＰリクエストの処理をＷｅｂサーバのいずれか１つに割り振り、セッションの開始時に、共有ファイル１１５内の共有データをセッションＷｅｂサーバのローカルファイルにコピーし、セッションＷｅｂクライアントからのＨＴＴＰリクエストの処理がＨＴＭＬページの作成に必要なパラメータの更新を伴う処理でない場合、ＨＴＭＬページを作成する際には、コピーされたパラメータのみを利用する。【選択図】      図１
2005173823.tif 000002
【特許請求の範囲】
【請求項１】
複数のＷｅｂサーバにより構成され、複数のＷｅｂクライアントとセッションを行うＷｅｂサーバクラスタ上で、セッション中のＷｅｂクライアントから受信したＨＴＴＰリクエストの要求処理を実行するＷｅｂアプリケーションにおいて、
前記Ｗｅｂサーバクラスタは、前記複数のＷｅｂサーバの全てで共有する第１のファイルと、前記複数のＷｅｂサーバの夫々が有するファイルであって、他のＷｅｂサーバからのアクセスが不能な第２のファイルとを備え、
前記複数のＷｅｂクライアントのいずれか１つとのセッションの開始時に、当該セッションが終了するまで、前記複数のＷｅｂクライアントのいずれか１つからのＨＴＴＰリクエストの要求処理を実行するＷｅｂサーバを前記複数のＷｅｂサーバのいずれか１つに割り振るセッション時処理割振手段と、
前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストが前記Ｗｅｂサーバクラスタに送信されたときに、前記割り振られたＷｅｂサーバの有する前記第２のファイルに前記第１のファイルのデータをコピーするデータコピー手段と、
前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要がない場合、前記第２のファイルにコピーされたデータを用いて前記要求処理を実行する要求処理実行手段とを備えることを特徴とするＷｅｂアプリケーション。
【請求項２】
前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要があるとき、前記第１のファイル及び前記第２のファイルのデータを共に更新することを特徴とする請求項１記載のＷｅｂアプリケーション。
【請求項３】
複数のＷｅｂサーバにより構成され、複数のＷｅｂクライアントとセッションを行うＷｅｂサーバクラスタ上で、セッション中のＷｅｂクライアントから受信したＨＴＴＰリクエストの要求処理を実行するデータ共有方法において、
前記Ｗｅｂサーバクラスタは、前記複数のＷｅｂサーバの全てで共有する第１のファイルと、前記複数のＷｅｂサーバの夫々が有するファイルであって、他のＷｅｂサーバからのアクセスが不能な第２のファイルとを備え、
前記複数のＷｅｂクライアントのいずれか１つとのセッションの開始時に、当該セッションが終了するまで、前記複数のＷｅｂクライアントのいずれか１つからのＨＴＴＰリクエストの要求処理を実行するＷｅｂサーバを前記複数のＷｅｂサーバのいずれか１つに割り振るセッション時処理割振ステップと、
前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストが前記Ｗｅｂサーバクラスタに送信されたときに、前記割り振られたＷｅｂサーバの有する前記第２のファイルに前記第１のファイルのデータをコピーするデータコピーステップと、
前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要がない場合、前記第２のファイルにコピーされたデータを用いて前記要求処理を実行する要求処理実行ステップとを有することを特徴とするデータ共有方法。
【請求項４】
前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要があるとき、前記第１のファイル及び前記第２のファイルのデータを共に更新することを特徴とする請求項３記載のデータ共有方法。
【請求項５】
複数のＷｅｂサーバにより構成され、複数のＷｅｂクライアントとセッションを行うＷｅｂサーバクラスタ上で、セッション中のＷｅｂクライアントから受信したＨＴＴＰリクエストの要求処理を実行するデータ共有方法をコンピュータに実行させることを特徴とするプログラムにおいて、
前記Ｗｅｂサーバクラスタは、前記複数のＷｅｂサーバの全てで共有する第１のファイルと、前記複数のＷｅｂサーバの夫々が有するファイルであって、他のＷｅｂサーバからのアクセスが不能な第２のファイルとを備え、
前記複数のＷｅｂクライアントのいずれか１つとのセッションの開始時に、当該セッションが終了するまで、前記複数のＷｅｂクライアントのいずれか１つからのＨＴＴＰリクエストの要求処理を実行するＷｅｂサーバを前記複数のＷｅｂサーバのいずれか１つに割り振るセッション時処理割振モジュールと、
前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストが前記Ｗｅｂサーバクラスタに送信されたときに、前記割り振られたＷｅｂサーバの有する前記第２のファイルに前記第１のファイルのデータをコピーするデータコピーモジュールと、
前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要がない場合、前記第２のファイルにコピーされたデータを用いて前記要求処理を実行する要求処理実行モジュールとを有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂアプリケーション及びそのデータ共有方法、並びにプログラムに関し、特に、複数のＷｅｂサーバから構成されるＷｅｂサーバクラスタ上で動作するＷｅｂアプリケーション及びそのデータ共有方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、複数のＷｅｂサーバから構成されるＷｅｂサーバクラスタ上でＷｅｂアプリケーションを動作させる場合、共有ディスク装置等の特別なハードウエアを用いて、Ｗｅｂアプリケーションが動作するために必要な情報を共有するのが普通であったが（例えば、特許文献１参照）、共有ディスク装置等は一般に高価であるため、このような装置を用いずともＷｅｂサーバクラスタ上でＷｅｂアプリケーションを動作させたいという要望があった。
【０００３】
一方、ＯＳ（オペレーティングシステム）には、Ｗｅｂサーバクラスタ上のＷｅｂサーバの夫々が保有するファイルのうち、他のＷｅｂサーバからのアクセスが不能であるファイル（以下「ローカルファイル」という。）を、Ｗｅｂサーバクラスタ上のＷｅｂサーバの全てからのアクセスが可能であるファイル（以下「共有ファイル」という。）に設定変更する機能がある。
【０００４】
従って、このＯＳの機能を用いることにより、共有ディスク装置のような特別なハードウェアを用いなくても、Ｗｅｂアプリケーションが動作するために必要な情報をＷｅｂサーバクラスタ上のＷｅｂサーバが共有することができる。
【特許文献１】特開平１１−９６０７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、Ｗｅｂサーバクラスタ上のＷｅｂサーバの夫々が自己のローカルファイルにアクセスする処理と比べて、共有ファイルにアクセスする処理は時間がかかるので、共有ファイルにＷｅｂサーバがアクセスする頻度が多くなると、Ｗｅｂアプリケーションの応答速度が低下してしまうという問題がある。
【０００６】
本発明は、共有ファイルへのＷｅｂサーバのアクセスを最低限に抑えることにより、応答速度の低下を防止できるＷｅｂアプリケーション及びそのデータ共有方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
請求項１記載のＷｅｂアプリケーションは、複数のＷｅｂサーバにより構成され、複数のＷｅｂクライアントとセッションを行うＷｅｂサーバクラスタ上で、セッション中のＷｅｂクライアントから受信したＨＴＴＰリクエストの要求処理を実行するＷｅｂアプリケーションにおいて、前記Ｗｅｂサーバクラスタは、前記複数のＷｅｂサーバの全てで共有する第１のファイルと、前記複数のＷｅｂサーバの夫々が有するファイルであって、他のＷｅｂサーバからのアクセスが不能な第２のファイルとを備え、前記複数のＷｅｂクライアントのいずれか１つとのセッションの開始時に、当該セッションが終了するまで、前記複数のＷｅｂクライアントのいずれか１つからのＨＴＴＰリクエストの要求処理を実行するＷｅｂサーバを前記複数のＷｅｂサーバのいずれか１つに割り振るセッション時処理割振手段と、前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストが前記Ｗｅｂサーバクラスタに送信されたときに、前記割り振られたＷｅｂサーバの有する前記第２のファイルに前記第１のファイルのデータをコピーするデータコピー手段と、前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要がない場合、前記第２のファイルにコピーされたデータを用いて前記要求処理を実行する要求処理実行手段とを備えることを特徴とする。
【０００８】
請求項２記載のＷｅｂアプリケーションは、請求項１記載のＷｅｂアプリケーションにおいて、前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要があるとき、前記第１のファイル及び前記第２のファイルのデータを共に更新することを特徴とする。
【０００９】
請求項３記載のデータ共有方法は、複数のＷｅｂサーバにより構成され、複数のＷｅｂクライアントとセッションを行うＷｅｂサーバクラスタ上で、セッション中のＷｅｂクライアントから受信したＨＴＴＰリクエストの要求処理を実行するデータ共有方法において、前記Ｗｅｂサーバクラスタは、前記複数のＷｅｂサーバの全てで共有する第１のファイルと、前記複数のＷｅｂサーバの夫々が有するファイルであって、他のＷｅｂサーバからのアクセスが不能な第２のファイルとを備え、前記複数のＷｅｂクライアントのいずれか１つとのセッションの開始時に、当該セッションが終了するまで、前記複数のＷｅｂクライアントのいずれか１つからのＨＴＴＰリクエストの要求処理を実行するＷｅｂサーバを前記複数のＷｅｂサーバのいずれか１つに割り振るセッション時処理割振ステップと、前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストが前記Ｗｅｂサーバクラスタに送信されたときに、前記割り振られたＷｅｂサーバの有する前記第２のファイルに前記第１のファイルのデータをコピーするデータコピーステップと、前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要がない場合、前記第２のファイルにコピーされたデータを用いて前記要求処理を実行する要求処理実行ステップとを有することを特徴とする。
【００１０】
請求項４記載のデータ共有方法は、請求項３記載のデータ共有方法において、前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要があるとき、前記第１のファイル及び前記第２のファイルのデータを共に更新することを特徴とする。
【００１１】
請求項５記載のプログラムは、複数のＷｅｂサーバにより構成され、複数のＷｅｂクライアントとセッションを行うＷｅｂサーバクラスタ上で、セッション中のＷｅｂクライアントから受信したＨＴＴＰリクエストの要求処理を実行するデータ共有方法をコンピュータに実行させることを特徴とするプログラムにおいて、前記Ｗｅｂサーバクラスタは、前記複数のＷｅｂサーバの全てで共有する第１のファイルと、前記複数のＷｅｂサーバの夫々が有するファイルであって、他のＷｅｂサーバからのアクセスが不能な第２のファイルとを備え、前記複数のＷｅｂクライアントのいずれか１つとのセッションの開始時に、当該セッションが終了するまで、前記複数のＷｅｂクライアントのいずれか１つからのＨＴＴＰリクエストの要求処理を実行するＷｅｂサーバを前記複数のＷｅｂサーバのいずれか１つに割り振るセッション時処理割振モジュールと、前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストが前記Ｗｅｂサーバクラスタに送信されたときに、前記割り振られたＷｅｂサーバの有する前記第２のファイルに前記第１のファイルのデータをコピーするデータコピーモジュールと、前記セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により前記第１のファイルのデータを更新する必要がない場合、前記第２のファイルにコピーされたデータを用いて前記要求処理を実行する要求処理実行モジュールとを有することを特徴とする。
【発明の効果】
【００１２】
請求項１記載のＷｅｂアプリケーション、請求項３記載のデータ共有方法、及び請求項５記載のプログラムによれば、複数のＷｅｂクライアントのいずれか１つとのセッションの開始時に、このセッションが終了するまで、この複数のＷｅｂクライアントのいずれか１つからのＨＴＴＰリクエストの要求処理を実行するＷｅｂサーバを複数のＷｅｂサーバのいずれか１つに割り振り、セッション中のＷｅｂクライアントからのＨＴＴＰリクエストがＷｅｂサーバクラスタに送信されたときに、割り振られたＷｅｂサーバの有する第２のファイルに第１のファイルのデータをコピーし、セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により第１のファイルのデータを更新する必要がない場合、第２のファイルにコピーされたデータを用いて要求処理を実行するので、共有ファイルへのＷｅｂサーバのアクセスを最低限に抑えることにより、応答速度の低下を防止できる。
【００１３】
請求項２記載のＷｅｂアプリケーション、請求項４記載のデータ共有方法、及び請求項５記載のプログラムによれば、セッション中のＷｅｂクライアントからのＨＴＴＰリクエストの要求処理により第１のファイルのデータを更新する必要があるとき、第１のファイル及び第２のファイルのデータを共に更新するので、共有ファイルへのＷｅｂサーバのアクセスを最低限に抑えることにより、応答速度の低下を防止できる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態を図面を用いて詳説する。
【００１５】
図１は、本発明の実施の形態に係るＷｅｂアプリケーションを実行するネットワークの概略構成を示す図である。
【００１６】
図１において、ネットワーク１００は、Ｗｅｂブラウザが動作しているＷｅｂクライアント１０１，１０２，１０３と、Ｗｅｂサーバクラスタ１１０を構成するＷｅｂサーバ１１１，１１２，１１３と、文書管理サーバ１２１と、リレーショナルデータベース１２５とを備え、これらはローカルエリアネットワーク１３１，１３２により相互に接続する。
【００１７】
リレーショナルデータベース１２５は、フォルダや文書の属性情報や文書を記憶している。文書管理サーバ１２１は、リレーショナルデータベース１２５にアクセスして、データベース内に文書を登録して文書を管理している。また、Ｗｅｂサーバ１１１は、共有ファイル１１５（第２のファイル）を有し、この共有ファイル１１５は、オペレーティングシステム（ＯＳ）のファイルシステム共有機能により、他のＷｅｂサーバ１１２，１１３からもアクセスできるように構成されている。さらに、各Ｗｅｂサーバ１１１，１１２，１１３は、他のコンピュータからの直接のアクセスは禁止されているローカルファイル１１１ａ，１１２ａ，１１３ａ（第１のファイル）を有する。
【００１８】
Ｗｅｂクライアント１０１，１０２，１０３は、Ｗｅｂサーバクラスタ１１０へＨＴＴＰリクエストを送付することにより、Ｗｅｂサーバクラスタ１１０内のＷｅｂサーバ１１１，１１２，１１３からＨＴＴＰレスポンスを受信できるように構成されている。
【００１９】
また、Ｗｅｂサーバクラスタ１１０は、Ｗｅｂクライアント１０１，１０２，１０３からのＨＴＴＰリクエストを受信してＷｅｂサーバ１１１，１１２，１１３のいずれかにそのリクエストの処理を割り振り、割り振られた処理を各Ｗｅｂサーバ１１１，１１２，１１３に実行させるＷｅｂアプリケーションを稼動させる。
【００２０】
図２は、図１におけるＷｅｂサーバクラスタ１１０上で稼動するＷｅｂアプリケーションのノードを説明するのに用いられる図である。
【００２１】
図２において、Ｗｅｂサーバクラスタ１１０のＷｅｂアプリケーションは、Ｗｅｂクラスタ制御部２１１，Ｗｅｂサーバ部２１５、及び文書管理部２２０の３つのノードを備える。
【００２２】
Ｗｅｂクラスタ制御部２１１は、上述の割振処理を行ったり、Ｗｅｂサーバ１１１，１１２，１１３のいずれかで作成されたＨＴＴＰレスポンスを所定のＷｅｂクライアント（１０１，１０２，１０３）へ送信する。
【００２３】
Ｗｅｂサーバ部２１５は、Ｗｅｂサーバ１１１，１１２，１１３による一般的な処理を行う。具体的には、Ｗｅｂクライアント１０１，１０２，１０３からのＨＴＴＰリクエストに応じて、要求されたＨＴＭＬページやイメージファイル等のコンテンツをＨＴＴＰレスポンスとしてＷｅｂクライアントに送信したり、Ｗｅｂクライアントからのプログラム実行要求に応じてプログラムを実行しその結果をＨＴＴＰレスポンスとしてＷｅｂクライアントに送信する処理を行う。
【００２４】
文書管理部２２０は、制御部２２１、要求解析部２２３、共有データアクセス部２２４、及び要求処理部２２６を備える。
【００２５】
制御部２２１は、Ｗｅｂサーバ部２１５とのデータの送受やＷｅｂサーバクラスタ１１０の全体の処理を制御する。本制御部２２１では、Ｗｅｂサーバ１１１，１１２，１１３を経由してＷｅｂクライアント１０１，１０２，１０３から依頼されたＨＴＴＰリクエストのプログラム実行要求内容を要求解析部２２３で解析し、解析された結果により、共有データアクセス部２２４、ローカルデータアクセス部２２５、要求処理部２２６等を制御して、上述の実行要求がされたプログラムを実行し、最後にＨＴＭＬページ生成部２２７により実行内容に応じたＨＴＭＬページを作成する。また、制御部２２１は、Ｗｅｂクライアント１０１，１０２，１０３にＨＴＴＰレスポンスを返すようにＷｅｂサーバ部２１５に依頼する。
【００２６】
要求解析部２２３ではＷｅｂサーバ部２１５を経由してＷｅｂクライアント１０１，１０２，１０３から送信されたＨＴＴＰリクエストのプログラム実行要求のパラメータを解析し、実行要求の種別を解析する。実行要求の種別としては、Ｗｅｂアプリケーション起動処理、ログイン処理、ログアウト処理、表示形式変更処理、文書一覧処理、文書検索処理、文書登録処理、文書削除処理等がある。
【００２７】
共有データアクセス部２２４は、Ｗｅｂサーバ１１１で公開されている共有ファイル１１５へのアクセスを行い、共有ファイル１１５からのデータ読み出しや、共有ファイル１１５へのデータの書き込みを行うようになっている。共有ファイル１１５では、Ｗｅｂアプリケーションを使用できるユーザごとに、ＨＴＭＬページ作成の際に必要となる情報が格納されている。たとえば、文書一覧画面に表示する文書の数、文書一覧画面に表示する項目名等がこれに相当する。
【００２８】
ローカルデータアクセス部２２５は、各Ｗｅｂサーバ１１１，１１２，１１３がセッション内でＨＴＭＬページを作成するために必要なデータを格納するローカルファイルへのアクセスを行う。ローカルデータとしては、上記共有ファイル１１５の情報に加えて、セッション内で頻繁に更新される情報や一時的に作成されたイメージファイル等が格納される。
【００２９】
要求処理部２２６では、要求解析部２２３で解析析された実行要求の種別に応じて、文書管理サーバ１２１と通信を行い、ログイン処理、ログアウト処理、文書一覧処理、文書検索処理、文書登録処理、文書削除処理等の処理を実際に行う。また、表示形式変更処理においては共有データアクセス部２２４、ローカルデータアクセス部２２５によりローカルファイル、共有ファイル１１５に書き込む処理も行う。
【００３０】
ＨＴＭＬ作成部２２７は、要求処理部２２６で行った処理の結果を、ローカルデータアクセス部２２５により取得したローカルデータをもとにＨＴＭＬページを作成する部分である。具体的には、文書一覧画面に表示する文書の数、文書一覧画面等の情報等に基づいてＨＴＭＬページを作成する。
【００３１】
図３は、図２のＷｅｂアプリケーションによる文書管理処理のフローチャートである。
【００３２】
図３において、まず、Ｗｅｂアプリケーションは、Ｗｅｂクライアント１０１，１０２，１０３のいずれか１つからＷｅｂクラスタサーバ１１０に送信されたＨＴＴＰリクエストにセッションＩＤがあるか否かを判別する（ステップＳ３１０）。以下、Ｗｅｂクラスタサーバ１１０にＨＴＴＰリクエストを送信したＷｅｂクライアントを「セッションＷｅｂクライアント」という。ここで、セッションＷｅｂクライアントから送信されたＨＴＴＰリクエストには、パラメータとして、少なくともセッションＩＤと処理要求コマンドが付与されているものとする。ただし、本Ｗｅｂアプリケーション起動時に送信されたＨＴＴＰリクエストにはパラメータは一切付与されていない。
【００３３】
ステップＳ３１０の判別の結果、ＨＴＴＰリクエストにセッションＩＤがないとき、Ｗｅｂアプリケーションは、このセッションＷｅｂクライアントとは初めてセッションが行われたと判断し、Ｗｅｂサーバ１１１，１１２，１１３のいずれか１つをこのセッションＷｅｂクライアントからのＨＴＴＰリクエストの処理を行うＷｅｂサーバ（以下「セッションＷｅｂサーバ」という。）に割り振り、このセッションＷｅｂサーバのローカルファイルにセッション設定ファイルを作成する（ステップＳ３１１）。ここで、セッション設定ファイルは、セッションＩＤにより特定されるファイルであり、セッションＷｅｂサーバのローカルファイル中の予め定められたセッション管理フォルダの下に作成される。この時点では、空のファイルが作成されるだけである。
【００３４】
引き続き、セッションＷｅｂサーバでログインに必要なユーザ名、パスワード等を入力させるためのログイン画面（図４）のＨＴＭＬページを作成し、このＨＴＭＬページをセッションＷｅｂクライアントに返送し（ステップＳ３７０）、本処理を終了する。このとき、送信されるＨＴＴＰリスポンスには、ステップＳ３１１で作成されたセッション設定ファイルを特定するセッションＩＤがパラメータとして付与される。以後、このセッションが有効な間、即ち後述するステップＳ３４１でローカルファイル中の設定情報が削除されるまで、セッションＷｅｂクライアントとセッションＷｅｂサーバの間で送受信されるＨＴＴＰリクエスト及びＨＴＴＰリスポンスには同一のセッションＩＤが付される。
【００３５】
ステップＳ３１０の判別の結果、ＨＴＴＰリクエストにセッションＩＤがあるときは、このセッションＩＤにより特定されるセッション設定ファイルがＷｅｂサーバクラスタ１１０内のＷｅｂサーバ１１１，１１２，１１３のいずれか１つのローカルファイル中にあるか否かを判別する（ステップＳ３２０）。この判別の結果、上記セッション設定ファイルがないとき、Ｗｅｂアプリケーションは、このＨＴＴＰリクエストは不正なアクセスにより送信されたと判断して、不正なアクセスであることを警告するＨＴＭＬページをＷｅｂサーバ１１１，１１２，１１３のいずれか１つで作成し、このＨＴＭＬページをセッションＷｅｂクライアントに返送し（ステップＳ３７０）、本処理を終了する。
【００３６】
ステップＳ３２０の判別の結果、上記セッション設定ファイルがあるときは、Ｗｅｂアプリケーションは、このＨＴＴＰリクエストは有効なセッションであると判断して、このＨＴＴＰリクエストのパラメータとして付与された処理要求コマンドを解析することにより、処理要求コマンドがログイン処理であるか否か（ステップＳ３３０）、ログアウト処理であるか否か（ステップＳ３４０）、表示形式変更処理であるか否か（ステップＳ３５０）を順に判別する。
【００３７】
ステップＳ３３０の判別の結果、ＨＴＴＰリクエストの処理要求コマンドがログイン処理であるときは、以下のログイン処理を実行する。
【００３８】
Ｗｅｂアプリケーションは、セッションＷｅｂクライアント側でこのログイン画面のＨＴＭＬページにユーザ名とパスワードが入力され、ＯＫボタンが押され、ログイン処理を内容とする処理要求コマンドをパラメータに含むＨＴＴＰリクエストがＷｅｂサーバクラスタ１１０に返送されたときに、そのＨＴＴＰリクエストの処理要求コマンドがログイン処理であると判別する。
【００３９】
また、上記ログイン処理は、ステップＳ３１１の処理の後にセッションＷｅｂサーバにより作成された上述のログイン画面のＨＴＭＬページが、セッションＷｅｂクライアントに送信された後に行われる。
【００４０】
上記ログイン処理では、まず、Ｗｅｂアプリケーションは、セッションＷｅｂクライアント側で図４のログイン画面に入力されたユーザ名とパスワードの組み合わせが共有ファイル１１５内にあるか否かを判別する（ステップＳ３３１）。この判別の結果、上記組み合わせは共有ファイル１１５中にあるときは、ログイン処理が正常に行われたと判断して、共有ファイル１１５中のそのユーザ用の設定情報（共有データ）をこのセッションＩＤで特定されるセッション設定ファイルに記憶することにより、共有データをローカルファイル内に取得する（ステップＳ３３２）。その後、この取得した共有データにある設定情報に基づき文書一覧画面（図５）及びその表示形式変更画面（図７）のＨＴＭＬページを作成し、これらのＨＴＭＬページをセッションＷｅｂクライアントに返信して（ステップＳ３７０）、本処理を終了する。
【００４１】
ステップＳ３３１の判別の結果、上記組み合わせは共有ファイル１１５内にないときは、このログイン処理をパラメータとするＨＴＴＰリクエストは不正なアクセスにより送信されたと判断して、不正なアクセスであることを警告するＨＴＭＬページを作成し、セッションＷｅｂクライアントに返送して（ステップＳ３７０）、本処理を終了する。
【００４２】
ステップＳ３４０の判別の結果、ＨＴＴＰリクエストの処理要求コマンドがログアウト処理であるときは、以下のログアウト処理を実行する。
【００４３】
Ｗｅｂアプリケーションは、セッションＷｅｂクライアント側で、この文書一覧画面のＨＴＭＬページのログアウトボタン５００が押され、ログアウト処理を内容とする処理要求コマンドをパラメータに含むＨＴＴＰリクエストがＷｅｂサーバクラスタ１１０に返送されたとき、そのＨＴＴＰリクエストの処理要求コマンドがログアウト処理であると判別する。
【００４４】
また、上記ログアウト処理は、ログイン処理により文書一覧画面（図５）のＨＴＭＬページが、セッションＷｅｂクライアントに送信された後に行われる。
【００４５】
上記ログアウト処理では、まず、Ｗｅｂアプリケーションは、セッションＷｅｂサーバのローカルファイル中から、上記セッションＩＤにより特定されるセッション設定ファイルを探し、探し出されたセッション設定ファイル内に作成されたセッション情報を削除する（ステップＳ３４１）。その後、セッションＷｅｂサーバでセッションが終了したことを告知するＨＴＭＬページを作成し、このＨＴＭＬページをセッションＷｅｂクライアントに返送し（ステップＳ３７０）、本処理を終了する。
【００４６】
ステップＳ３５０の判別の結果、ＨＴＴＰリクエストの処理要求コマンドが表示形式変更処理であるときは、以下の表示形式変更処理を行う。
【００４７】
Ｗｅｂアプリケーションは、セッションＷｅｂクライアント側で、表示設定変更画面（図７）のＨＴＭＬページでこの文書一覧画面の表示設定を変更したとき、例えば、図７に示すように、図５の文書一覧画面で１ページに表示する文書数を変更するため、「Maximum Number of Documents to Display in a Page」の右横の数値を１０から２０にスクロールバーを用いて変更した後に上部のＯＫボタンが押されたとき、セッションＩＤ及び表示形式変更処理を内容とする処理要求コマンドをパラメータとするＨＴＴＰリクエストがＷｅｂサーバクラスタ１１０に返送される。このとき、そのＨＴＴＰリクエストの処理要求コマンドが表示形式変更処理であると判別する。
【００４８】
また、上記表示形式変更処理は、ログイン処理により文書一覧画面（図５）のＨＴＭＬページが、セッションＷｅｂクライアントに送信された後に行われる。
【００４９】
上記表示形式変更処理では、まず、Ｗｅｂアプリケーションは、セッションＷｅｂクライアント側で図７の表示設定変更画面により変更された内容を上記セッションＩＤにより特定されるセッション設定ファイル内に記憶するとともに、共有ファイル１１５のユーザ毎に設定されているデータの設定値の変更を行う（ステップＳ３５１）。
【００５０】
その後、Ｗｅｂアプリケーションは、変更された設定値に基づいて文書一覧画面（図６）をセッションＷｅｂサーバで作成し、このＨＴＭＬページをセッションＷｅｂクライアントに送信して（ステップＳ３７０）、本処理を終了する。
【００５１】
上記ステップＳ３３０，Ｓ３４０，Ｓ３５０の判別の結果、上述のログイン処理、ログアウト処理、表示形式変更処理のいずれの処理でもないときは、その他の処理を実行する（ステップＳ３６０）。
【００５２】
具体的には、Ｗｅｂアプリケーションは、ＨＴＴＰリクエストの処理要求コマンドがその他の処理、即ち、ログイン処理、ログアウト処理、表示形式変更処理以外であると判断してその処理を実行する。その後、その処理結果を示すＨＴＭＬページの作成し、このＨＴＭＬページをセッションＷｅｂクライアントに送信して（ステップＳ３７０）、本処理を終了する。
【００５３】
上記実施の形態では、Ｗｅｂサーバクラスタ１１０上で文書管理を行う場合を例として説明したが、Ｗｅｂサーバクラスタ１１０上で行う処理であれば文書管理に限定されるわけでなく、共有ファイル中の共有データを各Ｗｅｂサーバ１１１，１１２，１１３で共有するおおまかな流れが図３のフローチャートで示すような処理となればよい。
【００５４】
具体的には、図８に示すように、まず、ＨＴＴＰリクエストを受けると、セッション中か否かを判別し（ステップＳ８１０）、この判別の結果、セッション中でないとき、即ち、セッションがこのＨＴＴＰリクエストを受けたことにより開始したと判断したとき、Ｗｅｂサーバ１１１，１１２，１１３のいずれか１つをこのセッションＷｅｂクライアントに対するセッションＷｅｂサーバに割り振ると共に、共有ファイル１１５からセッションＷｅｂサーバのローカルファイルにセッションＷｅｂクライアントからのＨＴＴＰリクエストの要求処理を行うために必要な共有データをコピーし（ステップＳ８３０）、このローカルファイルに保存された情報に基づきＨＴＭＬページを作成し、セッションＷｅｂクライアントに返信して（ステップＳ８７０）、本処理を終了する。セッションの開始時は、セッションＷｅｂサーバの割り振りのみを行い、次のセッションがセッションＷｅｂクライアントからあったときに、ステップＳ８３０の処理を行うようにしてもよい。
【００５５】
ステップＳ８１０の判別の結果、セッション中であるとき、ＨＴＴＰリクエストの要求処理を行うのに共有ファイルの共有データを更新する必要があるか否かを判別し（ステップＳ８２０）、この判別の結果、更新の必要があるとき、上記ローカルファイルに保存されたデータと共有ファイル１１５のデータの両方を更新し（ステップＳ８４０）、その後、ローカルファイル中のこの更新データに基づいてＨＴＴＰリクエストの要求処理をセッションＷｅｂサーバで実行する（ステップＳ８５０）。その後、この処理結果を示すＨＴＭＬページを作成し、セッションＷｅｂクライアントに返信して（ステップＳ８７０）、本処理を終了する。ただし、この場合、共有ファイル１１５内の共有データの更新を最小限に抑えるために、頻繁に更新されるような情報はローカルファイルのみで管理されるようになっていることが好ましい。
【００５６】
ステップＳ８２０の判別の結果、更新の必要がないとき（ステップＳ８２０でＮＯ）、ローカルファイル中にステップＳ８３０でコピーされた共有データに基づいてＨＴＴＰリクエストの要求処理をセッションＷｅｂサーバで実行し（ステップＳ８６０）、その処理結果を示すＨＴＭＬページを作成し、セッションＷｅｂクライアントに送信して（ステップＳ８７０）、本処理を終了する。
【００５７】
以上、本実施の形態によれば、Ｗｅｂアプリケーションは、セッションがこのＨＴＴＰリクエストを受けたことにより開始したと判断したとき（ステップＳ８１０でＮＯ）、共有ファイル１１５内の共有データをセッションＷｅｂサーバのローカルファイルにコピーし（ステップＳ８３０）、その後のセッション中は（ステップＳ８１０でＹＥＳ）、ＨＴＴＰリクエストの処理が共有データの更新を伴う処理でない場合（ステップＳ８２０でＮＯ）、ローカルファイルにコピーされた共有データに基づいてＨＴＴＰリクエストの要求処理を行うので（ステップＳ８６０）、共有ファイルへのアクセスを最低限に抑えることができ、応答速度の低下を防止することができる。
【００５８】
本発明は、Ｗｅｂサーバ１１１，１１２，１１３のいずれか１つの記憶媒体等の媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現し、そのプログラムコードを記憶した記憶媒体等の媒体が本発明を構成する。プログラムコードを供給するための記憶媒体等の媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、或いはネットワークを介したダウンロード等を用いることができる。
【００５９】
また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も、本発明に含まれることは言うまでもない。
【００６０】
更に、記憶媒体等の媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合も、本発明に含まれることは言うまでもない。 
【図面の簡単な説明】
【００６１】
【図１】本発明の実施の形態に係るＷｅｂアプリケーションを実行するネットワークの概略構成を示す図である。
【図２】図１におけるＷｅｂサーバクラスタ１１０のノードを説明するのに用いられる図である。
【図３】図１のＷｅｂサーバクラスタ１１０上で稼動するＷｅｂアプリケーションによる文書管理処理のフローチャートである。
【図４】図３のステップＳ３７０の処理により作成されるログイン画面の一例である。
【図５】図３のステップＳ３７０の処理により作成される文書一覧画面の一例である。
【図６】図３のステップＳ３７０の処理により作成される文書一覧画面の一例である。
【図７】図３のステップＳ３７０の処理により作成される表示設定変更画面の一例である。
【図８】図１のＷｅｂサーバクラスタ１１０上で稼動するＷｅｂアプリケーションによるデータ共有処理の概略を示すフローチャートである。
【符号の説明】
【００６２】
１００  ネットワーク
１０１，１０２，１０３  Ｗｅｂクライアント
１１１ａ，１１２ａ，１１３ａ  ローカルファイル
１１０  Ｗｅｂサーバクラスタ
１１１，１１２，１１３  Ｗｅｂサーバ
１１５  共有ファイル
１３１，１３２  ローカルエリアネットワーク
【図１】
2005173823.tif 000003
【図２】
2005173823.tif 000004
【図３】
2005173823.tif 000005
【図４】
2005173823.tif 000006
【図５】
2005173823.tif 000007
【図６】
2005173823.tif 000008
【図７】
2005173823.tif 000009
【図８】
2005173823.tif 000010