JP3651782B2 - Server selection device and server selection program - Google Patents

Server selection device and server selection program Download PDF

Info

Publication number
JP3651782B2
JP3651782B2 JP2001104059A JP2001104059A JP3651782B2 JP 3651782 B2 JP3651782 B2 JP 3651782B2 JP 2001104059 A JP2001104059 A JP 2001104059A JP 2001104059 A JP2001104059 A JP 2001104059A JP 3651782 B2 JP3651782 B2 JP 3651782B2
Authority
JP
Japan
Prior art keywords
directory
time stamp
original
file
server
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
JP2001104059A
Other languages
Japanese (ja)
Other versions
JP2002297426A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2001104059A priority Critical patent/JP3651782B2/en
Publication of JP2002297426A publication Critical patent/JP2002297426A/en
Application granted granted Critical
Publication of JP3651782B2 publication Critical patent/JP3651782B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、サーバ選択装置およびサーバ選択プログラムに係わり、特に、複数のサーバを用いた情報サービスシステムにおいて、情報提供元サーバをより短時間に選択する際に有効な技術に関する。
【0002】
【従来の技術】
コンピュータデータ化された情報をファイルと呼び、ファイルを蓄積する手段をファイルシステムと呼ぶ。
このファイルシステムは、蓄積するファイルそれぞれについて属性情報テーブルを保持しており、この属性情報テーブルの一フィールドとして更新時刻フィールドがある。
この更新時刻フィールドは、ファイルが生成、更新された時刻を示すものである。但し、ファイルシステム管理者による操作やプログラムによってこのフィールドを別のある値に設定することもできる。
ファイルシステムを保持するサーバをインターネット上に設置して提供する情報サービスとして、ホームページを記述したファイルやデジタル符号化した音楽ファイルを配信するファイル配信サービスが知られている。
また、別の情報サービスの例として、ファイルシステムが保持するファイルをデータベースプログラムによって参照した結果を通知するデータベースサービスが知られている。
【0003】
あるオリジナルファイルの複製を複数のサーバに蓄積し、複数のサーバを用いて情報サービスを提供する手法をミラーリングと呼び、複製を保持するサーバをミラーサーバ、オリジナルファイルを保持するサーバをオリジナルサーバと呼ぶ。
1台のサーバが同時に実行できるサービスの数は限られているため、多数のユーザが、あるサーバに対して同時にサービス要求を行なった場合の対処法としてミラーリングは有効である。
また、ミラーサーバを異なる拠点に分散させて配備することによって、一箇所のサーバから配信する場合よりも、ネットワーク内で発生するデータ転送負荷(トラヒック)を軽減することができる。
このように、多ユーザへのサービス提供に必要なサーバの負荷分散、ネットワークトラヒック軽減などを達成するために、ミラーリングは不可欠な技術である。
【0004】
典型的なミラーサーバの運用形態では、ミラーリングは適当なディレクトリを単位として設定され、このミラーリング設定の単位となるディレクトリを制御単位ディレクトリと呼ぶ。
ミラーサーバには、各制御単位ディレクトリについて、オリジナルサーバのアドレスと、オリジナルサーバ上のパス名が登録される。
ミラーサーバは、この登録に従い、オリジナルサーバからファイルを受信してオリジナルサーバの複製対象ディレクトリとまったく同じファイルを含むディレクトリを生成する。
オリジナルサーバの複製対象ディレクトリをオリジナルディレクトリと呼び、ミラーサーバに生成されるディレクトリを複製ディレクトリと呼ぶ。
【0005】
ミラーサーバは、各複製ディレクトリについてオリジナルサーバからFTP(File Transfer Protocol)などのファイル転送プロトコルを用いてファイルを受信する。この処理をミラーリング処理と呼び、このミラーリング処理は周期的に実行される。
オリジナルディレクトリに新規のファイルが生成されたり、オリジナルディレクトリのファイルが更新される事象をオリジナルディレクトリの更新と表す。
ここで、留意すべき点として以下のものがある。
オリジナルディレクトリが更新されても、ミラーサーバのディレクトリは瞬時には更新されない。
言い換えれば、ミラーリング処理を実行する次の周期がくるまでの間と、更新ファイルが転送されている間では、オリジナルサーバのファイルとミラーサーバのファイルとが異なる内容になる。このような状態を更新ずれと呼ぶ。
【0006】
一方、インターネット上の情報サービスはサービス識別子によって識別される。
特に、ファイル配信サービスについては、URL(uniform Resource Locator)とよばれるサービス識別子の形式が定義されている。
URLは、ファイルを配信するサーバの識別子とサーバ内のファイルパスによって構成される。
ファイル提供者はURLを利用者に広告し、利用者は広告されたURLを端末に入力する。端末は、入力されたURLが示すサーバに対してファイル要求を行ない、ファイルを受信する。
ミラーサーバを用いたファイル配信において、端末にミラーサーバからファイルを受信させるには、ミラーサーバの識別子を含むURLを端末に入力する必要がある。
しかし、このしくみではミラーリングが行なわれるファイルについてはミラーサーバの数だけのURLを広告する必要が生じてしまう。
【0007】
これを解決するために、ある一つのURLだけを代表URLとして広告しながらミラーサーバからサービスを提供する方法がある。
この方法をリダイレクトと呼び、以下、このリダイレクトのしくみについて説明する。
なお、以降の説明において、あるサーバsに蓄積されている、あるファイルfのタイムスタンプをT(f、s)と表記し、ファイルfが属する制御単位ディレクトリをD(f)と記す。
また、あるディレクトリdのオリジナルサーバをSo(d)とし、dのオリジナルディレクトリ、または複製ディレクトリを保持するサーバのリストをL(d)と記し、あるURL rのサーバ識別子部分をr.sとし、rが示すファイルをr.fと記す。
リダイレクトの説明として、ミラーリングされている、あるファイルFが配信されるしくみを、図12を用いて説明する。
【0008】
サービス提供者は、R.f=FとするURL Rを代表URLとして広告し、利用者はこのURL Rを端末4から入力する。
端末4は、まずサーバ識別子R.sを取得し、サーバR.s(2)に対してURL Rを含むファイル要求メッセージを送信する(図12に示す1.サービス要求)。
なお、図12では、サーバ識別子R.sを有するサーバが、オリジナルサーバSo(d)である場合を図示している。
これに応じて、サーバR.s(2)は、サービス識別子Rから要求ファイルR.f=Fを認識し、ファイルFが属する制御単位ディレクトリD(F)を認識し、ディレクトリD(F)の複製を保持するミラーサーバのリストL(D(F))の中から適切なサーバ(情報提供元サーバ)を選択する(図12に示す2.サーバ選択処理)。
【0009】
ここで、選択されたサーバの識別子をSzと表す。
そして、サーバR.sは、新たなURL PをP.s=Sz、P.f=Fとして生成し、このURL Pを含むリダイレクトメッセージを端末に対する応答として送信する(図12に示す3.リダイレクト)。
リダイレクトメッセージを受信した端末4は、メッセージに含まれているURL Pからサーバの識別子P.s=Szを取得し、サーバSz(3)に対してファイル要求メッセージを送信する(図12に示す4.コンテンツ要求)。
これに応じて、サーバSz(3)は正常応答メッセージを返し(図12に示す5.正常応答)、続けてファイルFを送信する。
上記の手順において、代表URLが示すサーバ、即ち、サーバR.s(2)、を代表サーバと呼ぶ。
【0010】
代表サーバ2は、代表URL Rを入力とし、ファイルR.f=Fを配信可能なサーバ群L(D(F))を候補サーバとして、候補サーバの中から適当なサーバを選択する手段を含み、この手段をサーバ選択装置1と呼ぶ。
サーバ選択装置1は、ファイル更新ずれが発生しているミラーサーバを選択しないことが望ましい。
そこで、サーバ選択装置1は、侯補サーバL(D(F))に含まれる各サーバsについて、サーバsに保持されているファイルFのタイムスタンプT(F,s)と、オリジナルサーバSo(D(F))に保持されているファイルFのタイムスタンプT(F,So(D(F)))とを比較し、T(F,s)がT(F,So(D(F)))よりも古い場合には当該サーバsを選択しないようにする。
なお、従来のサーバ選択装置においては、ファイルの属性情報の更新時刻フィールドの値がファイルのタイムスタンプとして用いられる。
【0011】
図13は、一般的なサーバ選択装置1の概略構成を示すブロック図である。
サーバリストテーブル14は、当該サーバ選択装置1がサーバ選択を行なう各ディレクトリdについてサーバリストL(d)を記憶するテーブルである。
サーバリスト参照手段15は、入力であるURL Rから、Rが示すファイル(R.f)が属する制御単位ディレクトリD(R.f)に対応するサーバリストL(D(R.f))をサーバリストテーブル16から参照取得する手段である。オリジナルタイムスタンプ取得手段16は、オリジナルサーバSo(D(R.f))に蓄積されているファイルR.fのタイムスタンプT(R.f,So(D(R.f)))を取得する手段である。
本明細書では、このタイムスタンプT(R.f,So(D(R.f)))をオリジナルタイムスタンプと呼び、サービス識別子Rから求められるオリジナルタイムスタンプをTo(R)と記す。
複製ファイルタイムスタンプ取得手段13は、サーバリストL(D(R.f)中のサーバs上のファイルR.fのタイムスタンプT(R.f,s)を取得する手段である。
サーバ絞込み手段12は、T(R.f,s)がTo(R)よりも古いサーバsを除外する手段であり、11は複数のサーバの中から任意のサーバを選択する決定手段である。
【0012】
インターネット上の典型的なホームページはHTMLという形式で記述されている。HTMLは、ホームページの構成、文章を記述するためのファイルである。
ホームページが画像を含む場合には、HTMLファイルには表示すべき画像ファイルの識別子が含まれている。このように、あるファイルに別ファイルの識別子を記述することをリンク参照と呼ぶ。
このようなホームページを表示する場合、利用者端末はまずHTMLファイルを受信し、次に、HTMLファイルにリンク参照されている画像ファイルを受信する。
リンク参照におけるファイル識別子は次の三つの形式のいずれかである。
第一の形式は、”/”で始まるファイルパス形式である。
第二の形式は、”/”で始まらないファイルパス形式である。
第三の形式はURL形式である。
【0013】
第一の形式または第二の形式を相対参照形式と呼び、第三の形式を絶対参照形式と呼ぶ。
絶対参照形式の場合、利用者端末はファイル識別子が示すサーバからリンク参照されているファイルを受信する。
相対参照形式の場合、利用者端末は、HTMLファイルを配信したサーバから、リンク参照されているファイルを受信する。
従って、相対参照形式のリンク参照を含むホームページがミラーサーバとサーバ選択装置によって配信されている場合、サーバ選択が実行されるのはHTMLファイル配信時のみである。
HTMLファイルによってリンク参照されているファイルを受信するとき、利用者端末はHTMLファイル受信時に通知されたサーバに対してファイル要求を送信する。
つまり、あるホームページが、HTMLファイルFlと、Flが相対リンク参照する画像ファイルF2とによって構成される場合、このファイルを受信する端末の動作は次の通りとなる。
【0014】
ここで、ホームページの代表サービス識別子Rは、R.s=So(D(F1))、R.f=F1となっているものとする。
まず、端末はこのサービス識別子Rを入力として、ファイルF1を受信する。ここで、ホームページがミラーリングされている場合には、前述のリダイレクト手順により、サーバSo(D(F1))は、サーバ選択装置1が選択したサーバSzの識別子を含む新たなサービス識別子P(P.s=Sz、P.f=F1)を端末に通知し、端末はサーバSzからファイルFlを受信する。
次に、端末はファイルF1の記述を解釈し、画像ファイルF2への相対リンク参照を認識し、画像ファイルF2を受信する。
このとき、画像ファイルF2を配信するサーバは、ファイルF1を配信したサーバであるとみなす。
ホームページがミラーリングされていない場合、このサーバはR.sである。ミラーリングされている場合、このサーバはP.s=Szである。
【0015】
【発明が解決しようとする課題】
従来のサーバ選択装置は、以下のような問題点があった。
第一の問題点は、サーバ選択処理を行なうたびにミラーサーバに保持されているファイルのタイムスタンプを取得するため、サーバ選択の所要時間が大きくなる点である。
第二の問題点は、要求ファイルが別のファイルを相対参照形式でリンク参照している場合に、サーバ選択装置が要求ファイルのタイムスタンプに基づくサーバ除外処理を行なっても、要求ファイルによってリンク参照されているファイルについての更新ずれの有無まで認識できない点である。
このため、リンク参照されているファイルを利用者端末が受信するときに、古いファイルが配信されてしまう可能性がある。
【0016】
前述のHTMLファイルF1と画像ファイルF2によって構成されるホームページをミラーリングを用いて配信する例を用いて説明する。
サーバ選択装置は、ファイルF1を配信するときにサーバSzを選択する。
このとき、T(F1,Sz)が、T(F1,So(D(F1)))よりも古くないことは確保される。
しかし、画像ファイルF2について、T(F2,Sz)がT(F2,So(D(F1))よりも古くないことは確認されない。
このため、コンテンツ発信者が画像ファイルF2のみを更新し、サーバSzにおいて画像ファイルF2について更新ずれが発生している場合でも、サーバ選択装置はサーバSzを選択してしまう。
この結果、更新前の画像ファイルF2が端末に配信されてしまう。
【0017】
本発明は、前記従来技術の問題点を解決するためになされたものであり、本発明の目的は、複数のサーバを用いた情報サービスシステムにおいて、従来よりも、より短時間に情報提供元サーバを選択することが可能なサーバ選択装置を提供することにある。
また、本発明の他の目的は、複数のサーバを用いた情報サービスシステムにおいて、相対参照形式で他のファイルを参照しているファイルを配信する場合に、相対参照されているファイルについても最新版を保持する情報提供元サーバを選択することが可能なサーバ選択装置を提供することにある。
また、本発明の他の目的は、前述のサーバ選択処理を、コンピュータに実行させるサーバ選択プログラムを提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
【0018】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
即ち、本発明は、ファイルの属性値でファイル間の値の順序がオリジナルディレクトリに蓄積された順序を示すものをタイムスタンプとし、あるディレクトリに属するファイルのタイムスタンプの最新の値を当該ディレクトリのディレクトリタイムスタンプとし、従来のサーバ選択装置に、各ミラーサーバの各複製ディレクトリのディレクトリタイムスタンプを取得するディレクトリタイムスタンプ取得手段と、この手段により取得したディレクトリタイムスタンプを各ミラーサーバの各複製ディレクトリ毎に記憶するディレクトリタイムスタンプテーブルを追加し、さらに、サーバ絞込み手段において、前記ディレクトリタイムスタンプテーブルを参照し、ディレクトリタイムスタンプが前記オリジナルタイムスタンプよりも古い前記複製ディレクトリを保持するミラーサーバを候補サーバから除外することを特徴とする。
【0019】
前述したタイムスタンプ、ディレクトリタイムスタンプの定義によれば、ファイルのタイムスタンプの順序は、ファイルがオリジナルサーバに蓄積された順序を示すので、ある複製ディレクトリのディレクトリタイムスタンプが、あるファイルのタイムスタンプよりも古い場合には、当該複製ディレクトリは当該ファイルを保持していないと判断できる。
また、ディレクトリタイムスタンプはディレクトリごとの属性情報である。
したがって、同一ディレクトリ内の異なるファイルについて、サーバ選択装置がサーバ選択処理を連続的に行なう場合には、ディレクトリタイムスタンプを複製ディレクトリから取得し直す必要がない。
前述の手段によれば、各複製ディレクトリについてディレクトリタイムスタンプを記憶保持するディレクトリタイムスタンプテーブルを、サーバ選択装置に追加するようにしたので、前述した理由により、サーバ選択の度に複製ディレクトリからタイムスタンプを取得する必要がなくなり、従来よりも、より短時間に情報提供元サーバを選択することが可能となる。
【0020】
また、本発明は、オリジナルタイムスタンプ取得手段に、前述のサービス識別子が示すファイルのタイムスタンプをオリジナルタイムスタンプとして取得するか、当該ファイルが属するオリジナルディレクトリのディレクトリタイムスタンプをオリジナルタイムスタンプとして取得するかのオリジナルタイムスタンプ取得方法を判断する判断手段を追加し、オリジナルタイムスタンプ取得手段は、前記判断手段の判断結果に基づき、オリジナルディレクトリに蓄積されておりサービス識別子が示すファイルのタイムスタンプ、あるいは、オリジナルディレクトリのディレクトリタイムスタンプを、前記オリジナルタイムスタンプとして取得することを特徴とする。
【0021】
サービス提供者があるファイルを更新してから当該ファイルが、ある複製ディレクトリに複製されるまでの間において、当該複製ディレクトリのディレクトリタイムスタンプは、オリジナルディレクトリのディレクトリタイムスタンプよりも古くなる。
従って、オリジナルディレクトリのディレクトリタイムスタンプをオリジナルタイムスタンプとすれば、サーバ選択装置は、サービス識別子が示すファイルが属するディレクトリの任意のファイルについて更新ずれが発生している複製ディレクトリを候補サーバから除外する。
これにより、ファイルF1と、ファイルF1によって相対リンク参照されるファイルF2とが、同一のディレクトリに属する限り、ファイルF2についても最新のものを保持するサーバが選択することができる。
【0022】
一方、サービス識別子が示すファイルのタイムスタンプと当該ファイルが属するオリジナルディレクトリのディレクトリタイムスタンプとのどちらをオリジナルタイムスタンプとするのが適切であるかは、配信されるファイルの種類に依存する。
前述の手段によれば、サービス識別子をもとにオリジナルタイムスタンプ取得方法を判断する手段をサーバ選択装置に追加するようにしたので、より適切なオリジナルタイムスタンプを得ることが可能となる。
また、本発明の一実施の形態では、前記ファイルのタイムスタンプは、ファイルがオリジナルディレクトリに蓄積された時刻と定義する。
また、本発明の他の実施の形態では、オリジナルディレクトリの属性値でオリジナルディレクトリの更新が発生するたびに加算されるものをバージョン番号と定義し、前記ファイルのタイムスタンプは、当該ファイルがオリジナルディレクトリに蓄積された直後のオリジナルディレクトリのバージョン番号と定義する。また、本発明は、前述のサーバ選択処理を、コンピュータに実行させるサーバ選択プログラムである。
【0023】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
なお、実施の形態を説明するための全図において、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
[実施の形態1]
図1は、本発明の実施の形態1のサーバ選択装置の概略構成を示すブロック図である。
本実施の形態では、各ミラーサーバの各複製ディレクトリのディレクトリタイムスタンプを取得するディレクトリタイムスタンプ取得手段17と、この手段17により取得したディレクトリタイムスタンプを各ミラーサーバの各複製ディレクトリ毎に記憶するディレクトリタイムスタンプテーブル18とが、従来のサーバ選択装置1に追加される。
また、本実施の形態のサーバ選択装置1のサーバ絞込み手段12は、前記ディレクトリタイムスタンプテーブル18を参照し、ディレクトリタイムスタンプが前記オリジナルタイムスタンプよりも古い前記複製ディレクトリを保持するミラーサーバを候補サーバから除外する。
【0024】
ここで、ファイルのタイムスタンプとは、ファイルの属性値で値の順序がオリジナルディレクトリに蓄積された順序に一致するものを表し、また、ディレクトリタイムスタンプとは、あるディレクトリに属するファイルのタイムスタンプの最新値を表す。
なお、図1では、あるファイルfがあるディレクトリdに属するときこれをf∈dと表している。
タイムスタンプは、値が大きいほどオリジナルディレクトリに蓄積された時刻が新しいことを示すこととする。
ここで、あるディレクトリdのあるミラーサーバs上の複製ディレクトリのディレクトリタイムスタンプをTd(d,s)と記す。
ディレクトリタイムスタンプ取得手段17は、ミラーリングされている各ディレクトリdの各ミラーサーバsの複製ディレクトリについてディレクトリタイムスタンプTd(d,s)を取得する。
ディレクトリタイムスタンプテーブル18は、各ディレクトリd、各ミラーサーバsについてディレクトリタイムスタンプTd(d,s)を記憶する。
【0025】
サーバ絞込み手段12は、入力サービス識別子Rが示すファイルR.fが属するディレクトリD(R.f)の候補サーバL(D(R.f))に属するあるサーバs(s∈L(D(R.f))について、当該サーバsの複製ディレクトリD(R.f)のディレクトリタイムスタンプTd(D(R・f),s)をディレクトリタイムスタンプテーブル18を参照して取得し、オリジナルタイムスタンプ取得手段16によって求められたオリジナルタイムスタンプTo(R)よりも、当該ディレクトリタイムスタンプTd(D(R.f),s)が古い場合(即ち、Td(D(R.f),s)<To(R)である場合)に、当該サーバsを候補サーバから除外する。
このサーバ絞込み手段12による除外処理の結果、残った候補サーバのリストをL’(R)と記す。
L’(R)は、{s|s∈L(D(R.f))、かつTd(D(R.f),s)≧To(R)}となる。
サーバ決定手段11は、候補サーバリストL’(R)の中から情報提供元サーバを決定する。
【0026】
前述したタイムスタンプ、ディレクトリタイムスタンプの定義によれば、ファイルのタイムスタンプの順序は、ファイルがオリジナルサーバに蓄積された順序を示すので、ある複製ディレクトリのディレクトリタイムスタンプが、あるファイルのタイムスタンプよりも古い場合には、当該複製ディレクトリは当該ファイルを保持していないと判断できる。また、ディレクトリタイムスタンプはディレクトリごとの属性情報である。
従って、同一ディレクトリ内の異なるファイルについて、サーバ選択装置1がサーバ選択処理を連続的に行なう場合には、ディレクトリタイムスタンプを複製ディレクトリから取得し直す必要がない。
これを利用して、各複製ディレクトリについてディレクトリタイムスタンプを記憶保持するディレクトリタイムスタンプテーブル18を、サーバ選択装置1に追加することにより、サーバ選択の度に複製ディレクトリからタイムスタンプを取得する必要がなくなり、より短時間にサーバ選択を実行できる。
【0027】
【実施の形態2】
図2は、本発明の実施の形態2のサーバ選択装置の概略構成を示すブロック図である。
本発明の実施の形態2のサーバ選択装置1では、オリジナルタイムスタンプ取得手段16が、サービス識別子が示すファイルのタイムスタンプをオリジナルタイムスタンプとして取得するか、当該ファイルが属するオリジナルディレクトリのディレクトリタイムスタンプをオリジナルタイムスタンプとして取得するかのオリジナルタイムスタンプ取得方法を判断する判断手段51を有し、オリジナルタイムスタンプ取得手段16は、判断手段51の判断結果に基づき、サービス識別子が示すファイルのタイムスタンプ、あるいは、当該ファイルが属するオリジナルディレクトリのディレクトリタイムスタンプを、オリジナルタイムスタンプとして取得する。
つまり、本実施の形態のサーバ選択装置1では、オリジナルタイムスタンプ取得手段16は、オリジナルタイムスタンプTo(R)として、ディレクトリタイムスタンプTd(D(R.f),So(D(R.f)))、またはT(R.f,So(D(R.f))のどちらかを適応的に取得する。
【0028】
また、ファイルの種類とオリジナルタイムスタンプ取得方法との対応関係を記憶させたファイル種類別オリジナルタイムスタンプ取得方法テーブル53、あるいは、ディレクトリの識別子とオリジナルタイムスタンプ取得方法との対応関係を記憶させたディレクトリ別オリジナルタイムスタンプ取得方法テーブル54がサーバ選択装置1に追加される。
前記判断手段51は、サービス識別子が示すファイルの種類に対応するオリジナルタイムスタンプ取得方法を、ファイル種類別オリジナルタイムスタンプ取得方法テーブル53、あるいは、ディレクトリ別オリジナルタイムスタンプ取得方法テーブル54から取得する。
【0029】
サービス提供者があるファイルを更新してから当該ファイルが、ある複製ディレクトリに複製されるまでの間において、当該複製ディレクトリのディレクトリタイムスタンプは、オリジナルディレクトリのディレクトリタイムスタンプよりも古くなる。
従って、オリジナルディレクトリのディレクトリタイムスタンプをオリジナルタイムスタンプとすれば、サーバ選択装置1は、サービス識別子が示すファイルが属するディレクトリの任意のファイルについて更新ずれが発生している複製ディレクトリを候補サーバから除外する。
つまり、前述のHTMLファイルF1と、ファイルF1によって相対リンク参照されるファイルF2とによって構成されるホームページをミラーリングによって配信しており、ファイルF2について更新ずれが発生している場合には、オリジナルディレクトリ23のディレクトリタイムスタンプをオリジナルタイムスタンプとすれば、F1とF2が同一のディレクトリに属する限り、ファイルF2についても最新のものを保持するサーバが選択される。
【0030】
サービス識別子が示すファイルのタイムスタンプと当該ファイルが属するオリジナルディレクトリのディレクトリタイムスタンプとのどちらをオリジナルタイムスタンプとするのが適切であるかは、配信されるファイルの種類に依存する。そこで、本実施の形態では、サービス識別子をもとにオリジナルタイムスタンプ取得方法を判断する判断手段51をサーバ選択装置に追加する。
なお、本実施の形態においても、ファイルのタイムスタンプをオリジナルサーバに蓄積された時刻と定義する。
なお、前述の各実施の形態において、オリジナルディレクトリの属性として、当該ディレクトリが更新されるごとに値が加算されるものをバージョン番号と定義し、ファイルのタイムスタンプを、当該ファイルがオリジナルディレクトリに蓄積された直後のオリジナルディレクトリのバージョン番号と定義することも可能である。
【0031】
【実施の形態3】
図3は、本発明の実施の形態3のサーバ装置の概略構成を示すブロック図である。
本実施の形態は、前述の実施の形態1のサーバ選択装置を、コンピュータとそのコンピュータ上で動作するコンピュータプログラムによって実現した実施の形態である。
図3に示すサーバ選択装置1、オリジナルサーバ2、ミラーサーバ3は、FTP(File Transfer Protocol)、HTTP(Hyper Text Transfer Protocol)による通信機能をそなえるコンピュータである。
なお、FTP、HTTPは、IETF(Internet Engineering Task Force)によって標準化され、開示されている。
サーバ選択装置上のディレクトリタイムスタンプ取得プログラム101と選択要求処理取得プログラム102、および、オリジナルサーバ上の更新受付プログラム21、並びに、ミラーサーバ上のミラーリングプログラム31は、コンピュータプログラムである。
なお、これらの各プログラムは、CD−ROMなどの記憶媒体で提供される。また、これらの各プログラムは、FTPやHTTPといったデータ転送方式によりネットワークを用いて配信される。
【0032】
前述のサーバ選択装置1における、ディレクトリタイムスタンプ取得手段17は、ディレクトリタイムスタンプ取得プログラム101によって実現される。
また、オリジナルタイムスタンプ取得手段16、サーバリスト参照手段15、サーバ絞込み手段12、およびサーバ決定手段11は、選択要求処理取得プログラム102のサブルーチンとして実現する。
また、ディレクトリタイムスタンプテーブル18は、ディレクトリタイムスタンプテーブルファイルというファイルをサーバ選択装置1に蓄積することによって実現する。ディレクトリタイムスタンプテーブルファイルの形式は後述する。オリジナルサーバ2には、オリジナルディレクトリ23とは別に、更新受付ディレクトリ21を作成しておく。
更新受付ディレクトリ21は、サービス提供者から新規ファイルや更新されたファイルを受け付けるためのディレクトリである。
サービス提供者は、新たに発信したいファイルや更新したファイルを更新受付ディレクトリにFTPを用いて蓄積する。
【0033】
本実施の形態では、ファイルのタイムスタンプは、オリジナルサーバ2のオリジナルディレクトリ23に蓄積された時刻とする。
このタイムスタンプを保持するため、ファイルの属性情報の更新時刻フィールドをオリジナルディレクトリ23に蓄積された時刻に設定する。この設定処理は更新受付プログラム22が行なう。
以下、更新受付プログラム22の処理内容について説明する。
更新受付プログラム22は、更新受付ディレクトリ21を周期的に監視し、オリジナルディレクトリ23に存在しないファイルが更新受付ディレクトリ21に存在していれば、当該ファイルをオリジナルディレクトリ23に蓄積する。この際、ファイルの更新時刻フィールドを現在時刻に設定する。
この更新受付プログラム22によって、ファイルの更新時刻フィールドはオリジナルディレクトリ23に蓄積された時刻を示すこととなる。
なお、以下の説明において、ファイルのタイムスタンプとは、ファイルの更新時刻フィールドの値を示す。
また、ファイルがディレクトリに存在するか否かの判断は、当該ファイルの名前、サイズ(バイト数)、更新時刻フィールドの値が一致するファイルが当該ディレクトリ内に存在するか否かによって行う。
【0034】
ミラーサーバ3には、図4に示すMirrorControlファイル110をミラーリング設定ファイルとして作成しておく。
このファイル110の各行は、ある複製ディレクトリの設定パラメータを、1番目の単語が複製ディレクトリの名前、2番目の単語がオリジナルディレクトリ23にFTPでアクセスするためのFTP URL、として示す。
ミラーサーバのミラーリングプログラム31は、周期的に次の同期サブルーチンを実行する。
同期サブルーチンは、MirrorControlファイル110を参照し、各複製ディレクトリのオリジナルディレクトリ23にFTPでアクセスし、ディレクトリのリストをオリジナルディレクトリ23から取得し、当該リストに記されているファイルのうち複製ディレクトリに存在しないものをオリジナルディレクトリ23から取得する。
【0035】
サーバ選択装置1には、図5に示すサーバリストテーブルファイル(図1のサーバリストテーブル14)111と、図6に示すオリジナルディレクトリファイル112とを作成しておく。
サーバリストテーブルファイル111の各行は、あるディレクトリのあるミラーサーバ上の複製ディレクトリの情報を示す。
オリジナルディレクトリファイル112の各行は、ミラーリングされる、あるディレクトリのオリジナルディレクトリ23の情報を示す。
サーバリストテーブルファイル111、または、オリジナルディレクトリファイル112の各行の第1番目の単語はディレクトリ名を示す。
各行の第2番目の単語は、当該ディレクトリにHTTPでアクセスするためのHTTP URLを示す。このURLを情報配信用URLと呼ぶ。
各行の第3番目の単語は、当該ディレクトリにFTPでアクセスするためのFTP URLを示す。このURLを制御用URLと呼ぶ。
【0036】
以降の説明において、あるディレクトリdについて、あるミラーサーバsの複製ディレクトリの情報配信用URL、または制御用URLをサーバリストテーブルファイルから取得するとは、当該ファイルの行のうち、第1番目の単語がdに一致し、第2番目の単語がsを含む行の第2番目の単語(情報配信用URL)または第3番目の単語(制御用URL)を取得することを意味する。
また、あるディレクトリdのオリジナルディレクトリ23の情報配信用URL、または制御用URLをオリジナルディレクトリファイル112から取得するとは、当該ファイル112の行のうち、第1番目の単語がdに一致する行の第2番目の単語(情報配信用URL)、または第3番目の単語(制御用URL)を取得することを意味する。
また、ある代表URL Rに対応する制御単位ディレクトリD(R.f)をオリジナルディレクトリファイル112から取得するとは、オリジナルディレクトリファイル112の第1番目の単語の中から当該URL Rのファイルパス部分(R.f)と前方一致による一致部分が一番長いものを取得することを意味する。
また、あるディレクトリdのサーバリストをサーバリストテーブルファイル111から取得するとは、サーバリストテーブルファイル111を参照し、第1番目の単語がdに一致する行すべてについて第2番目の単語を取得することを意味する。
【0037】
ディレクトリタイムスタンプテーブル18は、図7に示すディレクトリタイムスタンプテーブルファイル113をサーバ選択装置1に生成することにより実現する。
ディレクトリタイムスタンプテーブルファイル113の各行は、あるミラーサーバのある複製ディレクトリのディレクトリタイムスタンプを示す。
各行の第1番目の単語はディレクトリ名(d)を示し、各行の第2番目の単語はミラーサーバsの情報配信用URLを示す。
また、各行の第3番目の単語は、当該ディレクトリdの当該ミラーサーバs上の複製ディレクトリのディレクトリタイムスタンプTd(d,s)を示す。
以降の説明において、ある情報配信用URLに対応するディレクトリタイムスタンプテーブル18を、ディレクトリタイムスタンプテーブルファイル113から取得するとは、ディレクトリタイムスタンプテーブルファイル113を参照し、第2番目の単語が、当該情報配信用URLに一致する行の第3番目の単語を取得することを意味する。
【0038】
ディレクトリタイムスタンプ取得プログラム101は、ミラーリングされているディレクトリの、それぞれの複製ディレクトリの、それぞれのディレクトリタイムスタンプを周期的に取得し、取得したディレクトリタイムスタンプをもとにディレクトリタイムスタンプテーブルファイル113を更新する。
より具体的には、ディレクトリタイムスタンプ取得プログラム101は、あるディレクトリdについて、あるミラーサーバs上の複製ディレクトリのディレクトリタイムスタンプTd(d,s)を取得する処理として、サーバリストテーブルファイル111から当該ディレクトリdの当該ミラーサーバsの制御用URLを取得し、取得した制御用URLを用いて、当該複製ディレクトリにFTPでアクセスし、当該複製ディレクトリのリストを取得し、取得したリストが示すファイルのタイムスタンプの最新の値を求め、求められた値を当該複製ディレクトリのディレクトリタイムスタンプTd(d,s)とする。
そして、ディレクトリタイムスタンプの第1番目の単語がdに一致し、第2番目の単語がsを含む行の第3番目の単語の値を、取得したディレクトリタイムスタンプTd(d,s)に更新する。
【0039】
選択要求処理取得プログラム102は、代表URL Rを入力とし、選択されたサーバの情報配信用URLを含むURL Pを出力とするプログラムであり、代表サーバのHTTPサーバプログラムによって起動される。
HTTPサーバプログラムは、端末からサービス要求を受信すると、サービス要求に含まれるサービス識別子Rを入力として、選択要求処理取得プログラム102を起動し、選択要求処理取得プログラム102が出力する情報配信URLを取得し、取得したURLに対してR.fのD(R.f)より後ろの部分を追加してURL Pを生成し、このURL Pを含むHTTPリダイレクトメッセージを端末に送信する。
以下に、選択要求処理取得プログラム102の処理内容について説明する。
選択要求処理取得プログラム102は、サーバリスト参照サブルーチンと、オリジナルタイムスタンプ取得サブルーチンと、サーバ絞込みサブルーチンと、サーバ決定サブルーチンとを含む。
【0040】
サーバリスト参照サブルーチンは、URL Rを入力とし、前述した方法により、オリジナルディレクトリファイル112から当該URL Rに対応する制御単位ディレクトリD(R.f)を取得し、前述した方法によりサーバリストテーブルファイル111から当該制御単位ディレクトリD(R.f)のサーバリストL(D(R.f))を取得し、取得したサーバリストを出力する。
例えば、入力URL Rが、http://www.ntt.co.jp/News/index.htmlである場合、まず、制御単位ディレクトリD(”News/index.html”)=”News”を取得し、次に、NewsのサーバリストL(”News”)={http://tokyo-server.ntt.co.jp/News,http://osaka-server.ntt.co.jp/News,http://nagoya-server.ntt.co.jp/News}を取得する。
【0041】
オリジナルタイムスタンプ取得サブルーチンは、URL Rを入力とし、前述した方法によりオリジナルディレクトリファイル112から当該URL Rに対応する制御単位ディレクトリD(R.f)を取得し、前述した方法によりオリジナルディレクトリファイル112からオリジナルディレクトリ23の情報配信用URLを取得し、RのファイルパスのD(R.f)よりも後の部分を取得した情報配信用URLに対して追加したURLを生成し、生成したURLに対してHEAD要求メッセージを送信し、HEAD応答メッセージを受信し、HEAD応答メッセージに含まれるファイルのタイムスタンプをオリジナルタイムスタンプTo(R)として取得し、取得したオリジナルタイムスタンプTo(R)を出力する。
例えば、入力URL Rが、http://www.ntt.co.jp/News/index.htmlである場合、まず、制御単位ディレクトリD(”News/index.html”)=”News”を取得し、次に、Newsのオリジナルディレクトリ23の情報配信用URLとして、http://www.ntt.co.jp/Newsを取得し、このURLに、/index.htmlを追加して、URL http://www.ntt.co.jp/News/index.htmlを生成し、このURLに対してHEAD要求メッセージを送信し、HEAD応答メッセージに含まれるタイムスタンプとして、2001/1/1/11:30:00を出力する。
【0042】
サーバ絞込みサブルーチンは、サーバリストL(D(R.f))とオリジナルタイムスタンプTo(R)とを入力とし、絞込みの結果得られたサーバリストL’(R)を出力する。
より具体的には、オリジナルタイムスタンプ取得サブルーチンは、入力サーバリストの各要素である情報配信URLについて次の絞り込み処理を行なう。
即ち、前述した方法によりディレクトリタイムスタンプテーブルファイル113から当該情報配信URLに対応するディレクトリタイムスタンプを取得し、取得したディレクトリタイムスタンプがオリジナルタイムスタンプTo(R)よりも古い場合には、当該情報配信URLをサーバリストL(D(R.f))から除外する。
入力サーバリスト中のすべての情報配信URLについて絞り込み処理を行なったのちのサーバリストをL’(R)として取得する。
例えば、前述のR=http://www.ntt.co.jp/News/index.htmlの例では、L’(R)={http://tokyo-server.ntt・co・jp/News,http://osaka-server.ntt.co.jp/News}を出力する。
【0043】
サーバ決定サブルーチンは、サーバリストL’(R)を入力とし、決定されたサーバの情報配信用URLを出力する。
より具体的には、サブルーチンの開始ごとに値が初期化されずに前回サブルーチン実行時の値が保持される変数(スタティック変数)としてある変数Nを保持し、サブルーチン実行のたびにこの変数Nの値を1加算し、入力サーバリストに含まれる情報配信用URLの数でNを割ってあまった数をKとし、入力サーバリスト中の(K+1)番目の情報配信用URLを決定されたサーバの情報配信用URLとして出力する。
例えば、L’(R)={http://tokyo-server.ntt.co.jp/News,http://osaka-server.ntt.co.jp/News}が入力となる場合、サーバ決定サブルーチンは、http://tokyo-server.ntt.co.jp/Newsと、http://osaka-server.ntt.co.jp/Newsとを交互に出力する。
【0044】
選択要求処理取得プログラム全体の動作を述べる。
まず、選択要求処理取得プログラム102は、代表URL Rを入力としてサーバリスト参照サブルーチンを呼び出し、サーバリストL(D(R.f))を取得する。
次に、選択要求処理取得プログラム102は、サービス識別子Rを入力として、オリジナルタイムスタンプ取得サブルーチンを呼び出し、オリジナルタイムスタンプTo(R)を取得する。
次に、選択要求処理取得プログラム102は、取得したサーバリストL(D(R.f))とオリジナルタイムスタンプTo(R)とを入力として、サーバ絞込みサブルーチンを呼び出し、絞込み処理が施されたサーバリストL’(R)を取得する。
次に、選択要求処理取得プログラム102は、取得したサーバリストL’(R)を入力として、サーバ決定サブルーチンを呼び出し、選択されたサーバの情報配信用URLを取得し、出力する。
【0045】
以下、本実施の形態の変形例として、ファイルのタイムスタンプを、ファイルがオリジナルディレクトリ23に蓄積された時刻の代わりに、ディレクトリのバージョン番号とする実施の形態について説明する。
オリジナルサーバには、図8に示すバージョン番号ファイル114と、図9に示すタイムスタンプファイル115とを、それぞれのオリジナルディレクトリ23について作成する。
また、ミラーサーバには、各複製ディレクトリについて、図9に示すタイムスタンプファイルを生成する。
これらのファイルは、更新受付プログラム22、ミラーリングプログラム31によって自動的に更新される。
バージョン番号ファイル114は、ディレクトリのバージョン番号を示すファイルである。
タイムスタンプファイル115の各行は、第1番目の単語がディレクトリ内におけるファイルのパス、第2番目の単語が当該ディレクトリのタイムスタンプとしてディレクトリ内に含まれるファイルのタイムスタンプを示す。
【0046】
更新受付プログラム22は、更新受付ディレクトリ21に新たなファイルが存在していれば、当該ファイルをオリジナルディレクトリ23に蓄積する。
この際、バージョン番号ファイル内のバージョン番号の値を1加算することによりバージョン番号ファイル114を更新する。
また、加算後のバージョン番号を当該ファイルのタイムスタンプとして、タイムスタンプファイル115に当該ファイルのタイムスタンプを記入する。
当該ファイルと同一のファイルパスを示す行がタイムスタンプファイル115に存在する場合には当該行のタイムスタンプの値を書きかえる。
【0047】
ミラーリングプログラム31は、前述の方法でオリジナルサーバにFTPでアクセスし、オリジナルサーバのタイムスタンプファイル115を取得する。
このオリジナルサーバのタイムスタンプファイル115が示すファイルのうち、複製ディレクトリのタイムスタンプファイル115に含まれていないものや、複製ディレクトリのタイムスタンプファイル115が示すタイムスタンプが、オリジナルサーバから取得したタイムスタンプファイル115が示すタイムスタンプよりも古いものをFTPで取得し、取得したファイルを複製ディレクトリに蓄積する。
蓄積が完了したらオリジナルサーバから取得したタイムスタンプファイル115が示すタイムスタンプを、当該ファイルのタイムスタンプとして複製ディレクトリのタイムスタンプファイル115に記入する。
【0048】
当該ファイルと同一のファイルパスを示す行がタイムスタンプファイル115に存在する場合には当該行のタイムスタンプの値を書きかえる。
ディレクトリタイムスタンプ取得サブルーチンは、前述の方法により複製ディレクトリにFTPでアクセスし、複製ディレクトリのタイムスタンプファイル115をFTPで取得して、当該タイムスタンプファイル115に含まれるタイムスタンプの最新の値を求め、この値を当該ディレクトリのディレクトリタイムスタンプとする。
オリジナルタイムスタンプ取得サブルーチンは、前述の方法によりオリジナルディレクトリ23の制御用URLを取得し、取得したURLに対してFTPでアクセスし、オリジナルディレクトリ23のタイムスタンプファイル115をFTPで取得して、取得したタイムスタンプファイル115からURL Rが示すファイルのタイムスタンプを取得し、取得した値をオリジナルタイムスタンプとする。
【0049】
【実施の形態4】
本実施の形態は、前述の実施の形態2のサーバ選択装置を、コンピュータとそのコンピュータ上で動作するコンピュータプログラムによって実現した実施の形態である。
以下、本実施の形態において、URLに応じてオリジナルタイムスタンプ取得方法を判断する方法を説明する。
図10に示すファイル種類別オリジナルタイムスタンプ取得方法テーブルファイル116をサーバ選択装置1に保存しておくことにより、ファイル種類別オリジナルタイムスタンプ取得方法テーブル53を実現する。
このファイル116は、オリジナルディレクトリ23のディレクトリタイムスタンプをオリジナルタイムスタンプとして取得すべきファイルの拡張子を列記したものである。
オリジナルタイムスタンプ取得サブルーチンは、このファイル116を参照し、URL Rが示すファイルの拡張子がこのファイルに記述されているか否かを判定し、記述されている場合にはオリジナルディレクトリ23のディレクトリタイムスタンプをオリジナルタイムスタンプとして取得することを判断する。
【0050】
オリジナルディレクトリ23のディレクトリタイムスタンプをオリジナルタイムスタンプとして取得する場合、オリジナルタイムスタンプ取得サブルーチンは、オリジナルディレクトリファイル112を参照して、URL Rに対応する制御単位ディレクトリを取得し、当該ディレクトリに対応する制御用URLをオリジナルディレクトリファイル112から取得し、制御用URLを用いてオリジナルディレクトリ23にFTPでアクセスし、当該ディレクトリのリストを取得し、取得したリストが示すファイルのタイムスタンプの最新の値を求め、求められた値をオリジナルタイムスタンプとする。
【0051】
以下に、本実施の形態の変形例として、オリジナルタイムスタンプ取得方法をディレクトリ別に登録しておく実施の形態について説明する。
図11に示すディレクトリ別オリジナルタイムスタンプ取得方法テーブルファイル117をサーバ選択装置1に保存しておくことによりディレクトリ別オリジナルタイムスタンプ取得方法テーブル54を実現する。
このファイル117の各行は、あるディレクトリの情報を、第1番目の単語がディレクトリ識別子、第2番目の単語がオリジナルタイムスタンプ取得方法を示す。
オリジナルタイムスタンプ取得サブルーチンは、前述した方法によりオリジナルディレクトリファイル112を参照してサービス識別子Rに対応する制御単位ディレクトリを取得し、当該ディレクトリに対応するオリジナルタイムスタンプ取得方法を、ディレクトリ別オリジナルタイムスタンプ取得方法テーブルファイル117から取得し、このオリジナルタイムスタンプ取得方法が”Directory”であった場合、オリジナルディレクトリ23のディレクトリタイムスタンプをオリジナルタイムスタンプとして取得する。
【0052】
また、このオリジナルタイムスタンプ取得方法が”File”であった場合は、オリジナルディレクトリ23に蓄積されておりURL Rが示すファイルのタイムスタンプをオリジナルタイムスタンプとして取得する。
このように、本実施の形態によれば、ファイル種類別オリジナルタイムスタンプ取得方法テーブルファイル116、あるいは、ディレクトリの識別子とオリジナルタイムスタンプ取得方法との対応関係を記憶させたディレクトリ別オリジナルタイムスタンプ取得方法テーブルファイル117を、サーバ選択装置1に追加するようにしたので、より適切なオリジナルタイムスタンプを得ることが可能となる。
なお、本実施の形態において、ファイルのタイムスタンプとして、ファイルがオリジナルディレクトリ23に蓄積された時刻の代わりに、ディレクトリのバージョン番号とすることも可能である。
以上、本発明者によってなされた発明を、前記実施の形態に基づき具体的に説明したが、本発明は、前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【0053】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
(1)本発明によれば、情報提供元サーバとして、更新ずれが発生しているミラーサーバを回避しながら、情報提供元サーバを選択する処理をより短時間に行なうことが可能となる。
(2)本発明によれば、HTMLのようなホームページを配信する形態においても、情報提供元サーバとして、更新ずれが発生しているミラーサーバを回避することが可能となる。
(3)本発明によれば、より確実に最新版の情報をより高速に配信することが可能となり、利用者にとってより快適な情報サービスを実現することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態1のサーバ選択装置の概略構成を示すブロック図である。
【図2】本発明の実施の形態2のサーバ選択装置の概略構成を示すブロック図である。
【図3】本発明の実施の形態3のサーバ選択装置の概略構成を示すブロック図である。
【図4】ミラーサーバ上に作成される、MirrorControlファイルの内容を示す図である。
【図5】サーバ選択装置上に作成されるサーバリストテーブルファイルの内容を示す図である。
【図6】サーバ選択装置上に作成されるオリジナルディレクトリファイルの内容を示す図である。
【図7】サーバ選択装置上に作成されるディレクトリタイムスタンプテーブルファイルの内容を示す図である。
【図8】オリジナルサーバ上に作成されるバージョン番号ファイルの内容を示す図である。
【図9】オリジナルサーバ、およびミラーサーバ上に作成されるタイムスタンプファイルの内容を示す図である。
【図10】サーバ選択装置上に作成されるファイル種類別オリジナルタイムスタンプ取得方法テーブルファイルの内容を示す図である。
【図11】サーバ選択装置上に作成されるディレクトリ別オリジナルタイムスタンプ取得方法テーブルファイルの内容を示す図である。
【図12】従来のリダイレクトを説明するための図である。
【図13】従来のサーバ選択装置の概略構成を示すブロック図である。
【符号の説明】
1…サーバ選択装置、2…オリジナルサーバ、3…ミラーサーバ、4…端末、11…決定手段、12…サーバ絞込み手段、13…複製ファイルタイムスタンプ取得手段、14…サーバリストテーブル、15…サーバリスト参照手段、16…オリジナルタイムスタンプ取得手段、17…ディレクトリタイムスタンプ取得手段、18…ディレクトリタイムスタンプテーブル、21…更新受付ディレクトリ、22…更新受付プログラム、23…オリジナルディレクトリ、31…ミラーリングプログラム、32…ミラーディレクトリ、51…判断手段、53…ファイル種類別オリジナルタイムスタンプ取得方法テーブル、54…ディレクトリ別オリジナルタイムスタンプ取得方法テーブル、101…ディレクトリタイムスタンプ取得プログラム、102…選択要求処理取得プログラム、110…MirrorControlファイル、111…サーバリストテーブルファイル、112…オリジナルディレクトリファイル、113…ディレクトリタイムスタンプテーブルファイル、114…バージョン番号ファイル、115…タイムスタンプファイル、116…ファイル種類別オリジナルタイムスタンプ取得方法テーブルファイル、117…ディレクトリ別オリジナルタイムスタンプ取得方法テーブルファイル。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a server selection device and a server selection program, and more particularly to a technique effective in selecting an information providing source server in a shorter time in an information service system using a plurality of servers.
[0002]
[Prior art]
Information converted into computer data is called a file, and means for storing the file is called a file system.
This file system holds an attribute information table for each file to be stored, and has an update time field as one field of this attribute information table.
This update time field indicates the time when the file was created and updated. However, this field can also be set to some other value by an operation or program by the file system administrator.
As an information service provided by providing a server holding a file system on the Internet, a file distribution service that distributes a file describing a home page or a digitally encoded music file is known.
As another example of an information service, a database service that notifies a result of referring to a file held by a file system by a database program is known.
[0003]
A method of storing a copy of an original file on multiple servers and providing information services using multiple servers is called mirroring, a server holding the copy is called a mirror server, and a server holding the original file is called an original server. .
Since the number of services that can be executed simultaneously by one server is limited, mirroring is effective as a countermeasure when a large number of users make service requests to a server at the same time.
In addition, by distributing the mirror servers to different bases, the data transfer load (traffic) generated in the network can be reduced as compared with the case where distribution is performed from a single server.
As described above, mirroring is an indispensable technique for achieving server load distribution and network traffic reduction necessary for providing services to many users.
[0004]
In a typical mirror server operation mode, mirroring is set in units of appropriate directories, and a directory serving as a unit of mirroring setting is called a control unit directory.
In the mirror server, the address of the original server and the path name on the original server are registered for each control unit directory.
In accordance with this registration, the mirror server receives a file from the original server and generates a directory including the same file as the replication target directory of the original server.
The replication target directory of the original server is called the original directory, and the directory generated on the mirror server is called the replication directory.
[0005]
The mirror server receives a file from each original directory using a file transfer protocol such as FTP (File Transfer Protocol) from the original server. This process is called a mirroring process, and this mirroring process is executed periodically.
An event in which a new file is created in the original directory or a file in the original directory is updated is referred to as an update of the original directory.
Here, the following points should be noted.
Even if the original directory is updated, the mirror server directory is not updated instantaneously.
In other words, the file on the original server and the file on the mirror server have different contents until the next cycle for executing the mirroring process comes and when the update file is transferred. Such a state is called update deviation.
[0006]
On the other hand, information services on the Internet are identified by service identifiers.
In particular, for file distribution services, a service identifier format called URL (uniform resource locator) is defined.
The URL is composed of an identifier of a server that distributes the file and a file path in the server.
The file provider advertises the URL to the user, and the user inputs the advertised URL to the terminal. The terminal makes a file request to the server indicated by the input URL and receives the file.
In file distribution using a mirror server, in order for a terminal to receive a file from the mirror server, it is necessary to input a URL including an identifier of the mirror server to the terminal.
However, in this mechanism, it is necessary to advertise URLs as many as the number of mirror servers for files to be mirrored.
[0007]
In order to solve this, there is a method of providing a service from a mirror server while advertising only one URL as a representative URL.
This method is called redirection, and the mechanism of this redirection will be described below.
In the following description, a time stamp of a certain file f stored in a certain server s is denoted as T (f, s), and a control unit directory to which the file f belongs is denoted as D (f).
An original server of a certain directory d is So (d), a list of servers holding the original directory of d or a replication directory is denoted L (d), and a server identifier part of a URL r is denoted r. s and the file indicated by r is r. Indicated as f.
As an explanation of redirection, a mechanism for distributing a certain file F that is mirrored will be described with reference to FIG.
[0008]
The service provider The URL R with f = F is advertised as the representative URL, and the user inputs this URL R from the terminal 4.
The terminal 4 first starts with the server identifier R.P. s and server R.R. A file request message including URL R is transmitted to s (2) (1. service request shown in FIG. 12).
In FIG. 12, the server identifier R.I. The case where the server having s is the original server So (d) is illustrated.
Accordingly, the server R.I. s (2) is obtained from the service identifier R to the request file R.P. Recognize f = F, recognize the control unit directory D (F) to which the file F belongs, and select an appropriate server from the list L (D (F)) of mirror servers that hold a copy of the directory D (F). (Information providing source server) is selected (2. server selection process shown in FIG. 12).
[0009]
Here, the identifier of the selected server is represented as Sz.
Server R. s changes the new URL P.P. s = Sz, P.I. It generates as f = F and transmits a redirect message including this URL P as a response to the terminal (3. Redirect shown in FIG. 12).
The terminal 4 that has received the redirect message receives the server identifier P.P. from the URL P included in the message. s = Sz is acquired, and a file request message is transmitted to the server Sz (3) (4. Content request shown in FIG. 12).
In response to this, the server Sz (3) returns a normal response message (5. Normal response shown in FIG. 12), and subsequently transmits the file F.
In the above procedure, the server indicated by the representative URL, that is, the server R.P. s (2) is called a representative server.
[0010]
The representative server 2 receives the representative URL R and inputs the file R.R. The server group L (D (F)) capable of distributing f = F is used as a candidate server, and includes means for selecting an appropriate server from among the candidate servers.
It is desirable that the server selection device 1 does not select a mirror server in which a file update error has occurred.
Therefore, the server selection device 1 for each server s included in the compensation server L (D (F)), the time stamp T (F, s) of the file F held in the server s, and the original server So ( The time stamp T (F, So (D (F))) of the file F held in D (F)) is compared, and T (F, s) becomes T (F, So (D (F))). The server s is not selected if it is older than ().
In the conventional server selection apparatus, the value of the update time field of the file attribute information is used as the file time stamp.
[0011]
FIG. 13 is a block diagram illustrating a schematic configuration of a general server selection device 1.
The server list table 14 is a table that stores a server list L (d) for each directory d in which the server selection device 1 performs server selection.
The server list reference unit 15 obtains the server list L (D (R.f)) corresponding to the control unit directory D (R.f) to which the file (R.f) indicated by R belongs from the input URL R as the server. It is means for obtaining a reference from the list table 16. The original time stamp acquisition means 16 stores the file R.D. stored in the original server So (D (R.f)). This is a means for acquiring the time stamp T (R.f, So (D (R.f))) of f.
In this specification, this time stamp T (R.f, So (D (R.f))) is referred to as an original time stamp, and the original time stamp obtained from the service identifier R is referred to as To (R).
The duplicate file time stamp acquisition means 13 is a means for acquiring the time stamp T (R.f, s) of the file R.f on the server s in the server list L (D (R.f)).
Server narrowing means 12 is means for excluding servers s whose T (R.f, s) is older than To (R), and 11 is decision means for selecting an arbitrary server from among a plurality of servers.
[0012]
A typical home page on the Internet is described in a format called HTML. HTML is a file for describing the structure and text of a home page.
When the home page includes an image, the HTML file includes an identifier of the image file to be displayed. Thus, describing an identifier of another file in a certain file is called a link reference.
When displaying such a home page, the user terminal first receives an HTML file, and then receives an image file that is linked to the HTML file.
A file identifier in a link reference has one of the following three formats.
The first format is a file path format starting with “/”.
The second format is a file path format that does not begin with “/”.
The third format is a URL format.
[0013]
The first form or the second form is called a relative reference form, and the third form is called an absolute reference form.
In the case of the absolute reference format, the user terminal receives a file whose link is referenced from the server indicated by the file identifier.
In the case of the relative reference format, the user terminal receives a link-referenced file from the server that has delivered the HTML file.
Therefore, when a homepage including a link reference in the relative reference format is distributed by the mirror server and the server selection device, the server selection is executed only when the HTML file is distributed.
When receiving a file whose link is referenced by an HTML file, the user terminal transmits a file request to the server notified when the HTML file is received.
That is, when a certain home page is constituted by the HTML file Fl and the image file F2 to which Fl refers to a relative link, the operation of the terminal that receives this file is as follows.
[0014]
Here, the representative service identifier R of the homepage is R.R. s = So (D (F1)), R.I. It is assumed that f = F1.
First, the terminal receives the service identifier R and receives the file F1. Here, when the home page is mirrored, the server So (D (F1)) uses the above-described redirect procedure to cause the server So (D (F1)) to add a new service identifier P (P.P.P) including the identifier of the server Sz selected by the server selection device 1. s = Sz, P.f = F1) to the terminal, and the terminal receives the file Fl from the server Sz.
Next, the terminal interprets the description of the file F1, recognizes a relative link reference to the image file F2, and receives the image file F2.
At this time, the server that distributes the image file F2 is regarded as the server that distributed the file F1.
If the home page is not mirrored, this server s. If mirrored, this server s = Sz.
[0015]
[Problems to be solved by the invention]
The conventional server selection device has the following problems.
The first problem is that the time required for server selection increases because the time stamp of the file held in the mirror server is acquired every time the server selection process is performed.
The second problem is that when a request file references another file in a relative reference format, even if the server selection device performs server exclusion processing based on the time stamp of the request file, the link is referenced by the request file. It is a point that it is not possible to recognize whether there is an update difference for a file that has been updated.
For this reason, when a user terminal receives a file whose link is referenced, an old file may be distributed.
[0016]
A description will be given by using an example in which a home page composed of the HTML file F1 and the image file F2 is distributed using mirroring.
The server selection device selects the server Sz when distributing the file F1.
At this time, it is ensured that T (F1, Sz) is not older than T (F1, So (D (F1))).
However, it is not confirmed that T (F2, Sz) is not older than T (F2, So (D (F1)) for the image file F2.
For this reason, even when the content sender updates only the image file F2 and there is an update shift for the image file F2 in the server Sz, the server selection device selects the server Sz.
As a result, the image file F2 before update is distributed to the terminal.
[0017]
The present invention has been made to solve the above-described problems of the prior art, and an object of the present invention is to provide an information provider server in an information service system using a plurality of servers in a shorter time than in the past. Is to provide a server selection device capable of selecting
Another object of the present invention is to provide the latest version of a relative-referenced file when distributing a file referring to another file in a relative reference format in an information service system using a plurality of servers. Is to provide a server selection device capable of selecting an information providing source server that holds the information.
Another object of the present invention is to provide a server selection program that causes a computer to execute the server selection process described above.
The above and other objects and novel features of the present invention will become apparent from the description of this specification and the accompanying drawings.
[0018]
[Means for Solving the Problems]
Of the inventions disclosed in this application, the outline of typical ones will be briefly described as follows.
That is, according to the present invention, the attribute value of a file indicating the order in which the value between files is stored in the original directory is set as a time stamp, and the latest value of the time stamp of a file belonging to a certain directory is set to Directory time stamp acquisition means for acquiring a directory time stamp of each replication directory of each mirror server in a conventional server selection device, and a directory time stamp acquired by this means for each replication directory of each mirror server. A directory time stamp table to be stored is added, and in the server narrowing-down means, the directory time stamp table is referred to, and the directory time stamp is older than the original time stamp. Characterized in that it excludes the mirror server holding directory from the candidate server.
[0019]
According to the definition of the time stamp and the directory time stamp described above, the order of the time stamps of the files indicates the order in which the files are accumulated in the original server. If it is too old, it can be determined that the replication directory does not hold the file.
The directory time stamp is attribute information for each directory.
Therefore, when the server selection device continuously performs server selection processing for different files in the same directory, there is no need to re-acquire the directory time stamp from the replication directory.
According to the above-described means, the directory time stamp table for storing and holding the directory time stamp for each replication directory is added to the server selection device. Therefore, for each of the reasons described above, the time stamp from the replication directory is selected every time the server is selected. The information providing source server can be selected in a shorter period of time than in the past.
[0020]
Further, according to the present invention, the original time stamp acquisition means acquires the time stamp of the file indicated by the service identifier as an original time stamp, or acquires the directory time stamp of the original directory to which the file belongs as the original time stamp. The original time stamp acquisition means adds a determination means for determining the original time stamp acquisition method of the file, the time stamp of the file indicated by the service identifier stored in the original directory based on the determination result of the determination means, or the original A directory time stamp of the directory is acquired as the original time stamp.
[0021]
Between the time when the service provider updates a file and the time when the file is replicated to a certain replication directory, the directory time stamp of the replication directory is older than the directory time stamp of the original directory.
Accordingly, if the directory time stamp of the original directory is the original time stamp, the server selection device excludes from the candidate server a duplicate directory in which an update error has occurred for any file in the directory to which the file indicated by the service identifier belongs.
As a result, as long as the file F1 and the file F2 referenced by the relative link by the file F1 belong to the same directory, the server holding the latest file F2 can be selected.
[0022]
On the other hand, whether the time stamp of the file indicated by the service identifier or the directory time stamp of the original directory to which the file belongs is appropriate as the original time stamp depends on the type of file to be distributed.
According to the above-described means, since the means for determining the original time stamp acquisition method based on the service identifier is added to the server selection device, a more appropriate original time stamp can be obtained.
In one embodiment of the present invention, the time stamp of the file is defined as the time when the file is stored in the original directory.
In another embodiment of the present invention, an attribute value of the original directory that is added every time an update of the original directory occurs is defined as a version number, and the time stamp of the file indicates that the file has the original directory It is defined as the version number of the original directory immediately after being stored in. The present invention is also a server selection program that causes a computer to execute the server selection process described above.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.
[Embodiment 1]
FIG. 1 is a block diagram showing a schematic configuration of the server selection device according to the first embodiment of the present invention.
In the present embodiment, directory time stamp acquisition means 17 for acquiring a directory time stamp of each replication directory of each mirror server, and a directory for storing the directory time stamp acquired by this means 17 for each replication directory of each mirror server A time stamp table 18 is added to the conventional server selection device 1.
Further, the server screening unit 12 of the server selection device 1 according to the present embodiment refers to the directory time stamp table 18 and selects a mirror server that holds the replication directory whose directory time stamp is older than the original time stamp as a candidate server. Exclude from
[0024]
Here, a file time stamp represents a file attribute value whose value order matches the order stored in the original directory, and a directory time stamp is a time stamp of a file belonging to a certain directory. Represents the latest value.
In FIG. 1, when a certain file f belongs to a certain directory d, this is represented as fεd.
The time stamp indicates that the larger the value is, the newer the time accumulated in the original directory is.
Here, the directory time stamp of the replication directory on a mirror server s in a certain directory d is denoted as Td (d, s).
The directory time stamp acquisition means 17 acquires the directory time stamp Td (d, s) for the replication directory of each mirror server s of each mirrored directory d.
The directory time stamp table 18 stores a directory time stamp Td (d, s) for each directory d and each mirror server s.
[0025]
The server narrowing means 12 stores the file R.P indicated by the input service identifier R. For a server s (sεL (D (R.f)) belonging to a candidate server L (D (R.f)) of a directory D (R.f) to which f belongs, a replication directory D (R of the server s) . F) of the directory time stamp Td (D (R · f), s) is obtained by referring to the directory time stamp table 18 and more than the original time stamp To (R) obtained by the original time stamp obtaining means 16. When the directory time stamp Td (D (R.f), s) is old (that is, when Td (D (R.f), s) <To (R)), the server s is selected as a candidate server. Exclude from
The list of remaining candidate servers as a result of the exclusion process by the server narrowing means 12 is denoted as L ′ (R).
L ′ (R) satisfies {s | sεL (D (R.f)) and Td (D (R.f), s) ≧ To (R)}.
The server determination unit 11 determines an information provider server from the candidate server list L ′ (R).
[0026]
According to the definition of the time stamp and the directory time stamp described above, the order of the time stamps of the files indicates the order in which the files are accumulated in the original server. If it is too old, it can be determined that the replication directory does not hold the file. The directory time stamp is attribute information for each directory.
Therefore, when the server selection device 1 performs server selection processing continuously for different files in the same directory, there is no need to re-acquire the directory time stamp from the replication directory.
By using this, a directory time stamp table 18 for storing and holding a directory time stamp for each replication directory is added to the server selection device 1 so that it is not necessary to acquire a time stamp from the replication directory each time a server is selected. , Server selection can be executed in a shorter time.
[0027]
Embodiment 2
FIG. 2 is a block diagram showing a schematic configuration of the server selection device according to the second embodiment of the present invention.
In the server selection device 1 according to the second embodiment of the present invention, the original time stamp acquisition unit 16 acquires the time stamp of the file indicated by the service identifier as the original time stamp, or the directory time stamp of the original directory to which the file belongs. Based on the determination result of the determination unit 51, the original time stamp acquisition unit 16 includes a time stamp of the file indicated by the service identifier, or a determination unit 51 for determining whether to acquire the original time stamp. The directory time stamp of the original directory to which the file belongs is acquired as the original time stamp.
That is, in the server selection device 1 of the present embodiment, the original time stamp acquisition unit 16 uses the directory time stamps Td (D (R.f), So (D (R.f)) as the original time stamp To (R). )) Or T (R.f, So (D (R.f)) is adaptively acquired.
[0028]
Also, an original time stamp acquisition method table 53 for each file type that stores the correspondence between the file type and the original time stamp acquisition method, or a directory that stores the correspondence between the directory identifier and the original time stamp acquisition method. Another original time stamp acquisition method table 54 is added to the server selection device 1.
The determination unit 51 acquires the original time stamp acquisition method corresponding to the file type indicated by the service identifier from the file type original time stamp acquisition method table 53 or the directory-specific original time stamp acquisition method table 54.
[0029]
Between the time when the service provider updates a file and the time when the file is replicated to a certain replication directory, the directory time stamp of the replication directory is older than the directory time stamp of the original directory.
Therefore, if the directory time stamp of the original directory is the original time stamp, the server selection device 1 excludes from the candidate server a duplicate directory in which an update error has occurred for any file in the directory to which the file indicated by the service identifier belongs. .
That is, when a homepage composed of the above-described HTML file F1 and the file F2 referenced by the relative link by the file F1 is distributed by mirroring, and an update shift has occurred in the file F2, the original directory 23 If the directory time stamp is the original time stamp, as long as F1 and F2 belong to the same directory, the server that holds the latest file F2 is selected.
[0030]
Whether the time stamp of the file indicated by the service identifier or the directory time stamp of the original directory to which the file belongs is appropriate as the original time stamp depends on the type of file to be distributed. Therefore, in this embodiment, a determination unit 51 that determines an original time stamp acquisition method based on the service identifier is added to the server selection device.
Also in this embodiment, the time stamp of the file is defined as the time stored in the original server.
In each of the above-described embodiments, the attribute of the original directory is defined as a version number that is incremented each time the directory is updated, and the time stamp of the file is stored in the original directory. It can also be defined as the version number of the original directory immediately after
[0031]
Embodiment 3
FIG. 3 is a block diagram showing a schematic configuration of the server device according to the third embodiment of the present invention.
The present embodiment is an embodiment in which the server selection device according to the first embodiment is realized by a computer and a computer program operating on the computer.
The server selection device 1, the original server 2, and the mirror server 3 shown in FIG. 3 are computers having communication functions based on FTP (File Transfer Protocol) and HTTP (Hyper Text Transfer Protocol).
FTP and HTTP are standardized and disclosed by IETF (Internet Engineering Task Force).
The directory timestamp acquisition program 101 and selection request processing acquisition program 102 on the server selection device, the update reception program 21 on the original server, and the mirroring program 31 on the mirror server are computer programs.
Each of these programs is provided on a storage medium such as a CD-ROM. Each of these programs is distributed using a network by a data transfer method such as FTP or HTTP.
[0032]
The directory time stamp acquisition means 17 in the server selection device 1 described above is realized by the directory time stamp acquisition program 101.
Further, the original time stamp acquisition means 16, the server list reference means 15, the server narrowing means 12, and the server determination means 11 are realized as a subroutine of the selection request processing acquisition program 102.
The directory time stamp table 18 is realized by storing a file called a directory time stamp table file in the server selection device 1. The format of the directory time stamp table file will be described later. In the original server 2, an update reception directory 21 is created separately from the original directory 23.
The update reception directory 21 is a directory for receiving a new file or an updated file from the service provider.
The service provider accumulates a new file to be transmitted or an updated file in the update reception directory using FTP.
[0033]
In the present embodiment, the time stamp of the file is the time accumulated in the original directory 23 of the original server 2.
In order to hold this time stamp, the update time field of the file attribute information is set to the time stored in the original directory 23. This setting process is performed by the update acceptance program 22.
Hereinafter, the processing content of the update reception program 22 will be described.
The update reception program 22 periodically monitors the update reception directory 21, and if a file that does not exist in the original directory 23 exists in the update reception directory 21, the file is stored in the original directory 23. At this time, the file update time field is set to the current time.
By this update reception program 22, the file update time field indicates the time stored in the original directory 23.
In the following description, the file time stamp indicates the value of the file update time field.
Whether or not the file exists in the directory is determined by whether or not a file having the same name, size (number of bytes), and update time field value exists in the directory.
[0034]
In the mirror server 3, the MirrorControl file 110 shown in FIG. 4 is created as a mirroring setting file.
Each line of the file 110 indicates a setting parameter of a certain replication directory as a first word is a name of the replication directory, and a second word is an FTP URL for accessing the original directory 23 by FTP.
The mirroring program 31 of the mirror server periodically executes the following synchronization subroutine.
The synchronization subroutine refers to the MirrorControl file 110, accesses the original directory 23 of each replication directory by FTP, obtains a directory list from the original directory 23, and does not exist in the replication directory among the files described in the list. Things are obtained from the original directory 23.
[0035]
In the server selection device 1, a server list table file (server list table 14 in FIG. 1) 111 shown in FIG. 5 and an original directory file 112 shown in FIG. 6 are created.
Each row of the server list table file 111 indicates information on a replication directory on a mirror server where a certain directory exists.
Each line of the original directory file 112 indicates information of the original directory 23 of a certain directory to be mirrored.
The first word in each line of the server list table file 111 or the original directory file 112 indicates a directory name.
The second word in each line indicates an HTTP URL for accessing the directory by HTTP. This URL is called an information distribution URL.
The third word in each line indicates an FTP URL for accessing the directory by FTP. This URL is called a control URL.
[0036]
In the following description, with respect to a certain directory d, obtaining the URL for information distribution or the control URL of the replication directory of a certain mirror server s from the server list table file means that the first word in the line of the file is This means that the second word (information distribution URL) or the third word (control URL) in a row that matches d and the second word includes s is acquired.
In addition, when the information distribution URL or control URL of the original directory 23 of a certain directory d is acquired from the original directory file 112, the first word in the line of the file 112 where the first word matches with d. It means that the second word (information distribution URL) or the third word (control URL) is acquired.
The acquisition of the control unit directory D (R.f) corresponding to a certain representative URL R from the original directory file 112 means that the file path portion (R) of the URL R from among the first words of the original directory file 112 is obtained. .F) means that the longest matching part by the forward matching is acquired.
In addition, obtaining the server list of a directory d from the server list table file 111 refers to the server list table file 111 and obtains the second word for all the rows in which the first word matches d. Means.
[0037]
The directory time stamp table 18 is realized by generating the directory time stamp table file 113 shown in FIG.
Each row of the directory time stamp table file 113 indicates a directory time stamp of a certain replication directory of a certain mirror server.
The first word in each row indicates the directory name (d), and the second word in each row indicates the information distribution URL of the mirror server s.
The third word in each line indicates the directory time stamp Td (d, s) of the replication directory on the mirror server s of the directory d.
In the following description, to acquire the directory time stamp table 18 corresponding to a certain URL for information distribution from the directory time stamp table file 113, the directory time stamp table file 113 is referred to, and the second word is the information This means that the third word in the line that matches the distribution URL is acquired.
[0038]
The directory time stamp acquisition program 101 periodically acquires each directory time stamp of each replication directory of the mirrored directory, and updates the directory time stamp table file 113 based on the acquired directory time stamp. To do.
More specifically, the directory time stamp acquisition program 101 performs processing from the server list table file 111 as processing for acquiring the directory time stamp Td (d, s) of the replication directory on a certain mirror server s for a certain directory d. The control URL of the mirror server s in the directory d is acquired, the replica directory is accessed by FTP using the acquired control URL, the list of the replica directory is acquired, and the time of the file indicated by the acquired list The latest value of the stamp is obtained, and the obtained value is set as the directory time stamp Td (d, s) of the replication directory.
Then, the value of the third word in the row where the first word of the directory time stamp matches d and the second word includes s is updated to the acquired directory time stamp Td (d, s). To do.
[0039]
The selection request processing acquisition program 102 is a program that receives the representative URL R as an input and outputs a URL P that includes the information distribution URL of the selected server, and is activated by the HTTP server program of the representative server.
When receiving the service request from the terminal, the HTTP server program starts the selection request processing acquisition program 102 with the service identifier R included in the service request as an input, and acquires the information distribution URL output by the selection request processing acquisition program 102. R. for the acquired URL. A part of f after D (R.f) is added to generate URL P, and an HTTP redirect message including this URL P is transmitted to the terminal.
The processing contents of the selection request processing acquisition program 102 will be described below.
The selection request processing acquisition program 102 includes a server list reference subroutine, an original time stamp acquisition subroutine, a server narrowing subroutine, and a server determination subroutine.
[0040]
The server list reference subroutine receives the URL R, acquires the control unit directory D (R.f) corresponding to the URL R from the original directory file 112 by the above-described method, and the server list table file 111 by the above-described method. The server list L (D (R.f)) of the control unit directory D (R.f) is acquired from the server, and the acquired server list is output.
For example, when the input URL R is http://www.ntt.co.jp/News/index.html, the control unit directory D (“News / index.html”) = “News” is acquired first. Next, News server list L ("News") = {http://tokyo-server.ntt.co.jp/News, http://osaka-server.ntt.co.jp/News, http: Get //nagoya-server.ntt.co.jp/News}.
[0041]
The original time stamp acquisition subroutine receives the URL R, acquires the control unit directory D (R.f) corresponding to the URL R from the original directory file 112 by the method described above, and acquires the control unit directory D (R.f) from the original directory file 112 by the method described above. The URL for information distribution in the original directory 23 is acquired, and a URL added to the URL for information distribution acquired after D (R.f) of the R file path is generated. The HEAD request message is transmitted, the HEAD response message is received, the time stamp of the file included in the HEAD response message is acquired as the original time stamp To (R), and the acquired original time stamp To (R) is output.
For example, when the input URL R is http://www.ntt.co.jp/News/index.html, first, the control unit directory D (“News / index.html”) = “News” is acquired. Next, http://www.ntt.co.jp/News is acquired as the information distribution URL of the News original directory 23, and /index.html is added to this URL, and the URL http: / /www.ntt.co.jp/News/index.html is generated, a HEAD request message is transmitted to this URL, and as a time stamp included in the HEAD response message, 2001/1/1/11: 30: 00 is output.
[0042]
The server narrowing subroutine receives the server list L (D (R.f)) and the original time stamp To (R), and outputs the server list L ′ (R) obtained as a result of the narrowing.
More specifically, the original time stamp acquisition subroutine performs the following narrowing process on the information distribution URL that is each element of the input server list.
That is, the directory time stamp corresponding to the information distribution URL is acquired from the directory time stamp table file 113 by the method described above, and if the acquired directory time stamp is older than the original time stamp To (R), the information distribution is performed. The URL is excluded from the server list L (D (R.f)).
A server list obtained after narrowing down all information distribution URLs in the input server list is acquired as L ′ (R).
For example, in the above example of R = http: //www.ntt.co.jp/News/index.html, L ′ (R) = {http: //tokyo-server.ntt·co·jp/News, Output http://osaka-server.ntt.co.jp/News}.
[0043]
The server determination subroutine receives the server list L ′ (R) as an input and outputs a URL for information distribution of the determined server.
More specifically, a variable N is held as a variable (static variable) in which a value at the time of the previous subroutine execution is held without being initialized every time the subroutine is started, and each time the subroutine is executed, The value is incremented by 1 and N is divided by the number of information distribution URLs included in the input server list to be K, and the (K + 1) th information distribution URL in the input server list is determined by the server determined. Output as information distribution URL.
For example, if L ′ (R) = {http://tokyo-server.ntt.co.jp/News, http://osaka-server.ntt.co.jp/News} is input, the server determination subroutine Outputs http://tokyo-server.ntt.co.jp/News and http://osaka-server.ntt.co.jp/News alternately.
[0044]
The overall operation of the selection request processing acquisition program will be described.
First, the selection request processing acquisition program 102 calls the server list reference subroutine with the representative URL R as an input, and acquires the server list L (D (R.f)).
Next, the selection request process acquisition program 102 receives the service identifier R, calls an original time stamp acquisition subroutine, and acquires the original time stamp To (R).
Next, the selection request processing acquisition program 102 inputs the acquired server list L (D (R.f)) and the original time stamp To (R) as an input, calls a server narrowing subroutine, and performs the narrowing processing. The list L ′ (R) is acquired.
Next, the selection request processing acquisition program 102 receives the acquired server list L ′ (R) as an input, calls a server determination subroutine, acquires the information distribution URL of the selected server, and outputs it.
[0045]
Hereinafter, as a modification of the present embodiment, an embodiment in which the time stamp of a file is used as the version number of the directory instead of the time when the file is stored in the original directory 23 will be described.
In the original server, a version number file 114 shown in FIG. 8 and a time stamp file 115 shown in FIG. 9 are created for each original directory 23.
Further, the time stamp file shown in FIG. 9 is generated for each replication directory in the mirror server.
These files are automatically updated by the update reception program 22 and the mirroring program 31.
The version number file 114 is a file indicating the version number of the directory.
Each line of the time stamp file 115 indicates the time stamp of the file included in the directory, with the first word being the path of the file in the directory and the second word being the time stamp of the directory.
[0046]
If there is a new file in the update reception directory 21, the update reception program 22 stores the file in the original directory 23.
At this time, the version number file 114 is updated by adding 1 to the value of the version number in the version number file.
Further, the time stamp of the file is entered in the time stamp file 115 using the added version number as the time stamp of the file.
When a line indicating the same file path as the file exists in the time stamp file 115, the time stamp value of the line is rewritten.
[0047]
The mirroring program 31 accesses the original server by FTP by the above-described method, and acquires the time stamp file 115 of the original server.
Among the files indicated by the time stamp file 115 of the original server, those not included in the time stamp file 115 of the replication directory, or the time stamp indicated by the time stamp file 115 of the replication directory is the time stamp file acquired from the original server. A file older than the time stamp indicated by 115 is acquired by FTP, and the acquired file is accumulated in the replication directory.
When the accumulation is completed, the time stamp indicated by the time stamp file 115 acquired from the original server is entered in the time stamp file 115 of the replication directory as the time stamp of the file.
[0048]
When a line indicating the same file path as the file exists in the time stamp file 115, the time stamp value of the line is rewritten.
The directory time stamp acquisition subroutine accesses the replication directory by FTP using the method described above, acquires the time stamp file 115 of the replication directory by FTP, and obtains the latest value of the time stamp included in the time stamp file 115, This value is set as the directory time stamp of the directory.
In the original time stamp acquisition subroutine, the control URL of the original directory 23 is acquired by the method described above, the acquired URL is accessed by FTP, and the time stamp file 115 of the original directory 23 is acquired by FTP. The time stamp of the file indicated by URL R is acquired from the time stamp file 115, and the acquired value is set as the original time stamp.
[0049]
Embodiment 4
In the present embodiment, the server selection apparatus according to the second embodiment is realized by a computer and a computer program that operates on the computer.
Hereinafter, in the present embodiment, a method for determining an original time stamp acquisition method according to a URL will be described.
By saving the file type original time stamp acquisition method table file 116 shown in FIG. 10 in the server selection device 1, the file type original time stamp acquisition method table 53 is realized.
This file 116 lists the extensions of files to be acquired using the directory time stamp of the original directory 23 as the original time stamp.
The original time stamp acquisition subroutine refers to this file 116 and determines whether or not the extension of the file indicated by URL R is described in this file. If it is described, the directory time stamp of the original directory 23 is described. Is obtained as an original time stamp.
[0050]
When acquiring the directory time stamp of the original directory 23 as the original time stamp, the original time stamp acquisition subroutine refers to the original directory file 112 to acquire a control unit directory corresponding to the URL R, and performs control corresponding to the directory. A URL for the file is acquired from the original directory file 112, the original directory 23 is accessed by FTP using the control URL, a list of the directory is acquired, and the latest value of the time stamp of the file indicated by the acquired list is obtained. The obtained value is used as the original time stamp.
[0051]
The following describes an embodiment in which the original time stamp acquisition method is registered for each directory as a modification of the present embodiment.
The directory-specific original time stamp acquisition method table 54 shown in FIG. 11 is stored in the server selection device 1 to realize the directory-specific original time stamp acquisition method table 54.
Each line of the file 117 indicates information of a directory, the first word indicates a directory identifier, and the second word indicates an original time stamp acquisition method.
The original time stamp acquisition subroutine acquires the control unit directory corresponding to the service identifier R by referring to the original directory file 112 by the method described above, and acquires the original time stamp acquisition method corresponding to the directory as the original time stamp acquisition for each directory. If it is obtained from the method table file 117 and the original time stamp obtaining method is “Directory”, the directory time stamp of the original directory 23 is obtained as the original time stamp.
[0052]
If the original time stamp acquisition method is “File”, the time stamp of the file stored in the original directory 23 and indicated by URL R is acquired as the original time stamp.
As described above, according to the present embodiment, the original time stamp acquisition method by file type table file 116 or the original time stamp acquisition method by directory in which the correspondence between the directory identifier and the original time stamp acquisition method is stored. Since the table file 117 is added to the server selection device 1, a more appropriate original time stamp can be obtained.
In the present embodiment, instead of the time when the file is stored in the original directory 23, the version number of the directory can be used as the time stamp of the file.
Although the invention made by the present inventor has been specifically described based on the above-described embodiment, the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the invention. Of course.
[0053]
【The invention's effect】
The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows.
(1) According to the present invention, as an information providing source server, it is possible to perform a process of selecting an information providing source server in a shorter time while avoiding a mirror server in which an update error has occurred.
(2) According to the present invention, it is possible to avoid a mirror server in which an update error has occurred as an information providing source server even in a form in which a homepage such as HTML is distributed.
(3) According to the present invention, it is possible to more reliably deliver the latest version of information at a higher speed, and it is possible to realize an information service that is more comfortable for the user.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of a server selection device according to a first embodiment of the present invention.
FIG. 2 is a block diagram showing a schematic configuration of a server selection device according to a second embodiment of the present invention.
FIG. 3 is a block diagram showing a schematic configuration of a server selection device according to a third embodiment of the present invention.
FIG. 4 is a diagram showing the contents of a MirrorControl file created on the mirror server.
FIG. 5 is a diagram showing the contents of a server list table file created on the server selection device.
FIG. 6 is a diagram showing the contents of an original directory file created on the server selection device.
FIG. 7 is a diagram showing the contents of a directory timestamp table file created on the server selection device.
FIG. 8 is a diagram showing the contents of a version number file created on the original server.
FIG. 9 is a diagram showing the contents of a time stamp file created on the original server and the mirror server.
FIG. 10 is a diagram showing the contents of a file type original time stamp acquisition method table file created on the server selection device.
FIG. 11 is a diagram showing the contents of a directory-specific original time stamp acquisition method table file created on the server selection device.
FIG. 12 is a diagram for explaining conventional redirection.
FIG. 13 is a block diagram showing a schematic configuration of a conventional server selection device.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Server selection apparatus, 2 ... Original server, 3 ... Mirror server, 4 ... Terminal, 11 ... Determination means, 12 ... Server narrowing-down means, 13 ... Duplicate file time stamp acquisition means, 14 ... Server list table, 15 ... Server list Reference means, 16 ... original time stamp acquisition means, 17 ... directory time stamp acquisition means, 18 ... directory time stamp table, 21 ... update reception directory, 22 ... update reception program, 23 ... original directory, 31 ... mirroring program, 32 ... Mirror directory, 51... Judgment means, 53... Original time stamp acquisition method table by file type, 54... Original time stamp acquisition method table by directory, 101. ... Selection request processing acquisition program, 110 ... MirrorControl file, 111 ... Server list table file, 112 ... Original directory file, 113 ... Directory time stamp table file, 114 ... Version number file, 115 ... Time stamp file, 116 ... By file type Original time stamp acquisition method table file, 117... Original directory time stamp acquisition method table file.

Claims (12)

あるオリジナルディレクトリの複製ディレクトリを複数のミラーサーバ上に作成し、複数のサーバを用いて情報を提供する情報サービスシステムにおいて、サービス識別子を含む情報を入力とし、前記ミラーサーバ群の中から情報を提供する情報提供元サーバを選択するサーバ選択装置であって、
ファイルの属性値でファイル間の値の順序がオリジナルディレクトリに蓄積された順序を示すものをタイムスタンプとし、あるディレクトリに属するファイルのタイムスタンプの最新の値を当該ディレクトリのディレクトリタイムスタンプとし、
前記各ミラーサーバそれぞれの前記複製ディレクトリのディレクトリタイムスタンプを取得するディレクトリタイムスタンプ取得手段と、
前記ディレクトリタイムスタンプ取得手段で取得したディレクトリタイムスタンプを、前記各ミラーサーバそれぞれの前記複製ディレクトリ毎に記憶するディレクトリタイムスタンプテーブルと、
オリジナルディレクトリに蓄積され、サービス識別子が示すファイルのタイムスタンプをオリジナルタイムスタンプとして取得するオリジナルタイムスタンプ取得手段と、
前記ディレクトリタイムスタンプテーブルを参照し、ディレクトリタイムスタンプが前記オリジナルタイムスタンプよりも古い前記複製ディレクトリを保持する前記ミラーサーバを、選択するサーバから除外するサーバ絞込み手段と、
前記サーバ絞込み手段で除外されたサーバ以外のサーバの中から前記情報提供元サーバを決定するサーバ決定手段とを備えることを特徴とするサーバ選択装置。
In an information service system that creates a duplicate directory of an original directory on a plurality of mirror servers and provides information using a plurality of servers, information including a service identifier is input and information is provided from the mirror server group. A server selection device for selecting an information provider server to be
The attribute value of a file indicates the order in which the value between files is stored in the original directory as a time stamp, the latest value of the time stamp of a file belonging to a certain directory as the directory time stamp of the directory,
Directory time stamp acquisition means for acquiring a directory time stamp of the replication directory of each mirror server;
A directory time stamp table for storing the directory time stamp acquired by the directory time stamp acquisition means for each of the replication directories of each mirror server;
An original time stamp acquisition means for acquiring the time stamp of the file stored in the original directory and indicated by the service identifier as an original time stamp;
Server narrowing means for referencing the directory time stamp table and excluding the mirror server holding the replication directory whose directory time stamp is older than the original time stamp from the server to be selected;
A server selection device comprising: server determination means for determining the information providing source server from servers other than the servers excluded by the server narrowing means.
前記ファイルのタイムスタンプは、ファイルがオリジナルディレクトリに蓄積された時刻を表すことを特徴とする請求項1に記載のサーバ選択装置。The server selection apparatus according to claim 1, wherein the time stamp of the file represents a time when the file is stored in the original directory. オリジナルディレクトリの属性値でオリジナルディレクトリの更新が発生するたびに加算されるものをバージョン番号とするとき、前記ファイルのタイムスタンプは、当該ファイルがオリジナルディレクトリに蓄積された直後のオリジナルディレクトリのバージョン番号を表すことを特徴とする請求項1に記載のサーバ選択装置。When the version number is an attribute value of the original directory that is added every time the original directory is updated, the time stamp of the file is the version number of the original directory immediately after the file is stored in the original directory. The server selection device according to claim 1, characterized in that: 前記オリジナルタイムスタンプ取得手段は、オリジナルディレクトリに蓄積されておりサービス識別子が示すファイルのタイムスタンプを取得するか、あるいはオリジナルディレクトリのディレクトリタイムスタンプを取得するかのオリジナルタイムスタンプ取得方法を前記サービス識別子をもとに判断する判断手段を有し、
前記オリジナルタイムスタンプ取得手段は、前記判断手段の判断結果に基づき、オリジナルディレクトリに蓄積されておりサービス識別子が示すファイルのタイムスタンプ、あるいは、オリジナルディレクトリのディレクトリタイムスタンプを、前記オリジナルタイムスタンプとして取得することを特徴とする請求項1ないし請求項3のいずれか1項に記載のサーバ選択装置。
The original time stamp obtaining means obtains an original time stamp obtaining method for obtaining a time stamp of a file stored in an original directory and indicated by a service identifier, or obtaining a directory time stamp of an original directory. It has a judgment means to judge based on,
The original time stamp acquisition means acquires, as the original time stamp, the time stamp of the file stored in the original directory and indicated by the service identifier or the directory time stamp of the original directory based on the determination result of the determination means. The server selection device according to any one of claims 1 to 3, wherein the server selection device.
ファイルの種類と前記オリジナルタイムスタンプ取得方法との対応関係を記憶させたファイル種類別オリジナルタイムスタンプ取得方法テーブルを備え、
前記判断手段は、前記ファイル種類別オリジナルタイムスタンプ取得方法テーブルに基づき、前記サービス識別子が示すファイルの種類に対応するオリジナルタイムスタンプ取得方法を判断することを特徴とする請求項4に記載のサーバ選択装置。
A file type original time stamp acquisition method table storing the correspondence between the file type and the original time stamp acquisition method;
5. The server selection according to claim 4, wherein the determination unit determines an original time stamp acquisition method corresponding to a file type indicated by the service identifier, based on the file type original time stamp acquisition method table. apparatus.
ディレクトリの識別子と前記オリジナルタイムスタンプ取得方法との対応関係を記憶させたディレクトリ別オリジナルタイムスタンプ取得方法テーブルを備え、
前記判断手段は、前記ディレクトリ別オリジナルタイムスタンプ取得方法テーブルに基づき、前記サービス識別子が示すディレクトリに対応するオリジナルタイムスタンプ取得方法を判断することを特徴とする請求項4に記載のサーバ選択装置。
A directory-specific original time stamp acquisition method table storing a correspondence relationship between a directory identifier and the original time stamp acquisition method;
5. The server selection apparatus according to claim 4, wherein the determination unit determines an original time stamp acquisition method corresponding to the directory indicated by the service identifier based on the directory-specific original time stamp acquisition method table.
あるオリジナルディレクトリの複製ディレクトリを複数のミラーサーバ上に作成し、複数のサーバを用いて情報を提供する情報サービスシステムにおいて、コンピュータに、サービス識別子を含む情報を入力とし、前記ミラーサーバ群の中から情報を提供する情報提供元サーバを選択させるサーバ選択プログラムであって、
ファイルの属性値でファイル間の値の順序がオリジナルディレクトリに蓄積された順序を示すものをタイムスタンプとし、あるディレクトリに属するファイルのタイムスタンプの最新の値を当該ディレクトリのディレクトリタイムスタンプとし、
前記ミラーサーバそれぞれの前記複製ディレクトリのディレクトリタイムスタンプを取得させる手順1と、
前記手順1で取得させたディレクトリタイムスタンプを、前記各ミラーサーバそれぞれの前記複製ディレクトリ毎にディレクトリタイムスタンプテーブルに記憶させる手順2と、
オリジナルディレクトリに蓄積され、サービス識別子が示すファイルのタイムスタンプをオリジナルタイムスタンプとして取得させる手順3と、
前記ディレクトリタイムスタンプテーブルを参照させ、ディレクトリタイムスタンプが前記オリジナルタイムスタンプよりも古い前記複製ディレクトリを保持する前記ミラーサーバを、選択するサーバから除外させる手順4と、
前記手順4で除外させたサーバ以外のサーバの中から情報を提供するサーバを決定させる手順5とを、コンピュータに実行させることを特徴とするサーバ選択プログラム。
In an information service system in which a replica directory of a certain original directory is created on a plurality of mirror servers and information is provided using a plurality of servers, information including a service identifier is input to a computer, and the information is stored in the mirror server group. A server selection program for selecting an information provider server that provides information,
The attribute value of a file indicates the order in which the value between files is stored in the original directory as a time stamp, the latest value of the time stamp of a file belonging to a certain directory as the directory time stamp of the directory,
Procedure 1 for obtaining a directory time stamp of the replication directory of each mirror server;
Storing the directory timestamp acquired in the procedure 1 in a directory timestamp table for each of the replication directories of each mirror server; and
Procedure 3 for acquiring the time stamp of the file stored in the original directory and indicated by the service identifier as the original time stamp;
A step 4 of referring to the directory timestamp table and excluding the mirror server holding the replica directory whose directory timestamp is older than the original timestamp from the servers to be selected;
A server selection program that causes a computer to execute a procedure 5 for determining a server that provides information from servers other than the servers excluded in the procedure 4.
前記ファイルのタイムスタンプは、ファイルがオリジナルディレクトリに蓄積された時刻を表すことを特徴とする請求項7に記載のサーバ選択プログラム。8. The server selection program according to claim 7, wherein the time stamp of the file represents a time when the file is stored in the original directory. オリジナルディレクトリの属性値でオリジナルディレクトリの更新が発生するたびに加算されるものをバージョン番号とするとき、前記ファイルのタイムスタンプは、当該ファイルがオリジナルディレクトリに蓄積された直後のオリジナルディレクトリのバージョン番号を表すことを特徴とする請求項7に記載のサーバ選択プログラム。When the version number is an attribute value of the original directory that is added every time the original directory is updated, the time stamp of the file is the version number of the original directory immediately after the file is stored in the original directory. The server selection program according to claim 7, wherein the server selection program is expressed. 前記手順3は、オリジナルディレクトリに蓄積されておりサービス識別子が示すファイルのタイムスタンプを取得するか、オリジナルディレクトリのディレクトリタイムスタンプを取得するかのオリジナルタイムスタンプ取得方法を前記サービス識別子をもとに判断させる手順3Aと、
前記手順3Aでの判断結果に基づき、オリジナルディレクトリに蓄積されておりサービス識別子が示すファイルのタイムスタンプ、あるいは、オリジナルディレクトリのディレクトリタイムスタンプを、前記オリジナルタイムスタンプとして取得させる手順3Bとを含むことを特徴とする請求項7ないし請求項9のいずれか1項に記載のサーバ選択プログラム。
The procedure 3 determines based on the service identifier whether or not to acquire the time stamp of the file indicated by the service identifier stored in the original directory or the directory time stamp of the original directory. Procedure 3A to
And a step 3B of acquiring a time stamp of the file indicated by the service identifier stored in the original directory or a directory time stamp of the original directory as the original time stamp based on the determination result in the step 3A. The server selection program according to any one of claims 7 to 9, wherein the server selection program is any one of claims 7 to 9.
ファイルの種類と前記オリジナルタイムスタンプ取得方法との対応関係を記憶させたファイル種類別オリジナルタイムスタンプ取得方法テーブルを備え、
前記手順3Aは、前記ファイル種類別オリジナルタイムスタンプ取得方法テーブルを参照させ、前記サービス識別子が示すファイルの種類に対応するオリジナルタイムスタンプ取得方法を判断させる手順であることを特徴とする請求項10に記載のサーバ選択プログラム。
A file type original time stamp acquisition method table storing the correspondence between the file type and the original time stamp acquisition method;
The procedure 3A is a procedure for referring to the file type original time stamp acquisition method table and determining an original time stamp acquisition method corresponding to a file type indicated by the service identifier. The server selection program described.
ディレクトリの識別子と前記オリジナルタイムスタンプ取得方法との対応関係を記憶させたディレクトリ別オリジナルタイムスタンプ取得方法テーブルを備え、
前記手順3Aは、前記ディレクトリ別オリジナルタイムスタンプ取得方法テーブルを参照させ、前記サービス識別子が示すディレクトリに対応するオリジナルタイムスタンプ取得方法を判断させる手順であることを特徴とする請求項10に記載のサーバ選択プログラム。
A directory-specific original time stamp acquisition method table storing a correspondence relationship between a directory identifier and the original time stamp acquisition method;
11. The server according to claim 10, wherein the procedure 3A is a procedure for referring to the directory-specific original timestamp acquisition method table and determining an original timestamp acquisition method corresponding to the directory indicated by the service identifier. Selection program.
JP2001104059A 2001-04-03 2001-04-03 Server selection device and server selection program Expired - Fee Related JP3651782B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001104059A JP3651782B2 (en) 2001-04-03 2001-04-03 Server selection device and server selection program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001104059A JP3651782B2 (en) 2001-04-03 2001-04-03 Server selection device and server selection program

Publications (2)

Publication Number Publication Date
JP2002297426A JP2002297426A (en) 2002-10-11
JP3651782B2 true JP3651782B2 (en) 2005-05-25

Family

ID=18956972

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001104059A Expired - Fee Related JP3651782B2 (en) 2001-04-03 2001-04-03 Server selection device and server selection program

Country Status (1)

Country Link
JP (1) JP3651782B2 (en)

Also Published As

Publication number Publication date
JP2002297426A (en) 2002-10-11

Similar Documents

Publication Publication Date Title
CN104980486B (en) Method and apparatus for providing set synchronization using equivalent matching network names
US8145728B2 (en) Method, system, and computer program product for offline advertisement servicing and cycling
JP4583420B2 (en) Optimized network resource location
US6963914B1 (en) Method and apparatus for retrieving a network file using a logical reference
US20030004998A1 (en) Proxy-based acceleration of dynamically generated content
US6823362B2 (en) Effectively and efficiently updating content files among duplicate content servers
JPH10254753A (en) Inter-cache information transfer method
KR19980041908A (en) Computerized resource name deriving mechanism
JP2001282609A (en) Web page acquisition service system, provider, web page acquiring method, storage medium, and program transmitting device
US20070192401A1 (en) System and method for synchronizing syndicated content over multiple locations
JP2004310371A (en) System, method, server for sharing file and client terminal for file sharing service, file sharing program and recording medium with program recorded
US20060064470A1 (en) Method, system, and computer program product for improved synchronization efficiency for mobile devices, including database hashing and caching of web access errors
US20160021170A1 (en) Difference based content networking
US20220046113A1 (en) Distributed state recovery in a system having dynamic reconfiguration of participating nodes
US7499958B1 (en) Systems and methods of replicating all or part of a data store
US20240015135A1 (en) Domain management and synchronization system
JP3651782B2 (en) Server selection device and server selection program
AU2002351296B2 (en) System and method for processing a request using multiple database units
JP2007200271A (en) Retrieval method and system for retrieving multimedia content in content network
JP2007527067A (en) Hierarchical distribution of UI assets
JPH11167512A (en) Data repeating device, data repeating method, and recording medium
US20020143899A1 (en) Providing access to present and past digital artefacts
KR100571426B1 (en) Method of copying HTTP session by cookie and version number in clustered web application server
JP2002014817A (en) System for distributing file
JP2001117808A (en) Decentralized management system for document directory and its acquiring method, and computer- readable recording medium recorded with program allowing computer to implement same method

Legal Events

Date Code Title Description
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: 20050208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050217

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080304

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090304

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090304

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100304

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110304

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110304

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120304

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees