(57)【特許請求の範囲】
【請求項１】
外部装置からの送信要求に応じてキャッシュデータを送信するキャッシュサーバにおいて、
更新期間が設定されるキャッシュデータと、更新フラグとを関連づけて記憶する記憶手段と、
前記更新期間が経過したキャッシュデータに対する送信要求が前記外部装置からあった場合、当該キャッシュデータに関連づけられた更新フラグの状態を判定する判定手段と、
前記判定手段によって更新フラグがオフであると判定された場合に、当該更新フラグをオンにして、前記更新期間が経過したキャッシュデータに対応する更新データを取得する取得手段と、
前記取得手段によって取得した更新データに基づいて前記キャッシュデータの更新を行い、当該キャッシュデータに関連づけられた更新フラグをオフにする更新手段と、
前記判定手段によって更新フラグがオンであると判定された場合、前記更新期間が経過したキャッシュデータを前記外部装置へ送信する送信手段と
を備えたことを特徴とするキャッシュサーバ。
【請求項２】
前記送信手段は、
前記判定手段によって更新フラグがオフであると判定された場合に、前記更新データに基づいて更新されたキャッシュデータ又は前記更新データを前記外部装置へ送信することを特徴とする請求項１に記載のキャッシュサーバ。
【請求項３】
前記判定手段は、
前記更新フラグの状態の判定を、前記更新期間が経過したキャッシュデータに対する送信要求が所定台数の前記外部装置からあった場合に行うことを特徴とする請求項１又は２に記載のキャッシュサーバ。
【請求項４】
前記キャッシュデータには、
前記更新期間よりも長い保持期間が規定されており、
前記保持期間内に前記外部装置から送信要求がない場合に、前記キャッシュデータを前記記憶手段から削除する削除手段
を備えたことを特徴とする請求項１〜３のいずれか１項に記載のキャッシュサーバ。
【請求項５】
前記外部装置からの送信要求に対応するキャッシュデータが前記記憶手段にない場合に、オリジナルデータを取得し、当該オリジナルデータをキャッシュデータとして前記記憶手段に記憶する手段
を備えたことを特徴とする請求項４に記載のキャッシュサーバ。
【請求項６】
外部装置からの送信要求に応じて送信されるキャッシュデータの管理をコンピュータに実行させるキャッシュ管理プログラムにおいて、
更新期間が設定されるキャッシュデータと、更新フラグとを関連づけて記憶手段に記憶し、
前記更新期間が経過したキャッシュデータに対する送信要求が前記外部装置からあった場合、当該キャッシュデータに関連づけられた更新フラグの状態を判定し、
前記更新フラグがオフであると判定された場合に、当該更新フラグをオンにして、前記更新期間が経過したキャッシュデータに対応する更新データを取得し、
前記更新データに基づいて前記キャッシュデータの更新を行い、当該キャッシュデータに関連づけられた更新フラグをオフにし、
前記更新フラグがオンであると判定された場合、前記更新期間が経過したキャッシュデータを前記外部装置へ送信することを特徴とするキャッシュ管理プログラム。
【請求項７】
コンピュータを制御し、外部装置からの送信要求に応じて送信されるキャッシュデータを前記コンピュータにより管理するキャッシュ管理方法において、
更新期間が設定されるキャッシュデータと、更新フラグとを関連づけて記憶手段に記憶する手順と、
前記更新期間が経過したキャッシュデータに対する送信要求が前記外部装置からあった場合、当該キャッシュデータに関連づけられた更新フラグの状態を判定する手順と、
前記更新フラグがオフであると判定された場合に、当該更新フラグをオンにして、前記更新期間が経過したキャッシュデータに対応する更新データを取得する手順と、
前記更新データに基づいて前記キャッシュデータの更新を行い、当該キャッシュデータに関連づけられた更新フラグをオフする手順と、
前記更新フラグがオンであると判定された場合、前記更新期間が経過したキャッシュデータを前記外部装置へ送信する手順と
を含むことを特徴とするキャッシュ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部装置からの要求に応じて送信するキャッシュデータを管理するキャッシュサーバ、キャッシュ管理方法およびキャッシュ管理プログラムに関する。
【背景技術】
【０００２】
近年、インターネットなどのネットワークの普及によって、種々の情報を配信するサービスが提供されている。かかるサービスにおいては、処理負荷の軽減などを図るために、キャッシュサーバが用いられることがある（例えば、特許文献１参照）。
【０００３】
例えば、各ユーザが投稿と閲覧とを行うブログなどのサービスにおいて、ユーザの投稿によってオリジナルサーバに蓄積された情報の閲覧をキャッシュサーバ経由で行うコンピュータシステムが知られている。
【０００４】
かかるコンピュータシステムでは、ユーザから要求された情報がキャッシュサーバに既に蓄積されているか否かをまず判定する。そして、キャッシュサーバ内に必要な情報が既に蓄積されていれば、キャッシュサーバから必要な情報が取得され、オリジナルサーバへのアクセスが行われない。これにより、情報取得の効率化を図ることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１４６３８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来のコンピュータシステムでは、キャッシュサーバ内に必要な情報が蓄積されていなければ、キャッシュサーバはオリジナルサーバへアクセスして情報を取得する。したがって、複数のユーザから同時期に同一の情報が要求された場合、キャッシュサーバ内に必要な情報が蓄積されていなければ、かかる要求の数だけキャッシュサーバがオリジナルサーバへアクセスすることになる。
【０００７】
そのため、キャッシュサーバにおいてオリジナルサーバへのアクセス処理が集中してしまい、キャッシュサーバでの処理の負荷が高まってしまうという課題があった。
【０００８】
本発明は、上記のような従来技術の課題を解決するものであり、その目的は、キャッシュサーバからオリジナルサーバへのアクセス処理の集中による負荷を軽減することにある。
【課題を解決するための手段】
【０００９】
上記の目的を踏まえ、本発明の一態様（１）は、外部装置からの送信要求に応じてキャッシュデータを送信するキャッシュサーバにおいて、更新期間が設定されるキャッシュデータと更新フラグとを関連づけて記憶する記憶手段と、前記更新期間が経過したキャッシュデータに対する送信要求が前記外部装置からあった場合、当該キャッシュデータに関連づけられた更新フラグの状態を判定する判定手段と、前記判定手段によって更新フラグがオフであると判定された場合に、当該更新フラグをオンにして、前記更新期間が経過したキャッシュデータに対応する更新データを取得する取得手段と、前記取得手段によって取得した更新データに基づいて前記キャッシュデータの更新を行い、当該キャッシュデータに関連づけられた更新フラグをオフにする更新手段と、前記判定手段によって更新フラグがオンであると判定された場合、前記更新期間が経過したキャッシュデータを前記外部装置へ送信する送信手段とを備える。
【００１０】
上記態様（１）をコンピュータ・プログラムという見方から捉えた本発明の一態様（６）は、外部装置からの送信要求に応じて送信されるキャッシュデータの管理をコンピュータに実行させるキャッシュ管理プログラムにおいて、更新期間が設定されるキャッシュデータと、更新フラグとを関連づけて記憶手段に記憶し、前記更新期間が経過したキャッシュデータに対する送信要求が前記外部装置からあった場合、当該キャッシュデータに関連づけられた更新フラグの状態を判定し、前記更新フラグがオフであると判定された場合に、当該更新フラグをオンにして、前記更新期間が経過したキャッシュデータに対応する更新データを取得し、前記更新データに基づいて前記キャッシュデータの更新を行い、当該キャッシュデータに関連づけられた更新フラグをオフにし、前記更新フラグがオンであると判定された場合、前記更新期間が経過したキャッシュデータを前記外部装置へ送信する処理を前記コンピュータに実行させる。
【００１１】
上記態様（１）を方法という見方から捉えた本発明の一態様（７）は、コンピュータを制御し、外部装置からの送信要求に応じて送信されるキャッシュデータを前記コンピュータにより管理するキャッシュ管理方法において、更新期間が設定されるキャッシュデータと、更新フラグとを関連づけて記憶手段に記憶する手順と、前記更新期間が経過したキャッシュデータに対する送信要求が前記外部装置からあった場合、当該キャッシュデータに関連づけられた更新フラグの状態を判定する手順と、前記更新フラグがオフであると判定された場合に、当該更新フラグをオンにして、前記更新期間が経過したキャッシュデータに対応する更新データを取得する手順と、前記更新データに基づいて前記キャッシュデータの更新を行い、当該キャッシュデータに関連づけられた更新フラグをオフする手順と、前記更新フラグがオンであると判定された場合、前記更新期間が経過したキャッシュデータを前記外部装置へ送信する手順とを含む。
【００１２】
この発明によれば、更新期間が経過したキャッシュデータに対する送信要求が外部装置からあった場合に更新フラグがオフであれば、更新データによりキャッシュデータを更新するまでの間、更新フラグをオンにする。一方、更新フラグがオンであれば、更新期間が経過した未更新のキャッシュデータを外部装置へ送信する。
【００１３】
したがって、更新期間が経過した同一のキャッシュデータに対する送信要求が複数あった場合に、キャッシュデータからオリジナルサーバへのアクセス処理の集中による処理負荷を軽減することができる。
【００１４】
本発明の他の態様（２）は、上記のいずれかの態様において、前記送信手段は、前記判定手段によって更新フラグがオフであると判定された場合に、前記更新データに基づいて更新されたキャッシュデータ又は前記更新データを前記外部装置へ送信することを特徴とする。
【００１５】
この発明によれば、更新フラグがオフであれば、更新データに基づいて更新されたキャッシュデータ又は更新データを外部装置へ送信する。したがって、外部装置では、最新のデータを取得することができる。
【００１６】
本発明の他の態様（３）は、上記のいずれかの態様において、前記判定手段は、前記更新フラグの状態の判定を、前記更新期間が経過したキャッシュデータに対する送信要求が所定台数の前記外部装置からあった場合に行うことを特徴とする。
【００１７】
この発明によれば、更新期間が経過したキャッシュデータに対する送信要求があった場合に、所定台数の端末装置に対しては、オリジナルサーバへのアクセスを行って、更新したキャッシュデータを送信する一方で、所定台数を超える端末装置に対しては、更新期間が経過した未更新のキャッシュデータを送信する。
【００１８】
したがって、オリジナルサーバへのアクセスが許容できる端末装置の台数を設定することで複数の端末装置へ更新したキャッシュデータを送信することができる。
【００１９】
本発明の他の態様（４）は、上記のいずれかの態様において、前記キャッシュデータには、前記更新期間よりも長い保持期間が規定されており、前記保持期間内に前記外部装置から送信要求がない場合に、前記キャッシュデータを前記記憶手段から削除する削除手段を備えたことを特徴とする。
【００２０】
この発明によれば、更新期間よりも長い保持期間が規定され、保存期間が経過したキャッシュデータは削除されるため、例えば、更新期間が大幅に経過した未更新のキャッシュデータが送信されてしまうことを回避できる。
【００２１】
本発明の他の態様（５）は、上記のいずれかの態様において、前記外部装置からの送信要求に対応するキャッシュデータが前記記憶手段にない場合に、オリジナルデータを取得し、当該オリジナルデータをキャッシュデータとして前記記憶手段に記憶する手段を備えたことを特徴とする。
【００２２】
この発明によれば、外部装置からの送信要求に対応するキャッシュデータがない場合であっても、新たなキャッシュデータを記憶することができるため、例えば、オリジナルデータサーバに新たな情報が記憶された場合などであっても迅速に対応することが可能である。
【発明の効果】
【００２３】
本発明によれば、キャッシュサーバからオリジナルサーバへのアクセス処理の集中による負荷を軽減することができる。
【図面の簡単な説明】
【００２４】
【図１】図１は、本発明の一実施形態のキャッシュ管理手法の概要説明図である。
【図２】図２は、本発明の一実施形態に係るブログサービスシステムの構成図である。
【図３】図３は、端末装置で表示されるウェブページの例を示す図である。
【図４】図４は、オリジナルサーバのブロック図である。
【図５】図５は、オリジナルデータベースのデータ構成の一例を示す図である。
【図６】図６は、キャッシュサーバのブロック図である。
【図７】図７は、キャッシュデータの一例を示す図である。
【図８】図８は、キャッシュデータフォーマットを示す図である。
【図９】図９は、キャッシュサーバの処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００２５】
以下、本発明を実施するための形態（以下、「実施形態」と呼ぶ）について、図面を参照しつつ詳細に説明する。
【００２６】
［１．キャッシュ管理手法の概要］
まず、本発明に係る一実施形態のキャッシュ管理手法の概要について図１を用いて説明する。図１は、本発明の一実施形態のキャッシュ管理手法の概要説明図である。
【００２７】
本実施形態では、図１の（Ａ）に示すように、キャッシュサーバ２がオリジナルサーバ１から取得したデータをキャッシュデータとして管理している。キャッシュサーバ２は、端末装置３1〜３nからの要求に応じて、キャッシュデータを要求元の端末装置３1〜３nへ送信する。なお、以下においては、端末装置３1〜３nのいずれか又は全部をいう場合には、端末装置３とする。
【００２８】
図１の（Ｂ）に示すように、キャッシュサーバ２に蓄積されるキャッシュデータには、更新期間の情報および更新フラグの情報が関連づけられており、これらの情報に基づいて、キャッシュサーバ２からオリジナルサーバ１へのアクセス処理の集中を抑制している。具体的には、次のような処理によってアクセス処理の集中を抑制している。
【００２９】
キャッシュサーバ２は、更新期間が経過したキャッシュデータに対して端末装置３から送信要求がある場合、オリジナルサーバ１へ対して更新データの要求を行うか否かを更新フラグの状態に応じて決定する。
【００３０】
例えば、更新フラグが「オフ」（例えば、「０」）であれば、キャッシュサーバ２は、オリジナルサーバ１へ対して更新データの要求を行って更新フラグを「オン」（例えば、「１」）へ変更する。
【００３１】
その後、オリジナルサーバ１から更新データを取得した場合、キャッシュサーバ２は、更新データに基づきキャッシュデータを更新し、更新フラグをオフへ変更する。また、キャッシュサーバ２は、更新済みのキャッシュデータ（以下、「更新済みキャッシュデータ」とする）を要求元となる端末装置３へ送信する。
【００３２】
一方、更新フラグがオンであれば、キャッシュサーバ２は、オリジナルサーバ１へ対して更新データの要求を行わずに、更新期間が経過し且つ未更新であるキャッシュデータ（以下、「未更新キャッシュデータ」とする）を読み出し、要求元となる端末装置３へ送信する。
【００３３】
ここで、上述したキャッシュサーバ２の動作を理解しやすいように、更新期間が経過した同一のキャッシュデータに対して端末装置３1〜３3から同時期に送信要求がある場合を考える。なお、端末装置３1，端末装置３2，端末装置３3の順に送信要求があるものとする。
【００３４】
図１の（Ｃ）に示すように、まず、更新期間が経過したキャッシュデータＢの送信要求が端末装置３1から行われると（ステップＳ１）、キャッシュサーバ２は、キャッシュデータＢに関連づけられた更新フラグの状態を判定する。
【００３５】
キャッシュデータＢは、更新期間が経過した後に初めて端末装置３1から送信要求があった状態であるため、キャッシュデータＢに関連づけられた更新フラグは「オフ」である。したがって、キャッシュサーバ２は、キャッシュデータＢに関連づけられた更新フラグが「オフ」であると判定する。
【００３６】
更新フラグが「オフ」であると判定すると、キャッシュサーバ２は、キャッシュデータＢを更新するための更新データの送信をオリジナルサーバ１に対して要求する（ステップＳ２）。また、キャッシュサーバ２は、キャッシュデータＢに関連づけられた更新フラグを「オン」へ変更する。
【００３７】
その後、キャッシュデータＢの送信要求が端末装置３2から行われると（ステップＳ３）、キャッシュサーバ２は、キャッシュデータＢに関連づけられた更新フラグの状態を判定する。キャッシュデータＢに関連づけられた更新フラグは、ステップＳ２において「オン」へ変更されているため、キャッシュサーバ２は、キャッシュデータＢに関連づけられた更新フラグの状態が「オン」であると判定する。
【００３８】
更新フラグの状態が「オン」であると判定すると、キャッシュサーバ２は、キャッシュデータＢを更新するための更新データの送信要求を行うことなく、未更新であるキャッシュデータをキャッシュデータベースから読み出して、端末装置３2へ送信する（ステップＳ４）。
【００３９】
その後、端末装置３2の場合と同様に、キャッシュデータＢの送信要求が端末装置３3から行われると（ステップＳ５）、キャッシュデータＢに関連づけられた更新フラグがオンであるため、キャッシュサーバ２は、未更新であるキャッシュデータをキャッシュデータベースから読み出して、端末装置３3へ送信する（ステップＳ６）。
【００４０】
その後、キャッシュデータＢを更新するための更新データがオリジナルサーバ１から送信されてくると（ステップＳ７）、キャッシュサーバ２は、この更新データに基づいてキャッシュデータＢの更新を行って、キャッシュデータＢに関連づけられた更新フラグを「オフ」へ変更する。そして、キャッシュサーバ２は、更新したキャッシュデータＢを端末装置３1へ送信する（ステップＳ８）。
【００４１】
このように、本実施形態に係るキャッシュ管理手法では、更新期間が経過した同一のキャッシュデータに対して複数の端末装置３から同時期に送信要求が行われた場合であっても、オリジナルサーバ１への更新データの要求数は、端末装置３からのキャッシュデータの送信要求数よりも少ない数である。
【００４２】
したがって、キャッシュサーバ２において、キャッシュデータに対応するオリジナルデータを保持又は生成するオリジナルサーバ１へのアクセス処理の集中による負荷を軽減することができる。
【００４３】
特に、上述の例では、最初に送信要求を行った端末装置３からの送信要求に対してのみオリジナルサーバ１への更新データの要求が行われ、その他の端末装置３からの送信要求に対しては未更新キャッシュデータを送信する。したがって、この場合、キャッシュサーバ２において、オリジナルサーバ１へのアクセス集中による処理負荷を大幅に軽減することができる。
【００４４】
［２．キャッシュ管理手法の具体例］
次に、図２〜図９を参照して、上述したキャッシュ管理手法を適用したシステムを詳細に説明する。以下においては、投稿文字数が制限されるマイクロブログと呼ばれるサービスを提供するブログサービスシステムを一例に挙げて説明するが、上述したキャッシュ管理手法は様々なシステムや装置に適用することが可能である。
【００４５】
まず、本実施形態に係るブログサービスシステムの構成について説明する。図２は、本実施形態に係るブログサービスシステムの構成を示す図である。
【００４６】
図２に示すように、本実施形態に係るブログサービスシステムＳは、アプリケーションサーバ１０と、オリジナルサーバ２０と、キャッシュサーバ３０とを備えており、これらのサーバはＬＡＮ（ローカルエリアネットワーク）などのネットワークにより接続されている。このブログサービスシステムＳは、ルータ６０を介してインターネットなどのネットワーク５０に接続されている。
【００４７】
このブログサービスシステムＳは、端末装置４０1〜４０nの各ユーザが投稿と閲覧とを行うことを可能としたシステムである。端末装置４０1〜４０nは、ネットワーク５０を介してブログサービスシステムＳとデータの送受信が可能であり、ブログサービスシステムＳでは、端末装置４０1〜４０nの各ユーザからの投稿や閲覧などを受け付ける。
【００４８】
例えば、各端末装置４０1〜４０nのユーザからの投稿要求は、アプリケーションサーバ１０によって受け付けられ、その投稿要求に応じた情報はアプリケーションサーバ１０からオリジナルサーバ２０へ通知され、オリジナルサーバ２０のオリジナルデータベースに蓄積される。
【００４９】
また、各端末装置４０1〜４０nのユーザからの閲覧要求は、アプリケーションサーバ１０によって受け付けられ、キャッシュサーバ３０へ通知される。キャッシュサーバ３０は、閲覧要求に対応するキャッシュデータを内部のキャッシュデータベースから読み出し、かかるキャッシュデータをアプリケーションサーバ１０経由で閲覧要求元の端末装置４０1〜４０nへ通知する。
【００５０】
各端末装置４０1〜４０nは、通信手段４１と、ブラウザ４２と、操作手段４３と、表示手段４４とを有しており、操作手段４３への操作によってブラウザ４２を制御して、通信手段４１を介してアプリケーションサーバ１０との間で各種のデータの送受信を行う。これによって、各端末装置４０1〜４０nのユーザは、投稿や閲覧を行うことができる。なお、以下においては、端末装置４０1〜４０nのいずれか又は全部をいう場合には、端末装置４０とする。
【００５１】
ここで、端末装置４０において投稿や閲覧を行うためにアプリケーションサーバ１０から送信されるウェブページの例を説明する。図３は、アプリケーションサーバ１０から送信され、端末装置４０において表示されるウェブページの例を示す図である。
【００５２】
本実施形態に係るブログサービスシステムでは、例えば、操作手段４３への操作によってブラウザ４２からアプリケーションサーバ１０へのアクセスがあった場合、アプリケーションサーバ１０はブログサービスのＴＯＰページ１１の情報を端末装置４０へ送信する。なお、アプリケーションサーバ１０へのアクセスには端末装置４０のユーザに対応するユーザＩＤの情報も含まれており、ユーザＩＤに対応するＴＯＰページ１１がアプリケーションサーバ１０から送信される。
【００５３】
ブラウザ４２は、アプリケーションサーバ１０から受信したＴＯＰページ１１の情報に基づいて、ブログサービスのＴＯＰページ１１を表示手段４４に表示させる。図３の（Ａ）は、表示手段４４に表示されるＴＯＰページ１１の一例を示している。このＴＯＰページ１１では、「一言投稿」、「一言閲覧」、「一言検索」、「素材検索」を選択可能としており、また、急上昇のキーワードなども表示される。
【００５４】
操作手段４３への操作によってＴＯＰページ１１に表示された「一言投稿」が選択された場合、ブラウザ４２からその選択情報がアプリケーションサーバ１０へ送信される。この選択情報の送信に対し、アプリケーションサーバ１０から投稿用ページ１２の情報が端末装置４０へ送信され、図３の（Ｂ）に示すように、投稿を行うための投稿用ページ１２がブラウザ４２によって表示手段４４に表示される。端末装置４０のユーザは、操作手段４３への操作によって投稿文入力ボックス１２ａ内に投稿文を入力し、「投稿」ボタン１２ｂを押下する。これにより、投稿文情報がアプリケーションサーバ１０へ送信される。
【００５５】
投稿文情報の送信に対して、アプリケーションサーバ１０からは、図３の（Ｃ）に示すような素材設定用ページ１３の情報が送信され、ブラウザ４２によって素材設定用ページ１３が表示手段４４に表示される。端末装置４０のユーザは、上述のように投稿した投稿文に関連すると考える素材１７ａ〜１７ｃ（ここでは画像）に対応するチェックボックス１３ａのいずれか選択し、設定ボタン１３ｂを押下する。
【００５６】
これにより、ユーザが選択した素材の素材ＩＤがアプリケーションサーバ１０へ送信される。そして、アプリケーションサーバ１０へ送信された投稿文および素材ＩＤなどは投稿情報としてオリジナルサーバ２０へ送信され、オリジナルサーバ２０に蓄積される。
【００５７】
また、操作手段４３への操作によってＴＯＰページ１１に表示された「一言閲覧」が選択された場合、ブラウザ４２からその選択情報がアプリケーションサーバ１０へ送信される。この選択情報の送信に対し、アプリケーションサーバ１０から一言閲覧ページ１４の情報が端末装置４０へ送信され、図３の（Ｄ）に示すように、ユーザの投稿内容の一覧を示す一言閲覧ページ１４がブラウザ４２によって表示手段４４に表示される。
【００５８】
この一言閲覧ページ１４は、アプリケーションサーバ１０がキャッシュサーバ３０に要求して取得した情報に基づいて生成されるものである。具体的には、アプリケーションサーバ１０は、端末装置４０から送信される一言閲覧要求に対応する情報をキャッシュサーバ３０へ要求する。
【００５９】
キャッシュサーバ３０はアプリケーションサーバ１０からの要求に応じた情報を内部のキャッシュデータベースから読み出して、アプリケーションサーバ１０へ送信する。なお、キャッシュサーバ３０は、アプリケーションサーバ１０からの要求に応じた情報がキャッシュデータベースにない場合、オリジナルサーバ２０から情報を取得し、アプリケーションサーバ１０へ送信する。
【００６０】
なお、一言閲覧は、閲覧したいユーザに関する投稿の一覧情報とすることができる。すなわち、端末装置４０のユーザは、自分が投稿した内容を一覧表示するだけでなく、選択によって他のユーザが投稿した内容の一覧を表示することもできる。
【００６１】
また、操作手段４３への操作によってＴＯＰページ１１に表示された「素材検索」が選択され、さらに検索する素材が選択された場合、ブラウザ４２からその選択情報がアプリケーションサーバ１０へ送信される。この選択情報の送信に対し、アプリケーションサーバ１０から素材検索結果ページ１５の情報が端末装置４０へ送信される。
【００６２】
端末装置４０のブラウザ４２は、アプリケーションサーバ１０から受信した情報に基づいて、図３の（Ｅ）に示すように、素材１７ａを関連づけた投稿の一覧を示す素材検索結果ページ１５をブラウザ４２によって表示手段４４に表示させる。なお、図３の（Ｅ）に示す例では、検索する素材を素材１７ａとした素材検索結果ページ１５の例を示している。この素材検索結果ページ１５は、一言閲覧ページ１４と同様に、アプリケーションサーバ１０がキャッシュサーバ３０に要求して取得した情報に基づいて生成される。
【００６３】
さらに、操作手段４３への操作によって素材検索結果ページ１５から素材名１５ａが選択された場合、ブラウザ４２からその選択情報がアプリケーションサーバ１０へ送信される。この選択情報の送信に対し、アプリケーションサーバ１０から素材詳細ページ１６の情報が端末装置４０へ送信される。端末装置４０のブラウザ４２は、アプリケーションサーバ１０から受信した情報に基づいて、図３の（Ｆ）に示すように、素材詳細ページ１６を表示手段４４に表示させる。
【００６４】
この素材詳細ページ１６は、一言閲覧ページ１４や素材検索結果ページ１５と同様に、アプリケーションサーバ１０がキャッシュサーバ３０に要求して取得した情報に基づいて生成される。また、同様に、ＴＯＰページ１１の急上昇キーワードの情報に関しても、アプリケーションサーバ１０がキャッシュサーバ３０に要求して取得した情報に基づいて生成される。
【００６５】
以上のように、本実施形態に係るブログサービスシステムＳでは、端末装置４０のユーザから投稿文や対応する素材を投稿情報として投稿可能とし、また、投稿情報や素材情報などを端末装置４０のユーザから閲覧可能としている。このように構成されるブログサービスシステムＳについて、以下、オリジナルサーバ２０およびキャッシュサーバ３０の構成について詳細に説明する。
【００６６】
［２．１．オリジナルサーバ２０の構成］
図４にオリジナルサーバ２０の構成を示す。図４に示すように、オリジナルサーバ２０は、通信インタフェース（Ｉ／Ｆ）２１と、オリジナルデータベース２２と、制御部２３とを備えている。
【００６７】
通信Ｉ／Ｆ２１は、オリジナルサーバ２０をＬＡＮ経由でアプリケーションサーバ１０やキャッシュサーバ３０と接続できるようにするためのインタフェースであり、例えば、イーサネット（登録商標）・アダプタを含む。
【００６８】
オリジナルデータベース２２は、端末装置４０1〜４０nのユーザからの投稿に関する情報を蓄積するデータベースである。このオリジナルデータベース２２は、キーバリュー型のデータベースであり、複数の検索キーに関連づけて投稿情報の各要素が蓄積される。
【００６９】
なお、キーバリュー型のデータベースは、データベースの増設や分散配置が容易であることからブログサービスシステムＳなどのようにデータが増加するシステムに有効なデータベースである。
【００７０】
ここで、オリジナルデータベース２２に蓄積される投稿情報の一例を具体的に説明する。図５は、オリジナルデータベース２２のデータ構成の一例を示す図である。
【００７１】
図５に示すように、各投稿情報には、投稿ＩＤ（ここでは、一言ＩＤと称する）が割り当てられ、さらに、投稿情報の各要素は、それぞれ検索キーに関連づけられてオリジナルデータベース２２に蓄積される。
【００７２】
具体的には、投稿情報の要素には、一言内容、一言種別、ユーザＩＤ、投稿日時、素材ＩＤなどがあり、それぞれ検索キーに割り当てられる。図５に示す例では、一言ＩＤが１１１である投稿に関する情報として、一言内容（ｔｅｘｔ）として「ねむすぎ＃ひま」、一言種別として「０」、ユーザＩＤとして「５５５」、投稿日時として「２０１０年１２月２８日２０時１４分２７秒」、素材ＩＤ（ｉｍａｇｅ）として「５４３２２８」がそれぞれ蓄積されることを示している。
【００７３】
このオリジナルデータベース２２から投稿情報の要素として、例えば、一言ＩＤが「１１１」の一言内容（ｔｅｘｔ）を検索する場合、検索式は次のようになる。
検索式＝［１１１］［ｔｅｘｔ］
【００７４】
図４の説明に戻ってオリジナルサーバ２０の構成の説明を続ける。制御部２３は、オリジナルデータベース２２の全体制御を行う制御部である。制御部２３は、受信手段２３ａと、受付手段２３ｂと、取得手段２３ｃと、送信手段２３ｄとをさらに備えている。
【００７５】
なお、図４には、制御部２３の機能的な構成を示しているが、この制御部２３は、物理的にはＣＰＵ（Central  Processing  Unit）とＲＯＭ（Read  Only  Memory）とＲＡＭ（Random Access Memory）とを有する情報処理装置を備えている。そして、ＣＰＵがＲＯＭからプログラムを読出し、ＲＡＭを作業領域として使用して実行することにより、上述した各手段２３ａ〜２３ｄ等として機能する。
【００７６】
受信手段２３ａは、通信Ｉ／Ｆ２１を介してアプリケーションサーバ１０から送信される投稿情報やキャッシュサーバ３０から送信される検索要求信号を受信する。
【００７７】
受付手段２３ｂは、受信手段２３ａによって受信した情報を受け付ける。例えば、受信手段２３ａによってアプリケーションサーバ１０からの投稿情報が受信された場合、受付手段２３ｂは、この投稿情報に一言ＩＤを関連づけてオリジナルデータベース２２に蓄積する。
【００７８】
また、受付手段２３ｂは、キャッシュサーバ３０から検索要求信号が受信手段２３ａによって受信された場合、検索要求信号に含まれる検索内容の情報を取得手段２３ｃへ出力する。
【００７９】
取得手段２３ｃは、受付手段２３ｂから出力された検索内容の情報に基づき、キャッシュサーバ３０を参照して検索内容に応じた情報（以下、検索結果情報と記載する）を取得する。オリジナルデータベース２２は、上述したように、キーバリュー型のデータベースであり、取得手段２３ｃは、検索キーによってオリジナルデータベース２２から情報を取得し、取得した情報又はこの情報に所定の処理を施した情報を検索結果情報として取得する。
【００８０】
例えば、検索要求信号に含まれる検索内容が素材１７ａの素材詳細ページ１６（図３参照）を生成するための情報を検索するものである場合、取得手段２３ｃは、素材１７ａが関連づけられた投稿情報をオリジナルデータベース２２から取得する。そして、取得手段２３ｃは、素材１７ａが関連づけられた投稿情報の数を集計し、また、素材１７ａが関連づけられた投稿情報の投稿者の順位などを判定して検索結果情報とする。
【００８１】
送信手段２３ｄは、取得手段２３ｃによって取得された検索結果情報をキャッシュサーバ３０へ送信する。
【００８２】
［２．２．キャッシュサーバ３０の構成］
図６にキャッシュサーバ３０の構成を示す。図６に示すように、キャッシュサーバ３０は、通信インタフェース（Ｉ／Ｆ）３１と、キャッシュデータベース３２と、制御部３３とを備えている。
【００８３】
通信Ｉ／Ｆ３１は、キャッシュサーバ３０をＬＡＮ経由でアプリケーションサーバ１０やオリジナルサーバ２０と接続できるようにするためのインタフェースであり、例えば、イーサネット（登録商標）・アダプタを含む。
【００８４】
キャッシュデータベース３２は、オリジナルサーバ２０から取得した検索結果情報をキャッシュデータとして蓄積する記憶手段である。このキャッシュデータベース３２は、例えば、リレーショナル型のデータベースであり、キャッシュデータの蓄積、読み出し、更新は、例えば、ＳＱＬ（Structured Query Language）に従ったコマンドが用いられる。
【００８５】
ここで、キャッシュデータベース３２に登録されるキャッシュデータに関して図面を参照して具体的に説明する。図７は、キャッシュデータの一例を示す図であり、図８はキャッシュデータフォーマットを示す図である。
【００８６】
図７に示すキャッシュデータは、素材１７ａに関する素材情報のデータであり、アプリケーションサーバ１０が素材１７ａに関する素材詳細ページ１６を生成するために必要なデータである。このキャッシュデータには、素材ＩＤ、投稿数、投稿者（第１位）、投稿者（第２位）、投稿者（第３位）、・・・などの情報が含まれる。このデータは、上述したように、オリジナルサーバ２０によって生成される情報であり、検索結果情報としてキャッシュサーバ３０へ送信される情報である。
【００８７】
また、図８に示すように、キャッシュデータベース３２に登録されるキャッシュデータには、ヘッダが付加される。ヘッダには、検索種別、検索内容、更新フラグ、カウンタ値、更新期間、ＴＴＬなどの情報が含まれる。
【００８８】
検索種別の情報は、上述したＴＯＰページ１１、一言閲覧ページ１４、素材検索結果ページ１５、素材詳細ページ１６のいずれであるか示す情報である。また、検索内容の情報は、検索内容を示す情報である。例えば、検索種別が一言閲覧ページ１４を示す場合には、検索内容の情報は、ユーザＩＤなどの情報であり、また、検索種別が素材詳細ページ１６を示す場合には、検索内容の情報は、素材ＩＤなどの情報である。
【００８９】
更新期間の情報は、キャッシュデータの更新期間を規定する情報である。この更新期間の情報は、ここでは更新期限の日時情報が設定されるが、例えば、更新期間を規定できればよく、例えば、キャッシュデータを新たに追加した日時や更新した日時であってもよい。この場合、追加日時や更新日時から設定された期間が更新期限の日時となる。
【００９０】
カウンタ値の情報は、更新期間が経過したキャッシュデータの送信要求があった場合に、更新済みのキャッシュデータを返信することができる端末装置４０の台数ｘがデフォルト値として規定される。このカウンタ値によって、更新期間が経過した同一のキャッシュデータの送信要求が複数あった場合に、ｘ個までの送信要求に対しては更新済みのキャッシュデータが送信され、ｘ個を超える分の送信要求に対しては未更新のキャッシュデータが送信される。
【００９１】
更新フラグは、例えば、値が０の場合に「オフ」の状態であり、値が１の場合に「オン」の状態であるが、その逆であってもよい。すなわち、更新フラグは、「オフ」の状態と「オン」の状態とを識別することができれば、どのようなデータであってもよい。この更新フラグは、例えば、カウンタ値が１以上の値から０となった場合に「オフ」から「オン」へ変更され、キャッシュデータが更新された場合に、「オン」から「オフ」へ変更される。
【００９２】
ＴＴＬは、キャッシュデータの保存期間を規定する情報であり、保存期間が経過したキャッシュデータは、キャッシュデータベース３２から削除される。
【００９３】
キャッシュサーバ３０は、このようにキャッシュデータベース３２にヘッダが付加されて蓄積されたキャッシュデータを、アプリケーションサーバ１０から検索種別と検索内容とを指定した検索要求信号に基づいてキャッシュデータベース３２を検索する。そして、キャッシュサーバ３０は、検索したキャッシュデータをアプリケーションサーバ１０へ送信する。
【００９４】
図６に戻ってキャッシュサーバ３０の構成についての説明を続ける。制御部３３は、キャッシュデータベース３２の全体制御を行う制御部である。制御部３３は、受信手段３３ａと、受付手段３３ｂと、判定手段３３ｃと、取得手段３３ｄと、更新手段３３ｅと、削除手段３３ｆと、送信手段３３ｇとをさらに備えている。
【００９５】
なお、図６には、制御部３３の機能的な構成を示しているが、この制御部３３は、物理的にはＣＰＵ（Central  Processing  Unit）フラッシュメモリ（flash memory）とＲＡＭ（Random Access Memory）とを有する情報処理装置を備えている。そして、ＣＰＵがフラッシュメモリからプログラムを読出し、ＲＡＭを作業領域として使用して実行することにより、上述した各手段３３ａ〜３３ｇ等として機能する。
【００９６】
受信手段３３ａは、例えば、通信Ｉ／Ｆ３１を介してアプリケーションサーバ１０から送信される情報要求信号やオリジナルサーバ２０から送信される検索結果情報を受信する。情報要求信号は、アプリケーションサーバ１０からキャッシュサーバ３０に対して情報の送信要求を行うための信号であり、例えば、検索種別や検索内容の情報が含まれる。
【００９７】
受付手段３３ｂは、受信手段３３ａによって受信した情報要求信号を受け付け、この情報要求信号に対応するキャッシュデータがキャッシュデータベース３２に蓄積されているか否かを判定する。具体的には、受付手段３３ｂは、情報要求信号に含まれる検索種別および検索内容の情報と一致するヘッダを有するキャッシュデータがキャッシュデータベース３２に蓄積されているか否かを判定する。
【００９８】
受付手段３３ｂは、情報要求信号に含まれる検索種別および検索内容の情報と一致するヘッダを有するキャッシュデータがキャッシュデータベース３２に蓄積されていない場合、検索要求信号を送信手段３３ｇから出力させる。この検索要求信号には、情報要求信号に含まれる検索種別および検索内容と同じ情報が含まれる。
【００９９】
一方、受付手段３３ｂは、情報要求信号に含まれる検索種別および検索内容の情報と一致するヘッダを有するキャッシュデータ（以下、要求対象キャッシュデータと記載する）がキャッシュデータベース３２に蓄積されている場合、この要求対象キャッシュデータをキャッシュデータベース３２から読み出す。
【０１００】
そして、受付手段３３ｂは、キャッシュデータベース３２から読み出した要求対象キャッシュデータの更新期間が経過しているか否かを判定する。具体的には、受付手段３３ｂは、要求対象キャッシュデータに付加されたヘッダに含まれる更新期間の情報を参照して、更新期間が経過したか否かを判定する。ここでは更新期間の情報は更新期限の日時の情報であり、受付手段３３ｂは、更新期限の日時を経過しているか否かを判定する。
【０１０１】
要求対象キャッシュデータの更新期間が経過していない場合、受付手段３３ｂは、キャッシュデータベース３２から読み出した要求対象キャッシュデータを送信手段３３ｇによってアプリケーションサーバ１０へ送信させる。一方、要求対象キャッシュデータの更新期間が経過している場合、受付手段３３ｂは、要求対象キャッシュデータに関連づけられた更新フラグの状態を判定手段３３ｃに判定させる。
【０１０２】
受付手段３３ｂは、判定手段３３ｃによって要求対象キャッシュデータに関連づけられた更新フラグの状態が「オン」であると判定された場合、キャッシュデータベース３２から読み出した要求対象キャッシュデータを送信手段３３ｇによってアプリケーションサーバ１０へ送信させる。
【０１０３】
一方、受付手段３３ｂは、判定手段３３ｃによって要求対象キャッシュデータに関連づけられた更新フラグの状態が「オフ」であると判定された場合、キャッシュデータベース３２を制御し、要求対象キャッシュデータに関連づけられたカウンタ値を１だけデクリメントする。
【０１０４】
判定手段３３ｃは、要求対象キャッシュデータに関連づけられた更新フラグの状態を判定する。具体的には、判定手段３３ｃは、要求対象キャッシュデータに付加されたヘッダに含まれる更新フラグが「オン」であるか「オフ」であるかを判定する。そして、判定した更新フラグの状態を受付手段３３ｂおよび取得手段３３ｄへ通知する。
【０１０５】
取得手段３３ｄは、判定手段３３ｃによって更新フラグが「オフ」であると判定され、かつカウンタ値が０である場合に、更新フラグを「オン」にし、要求対象キャッシュデータに対応する更新データを取得する。
【０１０６】
具体的には、取得手段３３ｄは、キャッシュデータベース３２を制御し、「オフ」であると判定された更新フラグを「オフ」から「オン」へ変更する。また、取得手段３３ｄは、要求対象キャッシュデータに対応する更新データを要求する検索要求信号を送信手段３３ｇから出力させ、受信手段３３ａを介して検索結果情報を更新データとして取得する。
【０１０７】
更新手段３３ｅは、取得手段３３ｄによって取得した更新データに基づいて要求対象キャッシュデータの更新を行う。この場合、更新手段３３ｅは、更新する要求対象キャッシュデータに関連づけられた更新フラグを「オン」から「オフ」へ変更し、さらに、カウンタ値の情報をデフォルト値へ変更し、更新期間の情報を新たな更新期間の情報へ変更する。
【０１０８】
削除手段３３ｆは、保持期間内にアプリケーションサーバ１０から情報要求信号がない場合に、保持期間が経過したキャッシュデータをキャッシュデータベース３２から削除する。
【０１０９】
送信手段３３ｇは、情報要求信号に対応する要求対象キャッシュデータをアプリケーションサーバ１０へ送信する。具体的には、送信手段３３ｇは、要求対象キャッシュデータの更新期間が経過していない場合、キャッシュデータベース３２に蓄積している要求対象キャッシュデータを送信する。また、送信手段３３ｇは、要求対象キャッシュデータに関連する更新フラグが「オン」であると判定された場合、キャッシュデータベース３２に蓄積している更新期間が経過した要求対象キャッシュデータをアプリケーションサーバ１０へ送信する。
【０１１０】
一方で、送信手段３３ｇは、要求対象キャッシュデータに関連する更新フラグが「オフ」であると判定された場合、更新データに基づいて更新されたキャッシュデータをアプリケーションサーバ１０へ送信する。なお、送信手段３３ｇは、受信手段３３ａによって受信した更新データを取得手段３３ｄ経由でそのままアプリケーションサーバ１０へ送信するようにもできる。
【０１１１】
また、送信手段３３ｇは、要求対象キャッシュデータを更新するための検索要求信号をオリジナルサーバ２０へ送信する。
【０１１２】
以上のように構成されたキャッシュサーバ３０の具体的動作について図９を用いて説明する。図９は、キャッシュサーバ３０の制御部３３が実行する処理手順の概要を示すフローチャートである。
【０１１３】
この処理は、繰り返し行われる処理であり、制御部３３を構成するマイクロコンピュータ（ＣＰＵ）がプログラムに基づき処理を行なって実行（実現）されるが、図６に示した機能ブロックとの関係を分かりやすくする為、便宜的に各機能ブロックが実行するという表現を用いて説明する。
【０１１４】
図９に示すように、キャッシュサーバ３０において、受付手段３３ｂは、アプリケーションサーバ１０から情報要求信号を受信したか否かを判定する（ステップＳ１０）。この処理において、情報要求信号を受信したと判定すると（ステップＳ１０，Ｙｅｓ）、受付手段３３ｂは、情報要求信号に対応するキャッシュデータ（要求対象キャッシュデータ）がキャッシュデータベース３２に存在するか否かを判定する（ステップＳ１１）。
【０１１５】
要求対象キャッシュデータが存在する場合（ステップＳ１１，Ｙｅｓ）、受付手段３３ｂは、要求対象キャッシュデータの更新期間が経過したか否かを判定する（ステップＳ１２）。要求対象キャッシュデータの更新期間が経過していない場合（ステップＳ１２，Ｎｏ）、送信手段３３ｇは、キャッシュデータベース３２から読み出された要求対象キャッシュデータを送信する（ステップＳ１３）。
【０１１６】
一方、要求対象キャッシュデータの更新期間が経過している場合（ステップＳ１２，Ｙｅｓ）、判定手段３３ｃは、要求対象キャッシュデータに関連づけられた更新フラグが「オン」であるか否かを判定する（ステップＳ１４）。要求対象キャッシュデータに関連づけられた更新フラグが「オフ」である場合（ステップＳ１４，Ｎｏ）、受付手段３３ｂは、要求対象キャッシュデータに関連づけられたカウンタ値を１だけデクリメントする（ステップＳ１５）。
【０１１７】
つづいて、受付手段３３ｂは、要求対象キャッシュデータに関連づけられたカウンタ値が０であるか否かを判定する（ステップＳ１６）。カウンタ値が０であると判定すると（ステップＳ１６，Ｙｅｓ）、受付手段３３ｂは、要求対象キャッシュデータに関連づけられた更新フラグを「オン」にする（ステップＳ１７）。
【０１１８】
ステップＳ１７の処理が終了した場合、又は、ステップＳ１６においてカウンタ値が０ではないと判定されると（ステップＳ１６，Ｎｏ）、取得手段３３ｄは、キャッシュデータを更新するための更新データを取得し、更新手段３３ｅは取得手段３３ｄによって取得された更新データに基づいてキャッシュデータを更新する（ステップＳ１８）。
【０１１９】
また、更新手段３３ｅは、更新した要求対象キャッシュデータに関連づけられた更新フラグを「オン」から「オフ」へ変更し、カウンタ値をデフォルト値へ変更し、さらに更新期間の情報を新たな更新期間の情報へ変更する（ステップＳ１９）。つづいて、送信手段３３ｇは、ステップＳ１８において更新されたキャッシュデータをアプリケーションサーバ１０へ送信する（ステップＳ２０）。
【０１２０】
ステップＳ１４において、要求対象キャッシュデータに関連づけられた更新フラグが「オン」であると判定した場合（ステップＳ１４，Ｙｅｓ）、送信手段３３ｇは、キャッシュデータベース３２から読み出された未更新の要求対象キャッシュデータを送信する（ステップＳ２１）。
【０１２１】
また、ステップＳ１１において、要求対象キャッシュデータが存在しないと判定された場合（ステップＳ１１，Ｎｏ）、制御部３３は、キャッシュデータを作成して送信する（ステップＳ２２）。
【０１２２】
具体的には、受付手段３３ｂが、検索要求信号を送信手段３３ｇによってオリジナルサーバ２０へ送信させる。これにより、検索要求信号に対応する検索結果情報がオリジナルサーバ２０からキャッシュサーバ３０へ送信される。取得手段３３ｄは、受信手段３３ａによって受信した検索結果情報をキャッシュデータとしてキャッシュデータベース３２に蓄積すると共に、アプリケーションサーバ１０へ送信する。
【０１２３】
なお、受付手段３３ｂによって新たに作成されるキャッシュデータに付加されるヘッダは、デフォルトのヘッダである。すなわち、更新期間の情報は新規の更新期間の情報であり、カウンタ値の情報はデフォルト値であり、さらに状態が「オフ」の更新フラグが新たに作成されるキャッシュデータに付加される。
【０１２４】
また、ステップＳ１０において、情報要求信号を受信していないと判定すると（ステップＳ１０，Ｎｏ）、削除手段３３ｆは、各キャッシュデータのＴＴＬを参照して、保持期間が経過したキャッシュデータがあるか否かを判定する（ステップＳ２４）。この処理において、保持期間が経過したキャッシュデータがあると判定すると（ステップＳ２４，Ｙｅｓ）、削除手段３３ｆは、保持期間が経過したキャッシュデータをキャッシュデータベース３２から削除する（ステップＳ２５）。
【０１２５】
ステップＳ１３，Ｓ２０〜Ｓ２２，Ｓ２５の処理が終了した場合、又はステップＳ２４において保持期間が経過したキャッシュデータがないと判定した場合（ステップＳ２４，Ｎｏ）、制御部３３は処理を終了する。
【０１２６】
以上のように本実施形態に係るキャッシュサーバは、更新期間が経過したキャッシュデータに対する送信要求が外部装置からあった場合に更新フラグがオフであれば、更新データを取得してキャッシュデータを更新するまでの間、更新フラグをオフにする。一方、更新フラグがオンであれば、更新期間が経過した未更新のキャッシュデータを外部装置へ送信する。
【０１２７】
したがって、更新期間が経過した同一のキャッシュデータに対する送信要求が複数あった場合に、キャッシュデータに対応するオリジナルデータを保持又は生成するオリジナルサーバ２０へのアクセス集中による処理負荷を軽減することができる。
【０１２８】
なお、上述においては、キャッシュサーバ３０においてキャッシュデータを更新する場合、オリジナルサーバ２０から受信した検索結果情報をキャッシュデータとしてキャッシュデータベース３２に蓄積する例を説明したが、キャッシュデータの更新方法はこれに限られない。
【０１２９】
例えば、漸次情報が追加されて更新されるようなキャッシュデータの場合、追加される情報のみの検索を要求する検索要求信号をオリジナルサーバ２０へ送信する。そして、この検索要求信号に対してオリジナルサーバ２０から送信される検索結果情報をキャッシュデータに追加することでキャッシュデータを更新する。
【０１３０】
このように、関係する投稿情報をすべて取得するのではなく、追加された投稿情報のみを取得するための検索要求をオリジナルサーバ２０へ行うことで、オリジナルサーバ２０の検索負荷を低減することができる。例えば、アプリケーションサーバ１０が図３の（Ｄ）の一言閲覧ページ１４を生成するための投稿情報はユーザの投稿によって追加されるものであり、このような場合に有効である。
【０１３１】
また、上述においては、更新フラグや更新期間の情報などを含むヘッダをキャッシュデータに付加するようにしたが、上述したヘッダの情報がキャッシュデータに関連づけられてキャッシュデータベース３２に蓄積されればよく、必ずしもキャッシュデータにヘッダの情報が付加されている必要はない。
【０１３２】
また、上述においては、カウンタ値のデフォルト値を固定の情報ｘとした例を示したが、制御部３３は、外部装置からの設定要求などに応じて、カウンタ値のデフォルト値を変更することができ、また、制御部３３は、キャッシュサーバ３０の負荷に応じて変更することもできる。例えば、制御部３３は、キャッシュサーバ３０の負荷が低い場合には、カウンタ値のデフォルト値を大きくし、キャッシュサーバ３０の負荷が高い場合には、カウンタ値のデフォルト値を小さくする。
【０１３３】
また、上述においては、更新フラグは、例えば、カウンタ値が１以上の値から０となった場合に「オフ」から「オン」へ変更され、キャッシュデータが更新された場合に、「オン」から「オフ」へ変更されるようにしたが、カウンタ値のデフォルト値が「１」でよいような場合、カウンタ値を設けなくてもよい。
【０１３４】
カウンタ値を設けない場合においては、制御部３３は、更新期間が経過したキャッシュデータに対して送信要求が１つの端末装置４０からあった場合に、「オフ」から「オン」へ変更し、キャッシュデータが更新された場合に、「オン」から「オフ」へ変更する。
【０１３５】
また、制御部３３は、キャッシュデータの更新期間をキャッシュデータ毎に変更することができる。例えば、制御部３３は、アプリケーションサーバ１０からの送信要求の頻度などに応じて更新期間を変更することができる。
【０１３６】
また、制御部３３は、キャッシュデータの更新期間をキャッシュサーバ３０の負荷に応じて変更することもできる。例えば、制御部３３は、キャッシュサーバ３０の負荷が低い場合には、更新期間を短くし、キャッシュサーバ３０の負荷が高い場合には、更新期間を長くする。
【０１３７】
また、制御部３３は、オリジナルサーバ２０に蓄積する情報の変動割合に応じて更新期間を変更することもできる。例えば、オリジナルサーバ２０が情報の変動割合を検出し、この変動割合に応じた更新期間をキャッシュサーバ３０へ通知する。そして、制御部３３は、オリジナルサーバ２０から通知された更新期間をキャッシュデータに設定する。なお、制御部３３は、オリジナルサーバ２０から情報の変動割合を通知させ、この変動割合に応じて更新期間を決定するようにしてもよい。
【０１３８】
また、制御部３３は、更新期間を経過した未更新のキャッシュデータを送信する場合、その旨の情報をアプリケーションサーバ１０へ通知するようにしてもよい。この場合、アプリケーションサーバ１０は、端末装置４０へ送信するウェブページに再取得を行わせるための情報を付加する。これにより、端末装置４０から自動的に更新済みのキャッシュデータを受信できるようにする。このとき、制御部３３は、次の更新期間経過時と重ならないようにアクセスさせることで、より効率よくキャッシュデータの送信を行うことができる。
【０１３９】
なお、上述においては、更新フラグがオフである場合にアプリケーションサーバ１０からの送信要求があった場合、更新データに基づいて更新されたキャッシュデータ又は更新データをアプリケーションサーバ１０へ送信するようにしたが、これに限定されない。例えば、更新フラグがオフである場合にアプリケーションサーバ１０からの送信要求があった場合、制御部３３は、更新データをオリジナルサーバへアクセスして更新データを取得しつつも、未更新のキャッシュデータをアプリケーションサーバ１０へ送信するようにしてもよい。このようにすることで、アプリケーションサーバ１０は迅速にキャッシュサーバを取得することができる一方で、キャッシュデータの更新も行うことができる。
【０１４０】
以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【符号の説明】
【０１４１】
Ｓ  ブログサービスシステム
１，２０  オリジナルサーバ
２，３０  キャッシュサーバ
３（３1〜３n），４０（４０1〜４０n）  端末装置
１０  アプリケーションサーバ
３１  キャッシュサーバの通信Ｉ／Ｆ
３２  キャッシュデータベース（記憶手段）
３３  キャッシュサーバの制御部
３３ａ  更新手段
３３ｂ  受付手段
３３ｃ  判定手段
３３ｄ  取得手段
３３ｅ  交信手段
３３ｆ  削除手段
３３ｇ  送信手段
【図１】
0005143917.tif 000002
【図２】
0005143917.tif 000003
【図３】
0005143917.tif 000004
【図４】
0005143917.tif 000005
【図５】
0005143917.tif 000006
【図６】
0005143917.tif 000007
【図７】
0005143917.tif 000008
【図８】
0005143917.tif 000009
【図９】
0005143917.tif 000010