JP4202534B2 - Web data cache update method and cache update system - Google Patents

Web data cache update method and cache update system Download PDF

Info

Publication number
JP4202534B2
JP4202534B2 JP18001899A JP18001899A JP4202534B2 JP 4202534 B2 JP4202534 B2 JP 4202534B2 JP 18001899 A JP18001899 A JP 18001899A JP 18001899 A JP18001899 A JP 18001899A JP 4202534 B2 JP4202534 B2 JP 4202534B2
Authority
JP
Japan
Prior art keywords
web
data
update
cache
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP18001899A
Other languages
Japanese (ja)
Other versions
JP2001005715A (en
Inventor
功司 武村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP18001899A priority Critical patent/JP4202534B2/en
Publication of JP2001005715A publication Critical patent/JP2001005715A/en
Application granted granted Critical
Publication of JP4202534B2 publication Critical patent/JP4202534B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、WebサーバとWebクライアントとの間にWebデータをキャッシングするプロセスを介在させたWebネットワークに適用して好適なキャッシュ更新方法およびキャッシュ更新システムに係り、特に、WebサーバおよびWebデータをキャッシングするプロセス上の既存のソフトウェア資源をなんら改造することなしに、WebサーバとWebデータをキャッシングするプロセスとの間の通信量を大幅に削減し、かつWebクライアントからのデータ要求に対する応答時間を飛躍的に短縮することを可能とするWebデータのキャッシュ更新方法およびキャッシュ更新システムに関する。
【0002】
【従来の技術】
近年の通信技術の向上に伴ない、複数のネットワークをルータなどで相互に接続することにより、異なるネットワークに接続された端末同士の通信を可能とした相互接続ネットワークが多く構築されている。そして、この種の相互接続ネットワークでは、Webサーバなどと称される端末が一元的に保有するデータ(Webデータ)をWebクライアントなどと称される端末がHTTP(HyperText Transfer Protocol)の規定に基づいて適宜要求するといったクライアント−サーバ型のデータ授受が広く行なわれている。
【0003】
また、このWebクライアントからWebサーバへのアクセスでは、Webプロキシサーバなどと称される、Webサーバが提供するWebデータをキャッシングしてWebサーバの役割を代理する端末を介在させることが多い。このWebプロキシサーバでWebサーバのデータをキャッシングし、このキャシングしたWebデータをWebクライアントの要求に応じて提供すれば、Webサーバまでの通信を少なくすることができ、Webクライアントから見たデータリクエストの応答時間が改善される。
【0004】
図8は、このWebプロキシサーバを介在させたWebサーバおよびWebクライアント間のデータ授受を説明するための図である。
【0005】
図8に示す相互接続ネットワークは、LAN1(1)とLAN2(2)とをルータ1(41)、低速通信回線(3)およびルータ(42)により相互に接続したものであり、LAN1(1)には計算機1(10)が、LAN2(2)には計算機2(20)と計算機3(30)とがそれぞれ接続されている。そして、計算機1(10)では、Webサーバプロセス(11)がデータファイル(12)のWebデータを提供すべく動作し、計算機2(20)では、Webプロキシサーバプロセス(21)がキャッシュファイル(22)にWebデータをキャッシングし、さらに、計算機3(30)では、Webクライアントプロセス(31)がWebサーバプロセス(11)にWebデータを要求すべく動作している。
【0006】
より具体的には、計算機3(30)のWebクライアントプロセス(31)から計算機1(10)のWebサーバプロセス(11)にWebデータの要求が発生されると、この要求が計算機2(20)のWebプロキシサーバプロセス(21)に引き渡され、この要求を受けた計算機2(20)のWebプロキシサーバプロセス(21)が、ルータ2(42)、低速通信回線(3)、ルータ1(41)を経由して、計算機1(10)のWebサーバプロセス(11)にそのWebデータを要求する。そして、計算機1(10)のWebサーバプロセス(11)は、データファイル(12)からWebデータを読み出し、ルータ1(41)、低速通信回線(3)、ルータ(42)を経由して計算機2(20)に転送する。計算機2(20)のWebプロキシサーバプロセス(21)は、そのWebデータをキャッシュファイル(22)にキャッシングするととも、計算機3(30)のWebクライアントプロセス(31)に転送する。
【0007】
その後、他の計算機3(30)のWebクライアントプロセス(31)から同じWebデータの要求が発生されると、この要求を受けた計算機2(20)のWebプロキシサーバプロセス(21)は、キャッシュファイル22を調べ、既にキャッシングしたWebデータがキャッシングファイル(22)に格納されていれば、そのWebデータを読み出し、要求元の計算機3(30)のWebクライアントプロセス(31)に転送する。
【0008】
これにより、多くの場合に低速通信回線(3)を介したデータ通信を省くことができるようになり、Webクライアントプロセス(31)から見たデータリクエストの応答時間が改善されることになる。この効果は、低速通信回線(3)の通信速度が低ければ低いほど大きいものとなる。
【0009】
【発明が解決しようとする課題】
ところで、このWebプロキシサーバは、Webクライアントに転送するWebデータを常にWebサーバが提供する最新のWebデータと一致させなければならない。そのため、Webプロキシサーバは、WebクライアントからWebデータを要求される度に、キャッシング中のWebデータの更新を試みる。図9は、このWebデータの更新手順を説明するための図である。
【0010】
WebクライアントからWebデータを要求されると(図9(1))、Webプロキシサーバは、まず、キャッシング中のWebデータの更新日時をWebサーバに通知し、その日時以降に更新があったかどうかを問い合わせる(図9(2))。
【0011】
一方、Webサーバは、この問い合わせに対して、更新があった場合にはデータ本体とデータの更新日時とを(図9(3))、なければ応答のみを返答する(図9(4))。
【0012】
そして、Webプロキシサーバは、データ本体を受け取ったならばキャッシング中のデータを更新した上で、また、応答のみの場合は、キャッシング中のWebデータをWebクライアントに返送する(図9(5),(5)′)
なお、HTTPの規定では、Webサーバへの問い合わせにIf−Modified−Sinceヘッダを付けたGETリクエストが用いられる。このリクエストには、Webデータを一意に示すURLとキャッシング中のWebデータの更新日時とが含まれる。また、更新がない場合の応答には、“Not Modified”というレスポンスが用いられる。
【0013】
また、要求されたWebデータをキャッシングしていない場合、Webプロキシサーバは、If−Modified−Sinceヘッダを付けずにGETリクエストをWebサーバに送る。このリクエストのレスポンスには、データ本体とデータの更新日時とが含まれる。
【0014】
しかしながら、このような手順では、WebプロキシサーバがWebクライアントからデータ要求を受けたときに、必ずWebサーバに対してリクエストを送り、そのレスポンスを待つことになる。したがって、WebプロキシサーバとWebサーバとが低速な通信回線で結ばれている場合には、リクエストの応答が帰ってくるまでの時間が長くなり、WebクライアントがWebデータを要求してからそのWebデータを得られるまでの応答時間が長くなってしまうといった問題があった。
【0015】
この発明はこのような実情を考慮してなされたものであり、WebサーバおよびWebプロキシサーバ上の既存のソフトウェア資源をなんら改造することなしに、WebサーバとWebプロキシサーバとの間の通信量を大幅に削減し、かつWebクライアントからのデータ要求に対する応答時間を飛躍的に短縮することを可能とするWebデータのキャッシュ更新方法およびキャッシュ更新システムを提供することを目的とする。
【0016】
【課題を解決するための手段】
前述した目的を達成するために、この発明は、Webデータを記憶したデータファイルを有するWebサーバコンピュータと前記WebデータをアクセスするWebクライアントコンピュータの間に、前記Webデータをキャッシングするキャッシュファイルを有するキャッシング用コンピュータを介在して設け、前記Webサーバコンピュータのデータ管理プロセスによって、データファイルの前記Webデータの更新を監視して、更新された場合にそのURLの利用者グループに属するクライアントに更新通知を行ない、前記キャッシング用コンピュータのキャッシュ管理テーブルを有するキャッシュ管理プロセスによって、前記キャッシュファイルにキャッシングされている前記WebデータのURL、更新日時およびアクセス日時を管理テーブルによって管理し、前記キャッシング用コンピュータのWebプロキシサーバプロセスによって、前記Webクライアントコンピュータからのアクセス要求に基づき、前記キャッシュファイルまたは前記Webサーバコンピュータから得られた前記Webデータを前記Webクライアントコンピュータへ転送し、前記キャッシング用コンピュータの前記キャッシュ管理プロセスによって、前記Webサーバコンピュータから前記更新通知されたURLが前記管理テーブルに存在する場合、前記管理テーブルのアクセス日時から一定期間経過していなければ、前記更新情報に含まれる更新日時前記管理テーブルの更新日時を更新して、前記管理テーブルの更新日時に保存して、前記Webサーバコンピュータへ前記URLのデータを要求し、前記管理テーブルのアクセス時間から一定期間経過していれば、前記管理テーブルから前記更新通知されたURLとその更新日時およびアクセス日時とを削除するようにしたものである。
【0017】
この発明においては、キャッシング用コンピュータにキャッシングされたWebデータが更新された際、Webサーバコンピュータのデータ管理プロセスからの通知に応じて、キャッシング中のWebデータを書き換えさせるべく、キャッシング用コンピュータのキャッシュ管理プロセスが、Webデータをキャッシュするプロセスの一例であるWebプロキシサーバプロセスに対して、そのWebデータを要求することから、従来であればWebクライアントコンピュータからのデータ要求時に発生していたWebプロキシサーバプロセスからWebサーバコンピュータへの更新有無の問い合わせを省略できるため、Webサーバコンピュータとキャッシング用サーバコンピュータとの間の通信量を大幅に削減できるとともに、Webクライアントコンピュータからのデータ要求に対する応答時間を飛躍的に短縮できることになる。
また、キャッシング用コンピュータのキャッシュ管理プロセスが、更新管理するWebデータそれぞれについてWebクライアントコンピュータからのアクセス日時を記録し、一定時間を越えてアクセスのないWebデータを更新管理の対象外とすることにより、Webサーバコンピュータとキャッシング用コンピュータとの間の通信量をさらに削減できることになる。
【0018】
また、データ管理プロセスがWebサーバコンピュータが保持するWebデータの更新を監視し、一方、キャッシング用コンピュータのキャッシュ管理プロセスがこのデータ管理プロセスからの更新通知に応じてWebデータの書き換えを発生させるために、既存のWebサーバプロセスおよびWebプロキシサーバプロセスをなんら改造する必要がない。
【0021】
また、この発明は、データ管理プロセスからキャッシュ管理プロセスへの更新通知を一定時間毎に一括して送信するようにしたものである。
【0022】
これにより、同様に、Webサーバコンピュータとキャッシング用コンピュータとの間の通信量をさらに削減できることになる。
【0023】
【発明の実施の形態】
以下、図面を参照しながらこの発明の実施形態を説明する。図1は、この発明の実施形態に係るWebネットワークの構成を示す図である。
【0024】
図1に示すように、このWebネットワークは、LAN1(1)とLAN2(2)とをルータ1(41)、低速通信回線(3)およびルータ(42)により相互に接続したものであり、LAN1(1)には計算機1(10)が、LAN2(2)には計算機2(20)と計算機3(30)とがそれぞれ接続されている。そして、計算機1(10)では、Webサーバプロセス(11)がデータファイル(12)のWebデータを提供すべく動作し、計算機2(20)では、Webプロキシサーバプロセス(21)がキャッシュファイル(22)にWebデータをキャッシングし、さらに、計算機3(30)では、Webクライアントプロセス(31)がWebサーバプロセス(11)にWebデータを要求すべく動作している。
【0025】
また、これに加えて、このWebネットワークでは、計算機1(10)でデータ管理プロセス(13)が、計算機2(20)でキャッシュ管理プロセス(23)がそれぞれ動作する。そして、この発明は、この計算機1(10)のデータ管理プロセス(13)と計算機2(20)のキャッシュ管理プロセス(23)とがキャッシュファイル(22)のWebデータをより効率的に更新管理すべく動作する点を特徴としており、以下、この点について詳述する。
【0026】
このWebネットワークでは、まず、Webプロキシサーバプロセス(21)からWebサーバプロセス(11)を見た場合のWebプロキシとしてキャッシュ管理プロセス(23)を設定する。これにより、Webプロキシサーバプロセス(21)とWebサーバプロセス(11)との通信をキャッシュ管理プロセス(23)に中継させるようにする。
【0027】
一方、データ管理プロセス(13)は、Webサーバプロセス(11)がデータファイル(12)に保持するWebデータをカテゴリごとに分けて管理している。そのために、このデータ管理プロセス(13)は、各Webデータを一意に示すURLを引数にしたハッシュ関数をもっており、ハッシュ関数の値が同じデータを同じカテゴリとしている。なお、キャッシュ管理プロセス(23)も、このデータ管理プロセス(13)と同じハッシュ関数をもっている。
【0028】
また、このデータ管理プロセス(13)とキャッシュ管理プロセス(23)とは、図2に示すような、ハッシュ関数の各値にIPマルチキャストのホスト・グループを対応づけた対応表をもっている。IPマルチキャストとは、特定多数の相手にデータを同報するためのものであり、あるホスト・グループに向けてデータを送信すると、そのホスト・グループに登録された相手すべてにそのデータが転送される。そして、この対応表は、同一カテゴリに含まれるデータの更新の通知にホスト・グループを利用するために用いられる。
【0029】
ここで、図3を参照して、データ管理プロセス(13)の動作手順について説明する。
【0030】
データ管理プロセス(13)は、Webデータの更新を監視すべくデータファイル(12)に対するアクセスを監視しており(ステップA1)、データファイル(12)のWebデータが更新されたときには(ステップA2のYES)、そのWebデータを一意に示すURLと更新日時とを含むデータ更新通知を作成する(ステップA3)。また、このときに、URLを引数にハッシュ関数の値を求め、前述の対応表からその値に対応するホスト・グループを求めておく。
【0031】
そして、データ管理プロセス(13)は、作成したデータ更新通知を一定時間ごとに一括して送信する(ステップA4のYES,ステップA5)。より具体的には、データ管理プロセス(13)は、同じハッシュ関数値をもっているデータ更新通知を1つの通知としてまとめ、このまとめたデータ更新通知をハッシュ関数値に対応するホスト・グループを宛先として送信する。このようにして送信されたデータ更新通知は、IPマルチキャストの機構により、更新前のWebデータを保持する可能性のあるWebプロキシサーバプロセス(21)のWebプロキシとなるキャッシュ管理プロセス(23)へと配送される。
【0032】
一方、キャッシュ管理プロセス(23)は、Webプロキシサーバプロセス(21)のWebプロキシとなっているので、Webサーバプロセス(11)とWebプロキシサーバプロセス(21)との通信を中継しながらその内容を監視することができる。一般的に、HTTPを用いたWebアクセスでは、Webプロキシサーバプロセス(21)からは、要求するデータのURLを含むGETリクエストがWebサーバプロセス(11)へ送られ、一方、Webサーバプロセス(11)からは、GETリクエストに対するレスポンスがWebプロキシサーバプロセス(21)へ送られる。
【0033】
そこで、このキャッシュ管理プロセス(23)は、GETリクエストとそれに対応するレスポンスを中継しながらその内容を監視することで、Webプロキシサーバプロセス(21)がキャッシュファイル(22)にキャッシングしているWebデータのURLと更新日時とを取得する。そして、各WebデータのURL、更新日時およびリクエストの発生した時間(アクセス時間)を、図4に示すようなキャッシュデータ管理表に記録する。
【0034】
このキャッシュデータ管理表にURL、更新日時およびアクセス時間を記録するタイミングは、Webプロキシサーバプロセス(21)からGETリクエストを受信したとき、または、Webサーバプロセス(11)からGETリクエストのレスポンスを受信したときである。
【0035】
ここで、図5を参照して、計算機3(30)のWebクライアントプロセス(31)からのデータ要求により、Webプロキシサーバプロセス(21)からGETリクエストを送信する前のキャッシュ管理プロセス(23)の監視動作手順について説明する。
【0036】
キャッシュ管理プロセス(23)は、Webプロキシサーバプロセス(21)からGETリクエストを受信すると、まず、そのリクエストされたURLがキャッシュデータ管理表に存在するかどうか調べ(ステップB1)、存在した場合には(ステップB2のYES)、そのときの日時をアクセス日時として保存する(ステップB3)。
【0037】
次に、If−Modified−Sinceヘッダ付きかどうかを調べ(ステップB4)、付いている場合(ステップB4のYES)、リクエスト内の更新日時とキャッシュデータ管理表の更新日時とが同じであるかを調べる(ステップB5)。双方の日時が同じならば(ステップB6のYES)、キャッシュファイル(22)にキャッシングされているデータは最新であると判断し、Webプロキシサーバプロセス(21)にデータが変更されていないことを示すレスポンス(Not Modified)を送る(ステップB7)。これにより、Webプロキシサーバプロセス(21)は、データファイル(22)のキャッシングされたWebデータを読み出し、計算機3(30)のWebクライアントプロセス(31)へ転送する。したがって、本発明によれば、従来であれば発生していたWebサーバプロセス(11)への問い合わせを省略できることになる。このWebサーバプロセス(11)への問い合わせは、低速通信回線(3)を介して行なわれるため、Webクライアントプロセス(31)からのデータ要求に対する応答時間を飛躍的に短縮する。
【0038】
一方、日時が同じでなければ(ステップB6のNO)、Webプロキシサーバプロセス(21)にキャッシングされているデータは最新ではないので、そのGETリクエストをWebサーバプロセス(11)へ転送する。この後、キャッシュ管理プロセス(23)は、このGETリクエストに対するレスポンスとしてデータ本体を受けることになるので、その時に、キャッシュデータ管理表にある更新日時をレスポンス内の更新日時に変更する。
【0039】
また、If−Modified−Sinceヘッダが付いていない場合(ステップB4のNO)、キャッシュデータ管理表の更新日時を空に設定した上で(ステップB9)、そのGETリクエストをWebサーバプロセス(11)へ転送する(ステップB8)。この場合も、キャッシュ管理プロセス(23)は、このGETリクエストに対するレスポンスとしてデータ本体を受けることになるので、その時に、キャッシュデータ管理表にある更新日時をレスポンス内の更新日時に変更する。
【0040】
キャッシュデータ管理表に存在しない場合(ステップB2のNO)、キャッシュ管理プロセス(23)は、まず、URLとアクセス日付とを保存する(ステップB10)。
【0041】
次に、If−Modified−Sinceヘッダ付きかどうかを調べ(ステップB11)、付いている場合(ステップB11のYES)、リクエスト内の更新日時を保存した上で(ステップB12)、そのGETリクエストをWebサーバプロセス(11)へ転送する(ステップB8)。この場合は、このGETリクエストに対するレスポンスとしてデータ本体を受けた場合にのみ、キャッシュデータ管理表にある更新日時をレスポンス内の更新日時に変更する。
【0042】
一方、If−Modified−Sinceヘッダが付いていない場合(ステップB11のNO)、キャッシュデータ管理表の更新日時を空に設定した上で(ステップB9)、そのGETリクエストをWebサーバプロセス(11)へ転送する(ステップB8)。この場合は、このGETリクエストに対するレスポンスとしてデータ本体を受けることになるので、その時に、キャッシュデータ管理表にある更新日時をレスポンス内の更新日時に変更する。
【0043】
次に、図6を参照して、Webサーバプロセス(11)からGETリクエストのレスポンスを受信したときのキャッシュ管理プロセス(23)の動作手順について説明する。
【0044】
キャッシュ管理プロセス(23)は、Webサーバプロセス(11)からGETリクエストのレスポンスを受信すると、そのレスポンスに対応するURLがキャッシュデータ管理表に存在するかどうかを調べ(ステップC1)、存在した場合には(ステップC2のYES)、さらに、その内容が“Not Modified”かどうか調べる(ステップC3)。ここで、その内容が“Not Modified”でなければ(ステップC3のNO)、更新日時をキャッシュデータ管理表に保存する(ステップC4)。
【0045】
そして、キャッシュ管理プロセス(23)は、このレスポンスをWebプロキシサーバプロセス(21)に転送する(ステップC5)。Webプロキシサーバプロセス(21)は、レスポンスにデータ本体が含まれている場合は、それをキャッシュファイル(22)にキャッシングするとともに、要求元の計算機3(30)に転送する。
【0046】
次に、図7を参照して、データ管理プロセス(13)から上述したデータ更新通知を受信したときのキャッシュ管理プロセス(23)の動作手順について説明する。
【0047】
キャッシュ管理プロセス(23)は、データ管理プロセス(13)からデータ更新通知を受信すると、そのURLがキャッシュデータ管理表にあるか調べ(ステップD1)、もしあれば(ステップD2のYES)、そのURLの更新日時をデータ更新通知内の更新日時に変更する(ステップD3)。次に、その時の日時とキャッシュデータ管理表のアクセス日時とを比較する(ステップD4)。そして、その間が一定時間空いていなければ(ステップD5のNO)、計算機1(10)のWebサーバプロセス(11)に対してそのURLのデータを要求する(GETリクエスト送信)(ステップD6)。この要求に応じて、Webサーバプロセス(11)は、データファイル(12)からそのWebデータを読み出し、計算機2(20)のキャッシュ管理プロセス(23)に転送する。そして、キャッシュ管理プロセス(23)は、キャッシュファイル(22)上のそのURLに対応するデータを更新する。
【0048】
一方、2つの間に一定時間空いていれば(ステップD5のYES)、一定時間の間キャッシュファイル(22)上のデータは要求されていないことが推測できるので、URLと更新日時およびアクセス日時の2つの日時とをデータ管理表から削除する(ステップD7)。このとき、Webプロキシサーバプロセス(21)に対しては、URLのデータの要求は行なわない。
【0049】
このように、この実施形態のWebネットワークでは、データ管理プロセス(13)とキャッシュ管理プロセス(23)とがキャッシュファイル(22)のWebデータをより効率的に更新管理すべく動作するため、従来であれば発生していた、Webクライアントサーバプロセス(31)がデータを要求したときのWebサーバプロセス(11)への問い合わせを省略でき、Webクライアントプロセス(31)からのデータ要求に対する応答時間を飛躍的に短縮できることになる。
【0050】
また、データ管理プロセス(13)がWebサーバプロセス(11)の保持するWebデータの更新を監視し、一方、キャッシュ管理プロセス(23)がこのデータ管理プロセス(13)からの更新通知に応じてキャッシュファイル(22)のデータ書き換えを行なっているために、既存のWebサーバプロセス(11)およびWebプロキシサーバプロセス(21)をなんら改造する必要がない。
【0051】
さらに、更新通知を受けた時に、一定時間の間要求されていないことが推測されるキャッシュファイル(22)上のデータを更新管理対象から外し、また、データ管理プロセス(13)がキャッシュ管理プロセス(23)への更新通知を一定時間毎に一括して送信することにより、Webサーバプロセス(11)とWebプロキシサーバプロセス(21)との間の通信量を削減できることになる。
【0052】
なお、前述した実施形態では、GETリクエストとそれに対応するレスポンスを中継しながらその内容を監視することで、Webプロキシサーバプロセス(21)がキャッシュファイル(22)にキャッシングしているWebデータのURLと更新日時とを取得する例を説明したが、たとえば一定時間毎にキャッシュファイル(22)を参照することにより、キャッシング中のWebデータのURLと更新日時とを取得するようにしても構わない。
【0053】
また、前述した実施形態では、計算機1(10)でデータ管理プロセス(13)が、計算機2(20)でキャッシュ管理プロセス(23)がそれぞれ動作する例を説明したが、データ管理プロセス(13)は、Webデータの更新を監視することができれば、計算機1(10)以外の計算機で動作してもよく、キャッシュ管理プロセス(23)は、Webプロシキサーバプロセス(21)とWebサーバプロセス(11)との間に介在してGETリクエストとそれに対応するレスポンスを中継しながらその内容を監視することができれば、計算機2(20)以外の計算機で動作してもよい。
【0054】
【発明の効果】
以上詳述したように、この発明によれば、WebサーバプロセスとWebプロキシサーバプロセスとの間に介在するキャッシュ管理プロセスが、Webデータが更新された旨を示す更新通知をデータ管理プロセスから受けたときに、キャッシング中のWebデータを書き換えさせるべくWebプロキシサーバプロセスに対してそのWebデータを要求するために、従来であれば発生していた、Webクライアントサーバプロセスからのデータ要求時のWebプロキシサーバプロセスからWebサーバプロセスへの更新有無の問い合わせを省略でき、WebサーバとWebプロキシサーバとの間の通信量を大幅に削減できるとともに、Webクライアントからのデータ要求に対する応答時間を飛躍的に短縮できることになる。
【0055】
また、データ管理プロセスがWebサーバプロセスの保持するWebデータの更新を監視し、一方、キャッシュ管理プロセスがこのデータ管理プロセスからの更新通知に応じてWebプロキシサーバプロセスのWebデータ書き換えを発生させるために、既存のWebサーバプロセスおよびWebプロキシサーバプロセスをなんら改造する必要がない。
【0056】
さらに、キャッシュ管理プロセスが一定時間の間要求されていないことが推測されるキャッシュ上のデータを更新管理対象から外し、また、データ管理プロセスがキャッシュ管理プロセスへの更新通知を一定時間毎に一括して送信することにより、WebサーバプロセスとWebプロキシサーバプロセスとの間の通信量をさらに削減できることになる。
【図面の簡単な説明】
【図1】この発明の実施形態に係るWebネットワークの構成を示す図。
【図2】同実施形態のデータ管理プロセスおよびキャッシュ管理プロセスが備えるハッシュ関数の各値とIPマルチキャストのホスト・グループとを対応づけた対応表を例示する図。
【図3】同実施形態のデータ管理プロセスの動作手順について説明するためのフローチャート。
【図4】同実施形態のキャッシュ管理プロセスが備える各WebデータのURL、更新日時およびリクエストの発生した時間(アクセス時間)を記録するキャッシュデータ管理表を例示する図。
【図5】同実施形態のWebプロキシサーバプロセスからGETリクエストを受信したときのキャッシュ管理プロセスの動作手順について説明するためのフローチャート。
【図6】同実施形態のWebサーバプロセスからGETリクエストのレスポンスを受信したときのキャッシュ管理プロセスの動作手順について説明するためのフローチャート。
【図7】同実施形態のデータ管理プロセスからデータ更新通知を受信したときのキャッシュ管理プロセスの動作手順について説明するためのフローチャート。
【図8】従来のWebプロキシサーバを介在させたWebサーバおよびWebクライアント間のデータ授受を説明するための図。
【図9】従来のWebプロキシサーバによるキャッシング中のWebデータの更新手順を説明するための図。
【符号の説明】
1…LAN1
2…LAN2
3…低速通信回線
10…計算機1
11…Webサーバプロセス
12…ファイルデータ
13…データ管理プロセス
20…計算機2
21…Webプロキシサーバプロセス
22…キャッシュファイル
23…キャッシュ管理プロセス
30…計算機3
31…Webクライアントプロセス
41…ルータ1
42…ルータ2
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a cache update method and a cache update system suitable for application to a Web network in which a process for caching Web data is interposed between a Web server and a Web client, and in particular, caches a Web server and Web data. Without remodeling existing software resources on the process, the amount of communication between the Web server and the process for caching Web data is greatly reduced, and the response time for data requests from Web clients is dramatically improved. The present invention relates to a cache update method and a cache update system for Web data that can be shortened to a minimum.
[0002]
[Prior art]
With recent improvements in communication technology, many interconnected networks have been constructed that enable communication between terminals connected to different networks by connecting a plurality of networks to each other with a router or the like. In this type of interconnection network, a terminal called a Web client or the like that collectively holds data (Web data) held by a terminal called a Web server or the like is based on HTTP (HyperText Transfer Protocol) regulations. Client-server type data exchange such as requesting appropriately is widely performed.
[0003]
Further, when accessing the Web server from this Web client, a terminal called a Web proxy server or the like that caches Web data provided by the Web server and acts as a proxy for the Web server is often interposed. If this Web proxy server caches Web server data and provides the cached Web data in response to a request from the Web client, communication to the Web server can be reduced, and the data request viewed from the Web client can be reduced. Response time is improved.
[0004]
FIG. 8 is a diagram for explaining data exchange between a Web server and a Web client through which this Web proxy server is interposed.
[0005]
The interconnect network shown in FIG. 8 is obtained by connecting LAN1 (1) and LAN2 (2) to each other by a router 1 (41), a low-speed communication line (3), and a router (42). Is connected to the computer 1 (10), and the LAN 2 (2) is connected to the computer 2 (20) and the computer 3 (30). In the computer 1 (10), the Web server process (11) operates to provide the Web data of the data file (12). In the computer 2 (20), the Web proxy server process (21) operates as the cache file (22). In the computer 3 (30), the Web client process (31) operates to request the Web data from the Web server process (11).
[0006]
More specifically, when a Web data request is generated from the Web client process (31) of the computer 3 (30) to the Web server process (11) of the computer 1 (10), this request is sent to the computer 2 (20). The Web proxy server process (21) of the computer 2 (20), which has been handed over to the Web proxy server process (21), receives the request from the router 2 (42), the low-speed communication line (3), and the router 1 (41). The Web data is requested to the Web server process (11) of the computer 1 (10) via. Then, the Web server process (11) of the computer 1 (10) reads the Web data from the data file (12), and passes through the router 1 (41), the low-speed communication line (3), and the router (42). Transfer to (20). The Web proxy server process (21) of the computer 2 (20) caches the Web data in the cache file (22) and transfers it to the Web client process (31) of the computer 3 (30).
[0007]
Thereafter, when the same Web data request is generated from the Web client process (31) of the other computer 3 (30), the Web proxy server process (21) of the computer 2 (20) that has received this request receives the cache file. If the cached web data is already stored in the caching file (22), the web data is read and transferred to the web client process (31) of the requesting computer 3 (30).
[0008]
As a result, data communication via the low-speed communication line (3) can be omitted in many cases, and the response time of the data request viewed from the Web client process (31) is improved. This effect becomes greater as the communication speed of the low-speed communication line (3) is lower.
[0009]
[Problems to be solved by the invention]
By the way, this Web proxy server must always match the Web data transferred to the Web client with the latest Web data provided by the Web server. Therefore, the web proxy server tries to update the web data being cached every time web data is requested from the web client. FIG. 9 is a diagram for explaining the Web data update procedure.
[0010]
When Web data is requested from the Web client (FIG. 9 (1)), the Web proxy server first notifies the Web server of the update date and time of Web data being cached, and inquires whether there has been an update since that date and time. (FIG. 9 (2)).
[0011]
On the other hand, in response to this inquiry, the Web server returns the data body and the date and time of data update (FIG. 9 (3)) if there is an update, and returns only the response if there is an update (FIG. 9 (4)). .
[0012]
Then, the Web proxy server updates the data being cached if the data body is received, and returns the Web data being cached to the Web client if only the response is received (FIG. 9 (5), (5) ')
Note that in the HTTP rules, a GET request with an If-Modified-Since header is used for an inquiry to a Web server. This request includes the URL uniquely indicating the Web data and the update date and time of the Web data being cached. Further, a response “Not Modified” is used as a response when there is no update.
[0013]
When the requested Web data is not cached, the Web proxy server sends a GET request to the Web server without attaching an If-Modified-Since header. The response to this request includes the data body and the data update date and time.
[0014]
However, in such a procedure, when the Web proxy server receives a data request from the Web client, it always sends a request to the Web server and waits for a response. Therefore, when the Web proxy server and the Web server are connected by a low-speed communication line, the time until the response of the request returns is long, and the Web data is requested after the Web client requests the Web data. There was a problem that the response time until it was obtained became longer.
[0015]
The present invention has been made in consideration of such circumstances, and can reduce the amount of communication between the Web server and the Web proxy server without modifying the existing software resources on the Web server and the Web proxy server. An object of the present invention is to provide a cache update method and cache update system for Web data that can greatly reduce the response time for a data request from a Web client.
[0016]
[Means for Solving the Problems]
  In order to achieve the above-described object, the present invention provides a caching having a cache file for caching the web data between a web server computer having a data file storing web data and a web client computer accessing the web data. An intermediary computer is provided, and the data management process of the Web server computer monitors the update of the Web data in the data file, and when it is updated, notifies the client belonging to the user group of the URL of the update. The Web data cached in the cache file by a cache management process having a cache management table of the caching computerURL, update date / time and access date / time by management tableManaging and transferring the cache file or the web data obtained from the web server computer to the web client computer based on an access request from the web client computer by a web proxy server process of the caching computer, The URL notified of the update from the Web server computer by the cache management process of the caching computer isExists in the management tableIfIf a certain period has not passed since the access date and time of the management table,Update date and time included in the update informationInUpdate date of the management tableUpdateAnd saves the URL data to the Web server computer by saving the management table at the update date and time.If a certain period of time has elapsed from the access time of the management table, the URL notified of the update, the update date and time, and the access date and time are deleted from the management table.It is what you do.
[0017]
  In the present invention, when the cached Web data is updated in the caching computer, the cache management of the caching computer is performed so that the Web data being cached is rewritten in response to a notification from the data management process of the Web server computer. Since the process requests the Web data from a Web proxy server process that is an example of a process that caches Web data, the Web proxy server process that has conventionally occurred when requesting data from a Web client computer Inquiries about whether or not to update from the Web server computer to the Web server computer can be omitted, so the amount of communication between the Web server computer and the caching server computer can be greatly reduced and the Web class can be reduced. It becomes possible to remarkably shorten the response time for a data request from Ant computer.
  In addition, the cache management process of the caching computer records the access date and time from the Web client computer for each Web data to be updated, and excludes Web data that has not been accessed for a certain time from being subject to update management. The amount of communication between the Web server computer and the caching computer can be further reduced.
[0018]
In addition, the data management process monitors the update of the Web data held by the Web server computer, while the cache management process of the caching computer causes the Web data to be rewritten in response to the update notification from the data management process. There is no need to modify the existing web server process and web proxy server process.
[0021]
In addition, according to the present invention, update notifications from the data management process to the cache management process are collectively transmitted at regular intervals.
[0022]
As a result, similarly, the amount of communication between the Web server computer and the caching computer can be further reduced.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing a configuration of a Web network according to an embodiment of the present invention.
[0024]
As shown in FIG. 1, this Web network is obtained by connecting LAN1 (1) and LAN2 (2) to each other by a router 1 (41), a low-speed communication line (3), and a router (42). Computer 1 (10) is connected to (1), and computer 2 (20) and computer 3 (30) are connected to LAN 2 (2), respectively. In the computer 1 (10), the Web server process (11) operates to provide the Web data of the data file (12). In the computer 2 (20), the Web proxy server process (21) operates as the cache file (22). In the computer 3 (30), the Web client process (31) operates to request the Web data from the Web server process (11).
[0025]
In addition, in this Web network, the computer 1 (10) operates the data management process (13), and the computer 2 (20) operates the cache management process (23). In the present invention, the data management process (13) of the computer 1 (10) and the cache management process (23) of the computer 2 (20) update and manage the Web data of the cache file (22) more efficiently. The feature is that it operates as much as possible, and this point will be described in detail below.
[0026]
In this Web network, first, the cache management process (23) is set as a Web proxy when the Web server process (11) is viewed from the Web proxy server process (21). As a result, communication between the Web proxy server process (21) and the Web server process (11) is relayed to the cache management process (23).
[0027]
On the other hand, the data management process (13) manages the Web data held in the data file (12) by the Web server process (11) separately for each category. Therefore, this data management process (13) has a hash function with a URL uniquely indicating each Web data as an argument, and data having the same hash function value is in the same category. The cache management process (23) also has the same hash function as the data management process (13).
[0028]
The data management process (13) and the cache management process (23) have a correspondence table in which each value of the hash function is associated with an IP multicast host group as shown in FIG. IP multicast is to broadcast data to a large number of specific parties. When data is sent to a certain host group, the data is transferred to all the parties registered in that host group. . This correspondence table is used to use the host group for notification of update of data included in the same category.
[0029]
Here, the operation procedure of the data management process (13) will be described with reference to FIG.
[0030]
The data management process (13) monitors access to the data file (12) to monitor the update of the Web data (Step A1), and when the Web data of the data file (12) is updated (Step A2). YES), a data update notification including the URL uniquely indicating the Web data and the update date and time is created (step A3). At this time, the value of the hash function is obtained using the URL as an argument, and the host group corresponding to the value is obtained from the above correspondence table.
[0031]
Then, the data management process (13) collectively transmits the created data update notification at regular intervals (YES in step A4, step A5). More specifically, the data management process (13) collects data update notifications having the same hash function value as one notification, and sends the combined data update notifications to the host group corresponding to the hash function value as a destination. To do. The data update notification transmitted in this way is sent to the cache management process (23) serving as the Web proxy of the Web proxy server process (21) that may hold the Web data before the update by the IP multicast mechanism. Delivered.
[0032]
On the other hand, since the cache management process (23) is a Web proxy of the Web proxy server process (21), the contents of the cache management process (23) are relayed while relaying communication between the Web server process (11) and the Web proxy server process (21). Can be monitored. In general, in Web access using HTTP, the Web proxy server process (21) sends a GET request including the URL of the requested data to the Web server process (11), while the Web server process (11). Sends a response to the GET request to the Web proxy server process (21).
[0033]
Therefore, the cache management process (23) monitors the contents of the GET request and the corresponding response while relaying the GET request and the Web data cached in the cache file (22) by the Web proxy server process (21). URL and update date and time are acquired. Then, the URL of each Web data, the update date and time, and the request generation time (access time) are recorded in a cache data management table as shown in FIG.
[0034]
The URL, update date / time, and access time are recorded in the cache data management table when a GET request is received from the Web proxy server process (21) or a response to the GET request is received from the Web server process (11). Is the time.
[0035]
Here, referring to FIG. 5, in response to a data request from the Web client process (31) of the computer 3 (30), the cache management process (23) before transmitting a GET request from the Web proxy server process (21). A monitoring operation procedure will be described.
[0036]
When the cache management process (23) receives the GET request from the Web proxy server process (21), it first checks whether the requested URL exists in the cache data management table (step B1). (YES in step B2), the date and time at that time is stored as the access date and time (step B3).
[0037]
Next, it is checked whether or not the If-Modified-Since header is attached (step B4). If it is attached (YES in step B4), it is determined whether the update date and time in the request and the update date and time of the cache data management table are the same. Check (step B5). If both dates and times are the same (YES in step B6), it is determined that the data cached in the cache file (22) is the latest, and the Web proxy server process (21) indicates that the data has not been changed. A response (Not Modified) is sent (step B7). As a result, the Web proxy server process (21) reads the cached Web data of the data file (22) and transfers it to the Web client process (31) of the computer 3 (30). Therefore, according to the present invention, it is possible to omit the inquiry to the Web server process (11) that has occurred conventionally. Since the inquiry to the Web server process (11) is made via the low-speed communication line (3), the response time for the data request from the Web client process (31) is drastically shortened.
[0038]
On the other hand, if the date and time are not the same (NO in step B6), the data cached in the Web proxy server process (21) is not the latest, and the GET request is transferred to the Web server process (11). Thereafter, the cache management process (23) receives the data body as a response to the GET request. At that time, the update date / time in the cache data management table is changed to the update date / time in the response.
[0039]
If the If-Modified-Since header is not attached (NO in step B4), the update date / time of the cache data management table is set to empty (step B9), and the GET request is sent to the Web server process (11). Transfer (step B8). Also in this case, the cache management process (23) receives the data body as a response to this GET request, and at that time, the update date / time in the cache data management table is changed to the update date / time in the response.
[0040]
If it does not exist in the cache data management table (NO in step B2), the cache management process (23) first stores the URL and the access date (step B10).
[0041]
Next, it is checked whether or not the If-Modified-Since header is attached (step B11). If it is attached (YES in step B11), the update date and time in the request is saved (step B12), and the GET request is sent to the Web. Transfer to the server process (11) (step B8). In this case, only when the data body is received as a response to the GET request, the update date / time in the cache data management table is changed to the update date / time in the response.
[0042]
On the other hand, if the If-Modified-Since header is not attached (NO in step B11), the update date / time of the cache data management table is set to empty (step B9), and the GET request is sent to the Web server process (11). Transfer (step B8). In this case, since the data body is received as a response to this GET request, the update date / time in the cache data management table is changed to the update date / time in the response.
[0043]
Next, an operation procedure of the cache management process (23) when a response to the GET request is received from the Web server process (11) will be described with reference to FIG.
[0044]
When the cache management process (23) receives the response of the GET request from the Web server process (11), it checks whether or not the URL corresponding to the response exists in the cache data management table (step C1). (YES in step C2), it is further checked whether or not the content is “Not Modified” (step C3). If the content is not “Not Modified” (NO in step C3), the update date and time is stored in the cache data management table (step C4).
[0045]
Then, the cache management process (23) transfers this response to the Web proxy server process (21) (step C5). When the response includes the data body, the Web proxy server process (21) caches it in the cache file (22) and transfers it to the requesting computer 3 (30).
[0046]
Next, the operation procedure of the cache management process (23) when the data update notification is received from the data management process (13) will be described with reference to FIG.
[0047]
When the cache management process (23) receives the data update notification from the data management process (13), it checks whether the URL is in the cache data management table (step D1), and if there is (YES in step D2), the URL Is updated to the update date and time in the data update notification (step D3). Next, the date and time at that time and the access date and time of the cache data management table are compared (step D4). If there is no time between them (NO in Step D5), the URL data is requested to the Web server process (11) of the computer 1 (10) (GET request transmission) (Step D6). In response to this request, the Web server process (11) reads the Web data from the data file (12) and transfers it to the cache management process (23) of the computer 2 (20). Then, the cache management process (23) updates the data corresponding to the URL on the cache file (22).
[0048]
On the other hand, if there is a fixed time between the two (YES in step D5), it can be assumed that the data on the cache file (22) is not requested for a fixed time, so the URL, the update date and the access date and time Two dates and times are deleted from the data management table (step D7). At this time, no URL data request is made to the Web proxy server process (21).
[0049]
As described above, in the Web network of this embodiment, the data management process (13) and the cache management process (23) operate to update and manage the Web data of the cache file (22) more efficiently. Inquiry to the Web server process (11) when the Web client server process (31) requests data can be omitted, and the response time for the data request from the Web client process (31) has been dramatically increased. It can be shortened to.
[0050]
Also, the data management process (13) monitors the update of the Web data held by the Web server process (11), while the cache management process (23) caches in response to the update notification from the data management process (13). Since the data of the file (22) is rewritten, there is no need to modify the existing Web server process (11) and the Web proxy server process (21).
[0051]
Further, when the update notification is received, the data on the cache file (22) which is estimated not to be requested for a certain period of time is excluded from the update management target, and the data management process (13) By transmitting the update notification to 23) collectively at regular intervals, it is possible to reduce the amount of communication between the Web server process (11) and the Web proxy server process (21).
[0052]
In the above-described embodiment, by monitoring the contents while relaying the GET request and the corresponding response, the URL of the Web data cached in the cache file (22) by the Web proxy server process (21) Although an example of acquiring the update date and time has been described, the URL of the Web data being cached and the update date and time may be acquired by referring to the cache file (22) at regular intervals, for example.
[0053]
In the above-described embodiment, the example in which the data management process (13) operates in the computer 1 (10) and the cache management process (23) operates in the computer 2 (20) has been described. However, the data management process (13) May be operated on a computer other than the computer 1 (10) as long as the update of the Web data can be monitored. The cache management process (23) includes the Web proxy server process (21) and the Web server process (11). If the contents can be monitored while relaying the GET request and the response corresponding to the GET request, the operation may be performed by a computer other than the computer 2 (20).
[0054]
【The invention's effect】
As described above in detail, according to the present invention, the cache management process interposed between the web server process and the web proxy server process receives an update notification indicating that the web data has been updated from the data management process. Sometimes, in order to request the Web proxy server process to rewrite the Web data being cached, the Web proxy server at the time of requesting data from the Web client server process, which has conventionally occurred, is generated. Inquiries about whether to update from the process to the Web server process can be omitted, the amount of communication between the Web server and the Web proxy server can be greatly reduced, and the response time for the data request from the Web client can be dramatically reduced. Become.
[0055]
In addition, the data management process monitors the update of the Web data held by the Web server process, while the cache management process causes the Web proxy server process to rewrite the Web data in response to the update notification from the data management process. There is no need to modify the existing web server process and web proxy server process.
[0056]
In addition, the cache management data that is assumed not to be requested for a certain period of time is excluded from the update management target, and the data management process collects update notifications to the cache management process at regular intervals. Thus, the amount of communication between the Web server process and the Web proxy server process can be further reduced.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a Web network according to an embodiment of the present invention.
FIG. 2 is an exemplary view showing a correspondence table in which each value of a hash function included in the data management process and the cache management process of the embodiment is associated with an IP multicast host group.
FIG. 3 is an exemplary flowchart for explaining an operation procedure of a data management process according to the embodiment;
FIG. 4 is an exemplary view illustrating a cache data management table that records URLs, update dates and times when requests are generated (access times) of the Web data included in the cache management process of the embodiment;
FIG. 5 is an exemplary flowchart for explaining an operation procedure of a cache management process when a GET request is received from the Web proxy server process of the embodiment;
FIG. 6 is an exemplary flowchart for explaining the operation procedure of the cache management process when a response to the GET request is received from the Web server process of the embodiment;
FIG. 7 is an exemplary flowchart for explaining the operation procedure of the cache management process when a data update notification is received from the data management process of the embodiment;
FIG. 8 is a diagram for explaining data exchange between a Web server and a Web client through a conventional Web proxy server.
FIG. 9 is a diagram for explaining a procedure for updating Web data during caching by a conventional Web proxy server.
[Explanation of symbols]
1 ... LAN1
2 ... LAN2
3. Low speed communication line
10 ... Calculator 1
11 ... Web server process
12 ... File data
13 ... Data management process
20 ... Calculator 2
21 ... Web proxy server process
22 ... Cache file
23 ... Cache management process
30 ... Calculator 3
31 ... Web client process
41 ... Router 1
42 ... Router 2

Claims (9)

Webデータを記憶したデータファイルを有するWebサーバコンピュータと前記WebデータをアクセスするWebクライアントコンピュータとの間に、前記Webデータをキャッシングするキャッシュファイルを有するキャッシング用コンピュータを介在したWebネットワークに適用されるキャッシュ更新方法において、
前記Webサーバコンピュータのデータ管理プロセスによって、データファイルの前記Webデータの更新を監視して、更新された場合にそのURLの利用者グループに属するクライアントに更新通知を行ない、
前記キャッシング用コンピュータのキャッシュ管理テーブルを有するキャッシュ管理プロセスによって、前記キャッシュファイルにキャッシングされている前記WebデータのURL、更新日時およびアクセス日時を管理テーブルによって管理し、
前記キャッシング用コンピュータのWebプロキシサーバプロセスによって、前記Webクライアントコンピュータからのアクセス要求に基づき、前記キャッシュファイルまたは前記Webサーバコンピュータから得られた前記Webデータを前記Webクライアントコンピュータへ転送し、
前記キャッシング用コンピュータの前記キャッシュ管理プロセスによって、前記Webサーバコンピュータから前記更新通知されたURLが前記管理テーブルに存在する場合、前記管理テーブルのアクセス日時から一定期間経過していなければ、前記更新情報に含まれる更新日時前記管理テーブルの更新日時を更新して、前記Webサーバコンピュータへ前記URLのデータを要求し、前記管理テーブルのアクセス時間から一定期間経過していれば、前記管理テーブルから前記更新通知されたURLとその更新日時およびアクセス日時とを削除することを特徴とするWebデータのキャッシュ更新方法。
A cache applied to a Web network in which a caching computer having a cache file for caching the Web data is interposed between a Web server computer having a data file storing the Web data and a Web client computer accessing the Web data. In the update method,
The update of the Web data of the data file is monitored by the data management process of the Web server computer, and if updated, the update notification is sent to the client belonging to the user group of the URL,
The cache management process having a cache management table of the caching computer manages the URL, update date and access date and time of the Web data cached in the cache file by the management table ,
Based on an access request from the Web client computer, the Web data obtained from the cache file or the Web server computer is transferred to the Web client computer by the Web proxy server process of the caching computer.
If the URL notified from the Web server computer by the cache management process of the caching computer exists in the management table, the update information is included in the update information if a certain period has not passed since the access date and time of the management table. update the modification date and time of the management table update date included, the data of the URL request to the Web server computer, if the predetermined period has elapsed from the access time of the management table, the from the management table update A Web data cache update method, wherein the notified URL, its update date and time, and access date and time are deleted .
Webデータを記憶したデータファイルを有するWebサーバコンピュータと前記WebデータをアクセスするWebクライアントコンピュータの間に、前記Webデータをキャッシングするキャッシュファイルを有するキャッシング用コンピュータを介在したWebネットワークに適用されるキャッシュ更新システムにおいて、
前記Webサーバコンピュータにあって、前記データファイルの前記Webデータの更新を監視して、更新された場合にそのURLの利用者グループのクライアントに更新通知を行なうデータ管理手段と、
前記キャッシング用コンピュータにあって、前記キャッシュファイルにキャッシングされている前記WebデータのURL、更新日時およびアクセス日時を管理する管理テーブルを有するキャッシュ管理プロセスと、前記Webクライアントコンピュータからのアクセス要求に基づき、前記キャッシュファイルまたは前記Webサーバコンピュータから得られた前記Webデータを前記Webクライアントコンピュータへ転送するWebプロキシサーバプロセスとを有し、
前記キャッシュ管理プロセスは、前記Webサーバコンピュータから前記更新通知されたURLが前記管理テーブルに存在する場合、前記管理テーブルのアクセス日時から一定期間経過していなければ、前記更新情報に含まれる更新日時前記管理テーブルの更新日時を更新して、前記Webサーバコンピュータへ前記URLのデータを要求し、前記管理テーブルのアクセス時間から一定期間経過していれば、前記管理テーブルから前記更新通知されたURLとその更新日時およびアクセス日時とを削除することを特徴とするWebデータのキャッシュ更新システム。
Cache update applied to a web network via a caching computer having a cache file for caching the web data between a web server computer having a data file storing web data and a web client computer accessing the web data In the system,
Data management means in the Web server computer for monitoring the update of the Web data in the data file and notifying an update to a user group client of the URL when updated;
In the caching computer, based on a cache management process having a management table for managing the URL, update date / time and access date / time of the Web data cached in the cache file, and an access request from the Web client computer, A Web proxy server process for transferring the Web data obtained from the cache file or the Web server computer to the Web client computer,
In the cache management process, when the URL notified of the update from the Web server computer exists in the management table, the update date and time included in the update information is determined if a certain period has not elapsed since the access date and time of the management table. The update date and time of the management table is updated, the URL data is requested to the Web server computer, and if the fixed time has elapsed from the access time of the management table, the URL notified of the update from the management table and A Web data cache update system, wherein the update date and time and access date and time are deleted .
前記キャッシュ管理プロセスは、前記Webプロキシサーバプロセスから前記Webサーバコンピュータへのリクエストを監視し、前記リクエストされたURLが前記管理テーブルに存在する場合、このURLに対応する前記管理テーブルのアクセス日時を更新し、前記リクエストに含まれる更新日時と前記URLに対応する前記管理テーブルの更新日時とを比較して、一致した場合には前記キャッシュファイルに記憶される前記Webデータが最新である旨を前記Webプロキシサーバプロセスに応答し、一致しなかった場合には前記Webデータを前記Webサーバコンピュータに要求することを特徴とする請求項2記載のWebデータのキャッシュ更新システム。The cache management process monitors a request from the Web proxy server process to the Web server computer, and updates the access date and time of the management table corresponding to the URL when the requested URL exists in the management table. Then, the update date and time included in the request is compared with the update date and time of the management table corresponding to the URL, and if they match, it is determined that the Web data stored in the cache file is the latest. 3. The Web data cache update system according to claim 2, wherein, in response to a proxy server process, if they do not match, the Web server computer is requested for the Web data. 前記キャッシュ管理プロセスは、前記Webプロキシサーバプロセスから前記Webサーバコンピュータへのリクエストを監視し、前記リクエストされたURLが前記管理テーブルに存在する場合、前記管理テーブルのアクセス日時を更新し、前記リクエストに更新日時が含まれていれば、前記URLに対応する前記管理テーブルの更新日時を空にして、前記Webデータを前記Webサーバコンピュータに要求することを特徴とする請求項2記載のWebデータのキャッシュ更新システム。The cache management process monitors a request from the Web proxy server process to the Web server computer, and if the requested URL exists in the management table, updates the access date and time of the management table , 3. The Web data cache according to claim 2, wherein if the update date / time is included, the update date / time of the management table corresponding to the URL is emptied and the Web data is requested to the Web server computer. Update system. 前記キャッシュ管理プロセスは、前記Webプロキシサーバプロセスから前記Webサーバコンピュータへのリクエストを監視し、前記リクエストされたURLが前記管理テーブルに存在しない場合、前記リクエストのアクセス日時を前記管理テーブルに保存し、前記リクエストに更新日時が含まれていれば、その日時に前記URLに対応する前記管理テーブルを更新して、前記Webデータを前記Webサーバコンピュータに要求することを特徴とする請求項2記載のWebデータのキャッシュ更新システム。The cache management process monitors a request from the Web proxy server process to the Web server computer, and when the requested URL does not exist in the management table, stores the access date and time of the request in the management table; if it contains update time to the request, and updates the management table corresponding to the URL to the date, Web according to claim 2, wherein the requesting the Web data to the Web server computer Data cache update system. 前記キャッシュ管理プロセスは、前記Webプロキシサーバプロセスから前記Webサーバコンピュータへのリクエストを監視し、前記リクエストされたURLが前記管理テーブルに存在しない場合、前記リクエストのアクセス日時を前記管理テーブルに保存し、前記リクエストに更新日時が含まれていなければ、前記管理テーブルの更新日時を空にして、前記Webデータを前記Webサーバコンピュータに要求することを特徴とする請求項2記載のWebデータのキャッシュ更新システム。The cache management process monitors a request from the Web proxy server process to the Web server computer, and when the requested URL does not exist in the management table, stores the access date and time of the request in the management table; 3. The Web data cache update system according to claim 2, wherein if the request does not include an update date and time, the update date and time of the management table is emptied and the Web data is requested to the Web server computer. . 前記キャッシュ管理プロセスは、前記Webプロキシサーバプロセスから前記Webサーバコンピュータへのリクエストに対するレスポンスを監視し、前記レスポンスされたURLが前記管理テーブルに存在するか否かを調べ、存在する場合は、前記レスポンスに含まれる更新日時前記管理テーブルの更新日時を更新して、前記Webプロキシサーバプロセスにレスポンスを転送することを特徴とする請求項2記載のWebデータのキャッシュ更新システム。The cache management process monitors a response to a request from the Web proxy server process to the Web server computer, and checks whether or not the responded URL exists in the management table. 3. The Web data cache update system according to claim 2, wherein the update date and time of the management table is updated to the update date and time included in the request and the response is transferred to the Web proxy server process. Webデータを提供するWebサーバコンピュータと前記Webデータを要求するWebクライアントコンピュータとの間に前記Webデータをキャッシングするプロセスを介在させたWebネットワークに適用されるキャッシュ更新システムであって、
前記WebデータをキャッシングするプロセスがキャッシングするWebデータを更新管理するためのキャッシュ管理プロセスと、
前記キャッシュ管理プロセスに向けて前記Webデータの更新を通知するためのデータ管理プロセスとを設け、
前記データ管理プロセスは、
前記Webデータの更新を監視して、前記Webデータの更新が検出されたときに、そのWebデータを一意に示すURLと更新日時とを含む更新通知を前記キャッシュ管理プロセスに向けて送信する更新通知手段とを具備し、
前記キャッシュ管理プロセスは、
前記キャッシングされているWebデータのURLと、その更新日時およびアクセス日時とを記録するキャッシュ内容記録手段と、
前記データ管理プロセスからの前記更新通知を受信したときに、その更新通知に含まれるURLがキャッシュ内容記録手段に記録されているか否かを判定するキャッシュ判定手段と、
前記キャッシュ判定手段によりキャッシングされていると判定されたときに、前記キャ ッシュ内容記録手段に記録されたアクセス日時から一定期間経過していなければ、そのURLに対応する更新日時を前記更新通知に含まれる更新日時に書き換えるとともに、そのURLで示されるWebデータを前記Webサーバコンピュータに要求するキャッシュ更新手段と、
を具備することを特徴とするキャッシュ更新システム。
A cache update system applied to a Web network in which a process of caching the Web data is interposed between a Web server computer that provides Web data and a Web client computer that requests the Web data,
A cache management process for updating and managing the web data cached by the web data caching process;
Providing a data management process for notifying the cache management process of the update of the Web data;
The data management process includes:
An update notification for monitoring the update of the Web data and transmitting an update notification including a URL uniquely indicating the Web data and an update date and time to the cache management process when the update of the Web data is detected. Means,
The cache management process includes:
Cache content recording means for recording the URL of the cached Web data , its update date and time, and access date and time ;
A cache determination unit that determines whether or not the URL included in the update notification is recorded in the cache content recording unit when the update notification is received from the data management process;
If it is determined to be cached by the cache determination means, it included unless certain period has elapsed from the access date and time the recorded in cache contents recording means, the update date corresponding to the URL to the update notification Cache update means for rewriting the update date and time and requesting the Web server computer for the Web data indicated by the URL;
A cache update system comprising:
前記キャッシュ管理プロセスは、前記Webサーバプロセスと前記Webデータをキャッシングするプロセスとの間の前記Webデータに関する通信を監視することにより、前記WebデータをキャッシングするプロセスがキャッシングするWebデータのURLと更新日時とを取得することを特徴とする請求項記載のキャッシュ更新システム。The cache management process monitors the communication related to the Web data between the Web server process and the process that caches the Web data, so that the URL and update date / time of the Web data cached by the process that caches the Web data The cache update system according to claim 8, further comprising:
JP18001899A 1999-06-25 1999-06-25 Web data cache update method and cache update system Expired - Fee Related JP4202534B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18001899A JP4202534B2 (en) 1999-06-25 1999-06-25 Web data cache update method and cache update system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18001899A JP4202534B2 (en) 1999-06-25 1999-06-25 Web data cache update method and cache update system

Publications (2)

Publication Number Publication Date
JP2001005715A JP2001005715A (en) 2001-01-12
JP4202534B2 true JP4202534B2 (en) 2008-12-24

Family

ID=16076032

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18001899A Expired - Fee Related JP4202534B2 (en) 1999-06-25 1999-06-25 Web data cache update method and cache update system

Country Status (1)

Country Link
JP (1) JP4202534B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013156791A (en) * 2012-01-30 2013-08-15 Hitachi Ltd Gateway unit
JP6088853B2 (en) * 2013-02-27 2017-03-01 株式会社東芝 COMMUNICATION DEVICE, COMMUNICATION METHOD, AND COMMUNICATION PROGRAM
US9870415B2 (en) * 2013-09-18 2018-01-16 Quintiles Ims Incorporated System and method for fast query response

Also Published As

Publication number Publication date
JP2001005715A (en) 2001-01-12

Similar Documents

Publication Publication Date Title
US11194719B2 (en) Cache optimization
US7243136B2 (en) Approach for managing and providing content to users
AU2007313956B2 (en) Offline execution of Web based applications
US8812579B2 (en) Apparatus for transferring data via a proxy server and an associated method and computer program product
US6182111B1 (en) Method and system for managing distributed data
JP4179535B2 (en) Network system, reverse proxy, computer apparatus, data processing method and program
US7707289B1 (en) Method and system for enabling persistent access to virtual servers by an LDNS server
US8966121B2 (en) Client-side management of domain name information
JP5193056B2 (en) Method and system for maintaining up-to-date data of wireless devices
US20040111492A1 (en) Access relaying apparatus
US20060190603A1 (en) Congestion controller and method for controlling congestion of network
JP2001282609A (en) Web page acquisition service system, provider, web page acquiring method, storage medium, and program transmitting device
JP2003528396A (en) Data access
US9628549B1 (en) Method and system for controlling and accessing content servers
JPH1021134A (en) Gate way device, client computer and distributed file system connecting them
JP2010108508A (en) Satellite anticipatory bandwidth acceleration
US20060155819A1 (en) Methods and system for using caches
JP4202534B2 (en) Web data cache update method and cache update system
JP3930516B2 (en) Server apparatus, server system, and server system load balancing method
JPH10198623A (en) Cache system for network and data transfer method
JP2000089996A (en) Information processor and data base system
JP2002073401A (en) Distribution system for www contents, proxy server, www server, and distribution method for www contents and computer readable medium recording program making computer execute
JP3909152B2 (en) Server apparatus and recording medium
JP3485915B1 (en) Gateway device, client computer and proxy server computer
JP2002259333A (en) Method for transferring contents

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050317

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080708

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080908

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081007

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081009

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111017

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees