(57)【要約】【課題】Ｗｅｂページ画面表示の応答性を向上させる。【解決手段】コンテンツ提供部１２は、クライアント２０から、第１画面３２ａへのアクセス要求と利用者の識別情報を受信する。コンテンツ提供部１２は、アクセス傾向情報３１に基づいて、第１画面３２ａに関する利用者のアクセス傾向を抽出し、第２ページ３３ａ，３３ｂ，３３ｃがアクセスされる可能性を評価する。コンテンツ提供部１２は、第２ページ３３ａ，３３ｂ，３３ｃの評価に基づいて、コンテンツを取得するキャッシュ優先順を設定し、第１画面３２ａのコンテンツと、キャッシュ優先順をクライアント２０に送信する。クライアント２０は、キャッシュ優先順に従って第２ページ３３ａ，３３ｂ，３３ｃのコンテンツを取得し、キャッシュメモリ２２に格納する。【選択図】図１
2017068715.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
第１ページへのアクセス要求と、アクセス要求を行った利用者の識別情報をクライアントから受信し、
利用者ごとのアクセス傾向を示すアクセス傾向情報から前記識別情報に基づいて抽出した前記第１ページの利用者のアクセス傾向に基づき、前記クライアントが前記第１ページのコンテンツにリンクが設定されている複数の第２ページのコンテンツを先読みしてキャッシュに格納する際のキャッシュ優先順を設定し、
前記第１ページのコンテンツと前記キャッシュ優先順を前記クライアントに送信する、
処理を実行させるコンテンツ提供プログラム。
【請求項２】
前記第２ページへのリンクが設定されている前記第１ページのコンテンツごとに、前記第１ページの利用者によって前記コンテンツが選択されて選択第２ページへのアクセス要求を受信したアクセス数を集計し、前記コンテンツごとのアクセス数に基づいて前記アクセス傾向情報を生成する、
請求項１記載のコンテンツ提供プログラム。
【請求項３】
前記アクセス傾向情報の生成では、前記コンテンツの属性に応じたコンテンツ種別によって前記コンテンツを分類し、前記コンテンツ種別ごとに前記アクセス数を集計する、
請求項２記載のコンテンツ提供プログラム。
【請求項４】
前記アクセス傾向情報の生成では、前記コンテンツを利用する業務の内容に応じた業務種別によって前記コンテンツを分類し、前記業務種別ごとに前記アクセス数を集計する、
請求項２記載のコンテンツ提供プログラム。
【請求項５】
前記アクセス傾向情報の生成では、前記コンテンツを含む前記第１ページから、前記コンテンツのリンク先の前記第２ページに遷移する操作動線ごとに前記アクセス数を集計する、
請求項２記載のコンテンツ提供プログラム。
【請求項６】
前記第２ページに含まれるコンテンツがアクセスされる可能性を前記アクセス傾向情報に基づいて評価し、当該第２ページに含まれるコンテンツの評価結果に基づいて当該第２ページがアクセスされる可能性を評価し、前記複数の第２ページそれぞれの評価結果に基づいて、前記複数の第２ページのキャッシュ優先順を設定する、
請求項２乃至５記載のコンテンツ提供プログラム。
【請求項７】
コンピュータが、
第１ページへのアクセス要求と、アクセス要求を行った利用者の識別情報をクライアントから受信し、
利用者ごとのアクセス傾向を示すアクセス傾向情報から前記識別情報に基づいて抽出した前記第１ページの利用者のアクセス傾向に基づき、前記クライアントが前記第１ページのコンテンツにリンクが設定されている複数の第２ページのコンテンツを先読みしてキャッシュに格納する際のキャッシュ優先順を設定し、
前記第１ページのコンテンツと前記キャッシュ優先順を前記クライアントに送信する、
コンテンツ提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ提供プログラム及びコンテンツ提供方法に関する。
【背景技術】
【０００２】
近年、Ｗｅｂサーバに各種情報を蓄積しておき、Ｗｅｂブラウザを備えたクライアントで蓄積した情報を引き出して画面に表示する技術が普及している。Ｗｅｂサーバが蓄積する情報の基本的な単位であるＷｅｂページは、一部に画像や音声、動画、他の文書へのハイパーリンクなどを埋め込むことができるＨＴＭＬ（Hyper Text Markup Language）などによって記述されている。クライアントは、取得したＨＴＭＬ文書を解析して画面表示に必要なコンテンツを順次収集し、表示画面を作成して画面に表示する。また、Ｗｅｂサーバには、Ｗｅｂページを提供する際に、動的なウェブページ生成技術（例えばＪａｖａサーブレット（登録商標）やＣＧＩ（Common Gateway Interface）など）を用いて、利用者に適した情報を提供する処理を行うものもある。
【０００３】
ところで、クライアントは、利用者がＷｅｂページを指定してから画面表示に必要なコンテンツの収集を開始するため、画面が表示されるまでに時間がかかる場合があった。そこで、Ｗｅｂページのコンテンツを取得した際に、このＷｅｂページのリンク先のＷｅｂページもしくはコンテンツ（画像や音声、動画、他の文書）を検出してそのコンテンツを先読みし、クライアントにキャッシュデータとして格納しておく方法が提案されている。Ｗｅｂサーバの動的なウェブページ生成技術によりクライアントは、リンク先のＷｅｂページもしくはコンテンツに、例えば、過去の履歴などに基づいてアクセス頻度に応じた優先度を設定し、優先度が高いコンテンツをクライアントで優先的に先読みさせるようにする。利用者が選択したリンク先のＷｅｂページのコンテンツがキャッシュデータにあれば、要求時点からコンテンツ取得を開始する場合と比べて画面表示に良好な応答を得ることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２１９３１３号公報
【特許文献２】特開２０００−５７０７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、単に、アクセス頻度に応じた優先順でコンテンツの先読みを行うと、利用者がアクセス頻度の低いＷｅｂページなど優先順が低いＷｅｂページを選択した場合、キャッシュデータに該当するコンテンツがない場合が発生する。この場合には、キャッシュデータを利用することができないため、画面表示の応答を速くすることはできない。
【０００６】
利用者が次に遷移するＷｅｂページは、利用者がＷｅｂページを利用する目的などに応じて変わるものである。例えば、Ｗｅｂページを用いて業務を行う場合など、業務の内容や所望する処理に応じて次に遷移するＷｅｂページ画面が異なることがある。一例を挙げると、店舗の業務において、在庫管理業務と、売上集計業務とでは、参照したい情報が異なるため、トップ画面は共通であっても次に遷移する画面が異なる可能性がある。また、複数の処理を行う場合など、どのような順番でＷｅｂページ画面を開くかは、利用者の嗜好によるところが大きい。単にアクセス頻度に応じてコンテンツの先読みを行うページの優先順を決めた場合には、利用者の利用目的や利用者の嗜好に合わないことも多く、画面表示に良好な応答性を得ることが難しい。
【０００７】
一側面では、本発明は、Ｗｅｂページ画面表示の応答性を向上させるコンテンツ提供プログラム及びコンテンツ提供方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
１つの態様では、コンピュータに以下の処理を実行させるコンテンツ提供プログラムが提供される。コンピュータは、第１ページへのアクセス要求と、アクセス要求を行った利用者の識別情報をクライアントから受信する。利用者ごとのアクセス傾向を示すアクセス傾向情報から識別情報に基づいて抽出した第１ページの利用者のアクセス傾向に基づき、クライアントが第１ページのコンテンツにリンクが設定されている複数の第２ページのコンテンツを先読みしてキャッシュに格納する際のキャッシュ優先順を設定する。第１ページのコンテンツと、キャッシュ優先順をクライアントに送信する。
【０００９】
また、１つの態様では、コンピュータが実行するコンテンツ提供方法が提供される。
【発明の効果】
【００１０】
一態様によれば、Ｗｅｂ画面表示の応答性を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態のサーバの構成例を示す図である。
【図２】第２の実施形態のコンテンツ提供システムの構成を示す図である。
【図３】第２の実施形態のサーバのハードウェア構成を示す図である。
【図４】第２の実施形態のコンテンツ提供システムの機能例を示すブロック図である。
【図５】Ｗｅｂページの関係の一例を示す図である。
【図６】ページ定義表の一例を示す図である。
【図７】操作動線表の一例を示す図である。
【図８】アクセス傾向表の一例を示す図である。
【図９】コンテンツ提供システムにおける画面表示処理の手順を示す図である。
【図１０】画面のリンク関係を示す図である。
【図１１】Ｂ画面とリンク先の画面との関係を示す図である。
【図１２】リンク先画面のページ定義表を示す図である。
【図１３】キャッシュ優先順の設定の手順を示すフローチャートである。
【図１４】アクセス傾向表更新の手順を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について図面を参照して説明する。
［第１の実施形態］
図１は、第１の実施形態のサーバの構成例を示す図である。
【００１３】
第１の実施形態のサーバ１０は、Ｗｅｂページを記述したＨＴＭＬ文書やＷｅｂページ上のコンテンツなどを提供するコンピュータである。クライアント２０は、Ｗｅｂブラウザを備え、利用者の指示に応じてＷｅｂページのＨＴＭＬ文書やコンテンツをサーバ１０から取得し、画面に表示するコンピュータである。サーバ１０とクライアント２０は、ネットワークを介して接続する。
【００１４】
サーバ１０は、記憶部１１及びコンテンツ提供部１２を有する。記憶部１１は、例えば、ＲＡＭ（Random Access Memory）などの揮発性の記憶装置、または、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性の記憶装置である。コンテンツ提供部１２は、例えば、ＣＰＵ（Central Processing Unit）などのプロセッサである。ただし、コンテンツ提供部１２は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの特定用途の電子回路を含んでもよい。プロセッサは、ＲＡＭなどのメモリに記憶されたプログラムを実行する。プログラムには、コンテンツ提供プログラムが含まれる。複数のプロセッサの集合（マルチプロセッサ）を「プロセッサ」と呼ぶこともある。クライアント２０は、表示部２１と、キャッシュメモリ２２とプロセッサを有し、利用者の操作に応じて、表示部２１にＷｅｂページ画面を表示する。クライアント２０の構成は、サーバ１０と同様である。キャッシュメモリ２２は、例えば、クライアント２０のＲＡＭの領域に形成される。
【００１５】
記憶部１１は、アクセス傾向情報３１と、第１ページ３２と、第２ページ３３ａ，３３ｂ，３３ｃと、を記憶する。また、第１ページ３２及び第２ページ３３ａ，３３ｂ，３３ｃのコンテンツを記憶しておくこともできる。
【００１６】
アクセス傾向情報３１は、利用者ごとのアクセス傾向を示す。アクセス傾向は、例えば、利用者別に、コンテンツごと、あるいは、コンテンツをコンテンツの処理内容や、コンテンツが利用される利用分野などに応じて分類したコンテンツ種別ごとに設定される。図１の例では、アクセス傾向情報３１は、利用者「Ａ」がコンテンツ種別Ｃ１，Ｃ２，Ｃ３にアクセスする可能性は、コンテンツ種別Ｃ２＞Ｃ３＞Ｃ１の順であるというアクセス傾向を示している。同様に、利用者「Ｂ」がコンテンツ種別Ｃ１，Ｃ２，Ｃ３にアクセスする可能性は、コンテンツ種別Ｃ１＞Ｃ２＞Ｃ３の順であるというアクセス傾向を示す。なお、アクセス傾向は、例えば、クライアント２００から受信するアクセス要求を解析して検出する。
【００１７】
第１ページ３２は、ＨＴＭＬなどによって記述されるＷｅｂページ文書である。図１の例では、第１ページ３２は、コンテンツａ１，ａ２，ａ３を含むことが定義されている。第２ページ３３ａ，３３ｂ，３３ｃは、それぞれがＨＴＭＬなどによって記述されるＷｅｂページ文書である。第１ページ３２のコンテンツａ１，ａ２，ａ３には第２ページ３３ａ，３３ｂ，３３ｃへのリンクが設定されている。以下において、クライアント２０の表示部２１に表示されるＷｅｂページを第１ページ、第１ページにリンクが設定されているリンク先のページを第２ページと呼ぶ。
【００１８】
コンテンツ提供部１２は、クライアント２０から第１ページへのアクセス要求と、第１ページを指定した利用者の識別情報を取得し、要求された第１ページのコンテンツをクライアント２０に送信する。コンテンツ提供部１２は、例えば、第１ページ３２に基づいてコンテンツａ１，ａ２，ａ３を収集し、第１ページ３２にコンテンツａ１，ａ２，ａ３を埋め込んだ形式で、コンテンツをクライアント２０に送信する。また、コンテンツ提供部１２は、利用者の識別情報に基づいてアクセス傾向情報３１から当該利用者のアクセス傾向を抽出する。コンテンツ提供部１２は、抽出したアクセス傾向に基づいて複数の第２ページ３３ａ，３３ｂ，３３ｃのコンテンツを読み出して、クライアント２０がキャッシュデータとして格納するキャッシュ優先順を設定した情報をクライアント２０に送信する。また、クライアント２０から第２ページへのアクセス要求を受信したときは、記憶部１１より第２ページのコンテンツを読み出し、クライアント２０へ送信する。
【００１９】
クライアント２０は、利用者の指示に応じて、利用者が要求したＷｅｂページへのアクセス要求と、利用者の識別情報とをサーバ１０に送信する。利用者の識別情報は、例えば、セッション確立時に１回送信されればよい。クライアント２０は、サーバ１０から第１ページ３２のコンテンツと、第１ページ３２にリンクが設定される複数の第２ページ３３ａ，３３ｂ，３３ｃのキャッシュ優先順を受信する。クライアント２０は、取得した第１ページ３２の第１画面３２ａを表示部２１に表示する。また、クライアント２０は、キャッシュ優先順に基づいて、第２ページ３３ａ，３３ｂ，３３ｃのコンテンツを先読みし、キャッシュデータ２２ａ，２２ｂ，２２ｃとしてキャッシュメモリ２２に格納する。クライアント２０は、利用者による第２ページへのアクセス要求を受け付けたときは、第２ページ内に記述されたコンテンツについて、当該コンテンツのキャッシュデータの存在有無を確認する。クライアント２０は、該当するコンテンツが存在（キャッシュヒット）した場合には、キャッシュメモリ２２からコンテンツを取得する。
【００２０】
キャッシュメモリ２２は、クライアント２０が先読みしたコンテンツを一時的に格納する記憶領域である。
このような構成のサーバ１０及びクライアント２０の動作について説明する。
【００２１】
クライアント２０は、利用者の指示に応じて、第１ページへのアクセス要求と、利用者の識別情報とをサーバ１０に送信する（Ｓ１）。
サーバ１０は、アクセス要求と利用者の識別情報を受信する。コンテンツ提供部１２は、第１ページ３２に基づいて、コンテンツを収集し、第１ページ３２に埋め込む。例えば、図１の例では、第１ページ３２には、コンテンツａ１，ａ２，ａ３が存在する場所（例えば、ＵＲＬ；Uniform Resource Locator）が記述されている。コンテンツ提供部１２では、第１ページ３２を書き換え、収集したコンテンツを指定位置に埋め込む。なお、コンテンツ提供部１２は、第１ページ３２のコンテンツを記憶部１１から読み出す。コンテンツがサーバ１０内にはなく、不図示の外部装置に存在するときは、外部装置から取得する。また、サーバ１０は、第１ページ３２を解析し、第１ページ３２にリンクが設定されている第２ページ３３ａ，３３ｂ，３３ｃを検出する。
【００２２】
図１の例では、コンテンツａ１にリンクが設定される第２ページ３３ａ、コンテンツａ２にリンクが設定される第２ページ３３ｂ及びコンテンツａ３にリンクが設定されるページ３３ｃを検出する。サーバ１０は、利用者の識別情報に基づいて、利用者のアクセス傾向をアクセス傾向情報３１から抽出する。図１の例では、利用者「Ａ」には、コンテンツ種別Ｃ２＞Ｃ３＞Ｃ１の順にアクセスする可能性が高いというアクセス傾向がある。コンテンツ提供部１２は、利用者のアクセス傾向に基づいて、利用者が第２ページ３３ａ，３３ｂ，３３ｃへアクセスする可能性を評価する。図１の例では、第２ページ３３ａはコンテンツＣ１、第２ページ３３ｂはコンテンツＣ２、第２ページ３３ｃはコンテンツＣ３をそれぞれ含む。コンテンツ提供部１２は、アクセス傾向情報３１に基づいて、利用者「Ａ」に関し、コンテンツＣ２を含む第２ページ３３ｂへアクセスする可能性が最も高く、順に、コンテンツＣ３を含む第２ページ３３ｃ、コンテンツＣ１を含む第２ページ３３ａとアクセスする可能性が低くなると評価する。サーバ１０は、評価結果に基づいて、第１ページ３２のリンク先である複数の第２ページ３３ａ，３３ｂ，３３ｃのコンテンツを取得するキャッシュ優先順を、第２ページ３３ｂ、第２ページ３３ｃ、第２ページ３３ａの順に設定する。サーバ１０は、第２ページ３３ｂ，３３ｃ，３３ａのキャッシュ優先順の順に、第２ページ３３ｂ，３３ｃ，３３ａのコンテンツを読み出す。先読み対象を最もキャッシュ優先順が高いもののみとした場合には、図１の例では、第２ページ３３ｂのコンテンツを先読み対象として取得する。コンテンツ提供部１２は、コンテンツを埋め込んだ第１ページ３２とともに、キャッシュ優先順をクライアント２０に送信する（Ｓ２）。なお、コンテンツ提供部１２は、第１ページ３２にコンテンツを先に送信し、キャッシュ優先順が決定された後、キャッシュ優先順を送信するとしてもよい。
【００２３】
クライアント２０は、サーバ１０からコンテンツが埋め込まれた第１ページ３２と、キャッシュ優先順とを受信する。そして、コンテンツが埋め込まれた第１ページ３２の内容を表示部２１に表示する。表示された画面を第１画面３２ａと呼ぶ。また、キャッシュ優先順に従って、第２ページ３３ａ，３３ｂ，３３ｃのコンテンツを取得し、キャッシュデータとしてキャッシュメモリ２２に格納する。なお、第２ページのコンテンツの取得は、例えば、サーバ１０にリクエストし、サーバ１０が収集したコンテンツをキャッシュデータとしてキャッシュメモリ２２に格納するとしてもよいし、自装置が収集するとしてもよい。
【００２４】
利用者が第１画面３２ａのコンテンツａ１，ａ２，ａ３のいずれかをクリックして選択したときは、クライアント２０は、選択されたコンテンツを特定し、このコンテンツにリンクが設定されるリンク先の選択第２ページを特定する。クライアント２０は、特定した選択第２ページへのアクセス要求をサーバ１０に送信する（Ｓ３）。例えば、利用者が第１画面３２ａからコンテンツａ２を選択したときは、クライアント２０はコンテンツａ２にリンクが設定される第２ページ３３ｂを選択第２ページとし、第２ページ３３ｂへのアクセス要求を送信する。
【００２５】
サーバ１０は、第２ページ３３ｂへのアクセス要求を受信する。コンテンツ提供部１２は、既にクライアント２０のキャッシュメモリ２２にキャッシュされたコンテンツＣ２が存在する場合は、記憶部１１より第２ページ３３ｂを抽出し、クライアント２０に送信する。ただし、クライアント２０のキャッシュメモリ２２にキャッシュされたコンテンツＣ２が存在しない場合は、記憶部１１より第２ページ３３ｂを抽出し、コンテンツを埋め込み、コンテンツを埋め込んだ第２ページ３３ｂをクライアントに送信する（Ｓ４）。なお、サーバ１０では、第２ページ２２ｂをクライアントに送信した後、第２ページ２２ｂを第１ページと見なしてリンク先のページのキャッシュ優先順を設定し、クライアント２０に送信する。
【００２６】
クライアント２０では、受信した第２ページ２２ｂに基づく画面を表示部２１に表示する。
このようにサーバ１０では、クライアント２０が表示する第１画面３２ａにリンクが張られている第２ページ３３ａ，３３ｂ，３３ｃのコンテンツの先読みを行う際のキャッシュ優先順をクライアント２０に送信することで、キャッシュメモリ２２に格納させる。よって、クライアント２０は、利用者が第１画面３２ａを操作した後、操作によって選択された第２ページのコンテンツを収集する場合と比べ、画面表示に要する時間を短縮することができる。また、サーバ１０は、利用者ごとに異なるアクセス傾向に応じて第２ページのコンテンツのキャッシュ優先順を設定するので、利用者が表示画面の次に表示する画面を選択したとき、コンテンツがクライアント２０のキャッシュメモリ２２に格納されている確率を高くすることができる。これにより、クライアント２０に対してキャッシュメモリ２２に格納したコンテンツを送信できる可能性を高くし、クライアント２０における画面表示の応答性を向上させることができる。
【００２７】
［第２の実施形態］
次に、第２の実施形態を説明する。
図２は、第２の実施形態のコンテンツ提供システムの構成を示す図である。コンテンツ提供システムは、コンテンツを提供するＷｅｂサーバ１００と、Ｗｅｂサーバから提供を受けたコンテンツを画面に表示するクライアント２００とが、ネットワーク３００を介して接続する。クライアント２００は、例えば、パーソナルコンピュータ（ＰＣ；Personal Computer）２０１、携帯端末２０２などである。第２の実施形態のコンテンツ提供システムでは、クライアント２００は、Ｗｅｂサーバ１００にアクセス要求を行って、Ｗｅｂサーバ１００から取得したＷｅｂデータのコンテンツに基づいて画面表示を行う。
【００２８】
図３は、第２の実施形態のサーバのハードウェア構成を示す図である。
Ｗｅｂサーバ１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＨＤＤ１０３、画像信号処理部１０４、入力信号処理部１０５、媒体リーダ１０６及び通信インタフェース１０７を有する。上記のユニットは、バス１０８に接続されている。
【００２９】
ＣＰＵ１０１は、プログラムの命令を実行する演算回路を含むプロセッサである。ＣＰＵ１０１は、ＨＤＤ１０３に記憶されたプログラムやデータの少なくとも一部をＲＡＭ１０２にロードし、プログラムを実行する。なお、ＣＰＵ１０１は複数のプロセッサコアを備えてもよく、Ｗｅｂサーバ１００は複数のプロセッサを備えてもよく、以下で説明する処理を複数のプロセッサまたはプロセッサコアを用いて並列に実行してもよい。
【００３０】
ＲＡＭ１０２は、ＣＰＵ１０１が実行するプログラムやＣＰＵ１０１が演算に用いるデータを一時的に記憶する揮発性の半導体メモリである。なお、Ｗｅｂサーバ１００は、ＲＡＭ以外の種類のメモリを備えてもよく、複数個のメモリを備えてもよい。
【００３１】
ＨＤＤ１０３は、ＯＳ（Operating System）やミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、及び、データを記憶する不揮発性の記憶装置である。プログラムには、分析プログラムが含まれる。なお、Ｗｅｂサーバ１００は、フラッシュメモリやＳＳＤ（Solid State Drive）などの他の種類の記憶装置を備えてもよく、複数の不揮発性の記憶装置を備えてもよい。
【００３２】
画像信号処理部１０４は、ＣＰＵ１０１からの命令に従って、Ｗｅｂサーバ１００に接続されたディスプレイ１１１に画像を出力する。ディスプレイ１１１としては、ＣＲＴ（Cathode Ray Tube）ディスプレイ、液晶ディスプレイ（ＬＣＤ：Liquid Crystal Display）、プラズマディスプレイ（ＰＤＰ：Plasma Display Panel）、有機ＥＬ（ＯＥＬ：Organic Electro-Luminescence）ディスプレイなどを用いることができる。
【００３３】
入力信号処理部１０５は、Ｗｅｂサーバ１００に接続された入力デバイス１１２から入力信号を取得し、ＣＰＵ１０１に出力する。入力デバイス１１２としては、マウスやタッチパネルやタッチパッドやトラックボールなどのポインティングデバイス、キーボード、リモートコントローラ、ボタンスイッチなどを用いることができる。また、Ｗｅｂサーバ１００に、複数の種類の入力デバイスが接続されていてもよい。
【００３４】
媒体リーダ１０６は、記録媒体１１３に記録されたプログラムやデータの読み取り装置である。記録媒体１１３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）、半導体メモリなどを使用できる。媒体リーダ１０６は、例えば、記録媒体１１３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００３５】
通信インタフェース１０７は、ネットワーク３００に接続され、ネットワーク３００を介して他のコンピュータと通信を行うことができる。通信インタフェース１０７は、スイッチなどの通信装置とケーブルで接続される有線通信インタフェースでもよいし、アクセスポイントと無線リンクで接続される無線通信インタフェースでもよい。
【００３６】
なお、Ｗｅｂサーバ１００は、媒体リーダ１０６を備えなくてもよい。また、ユーザが操作する端末装置からネットワーク３００経由でＷｅｂサーバ１００にアクセスできる場合、Ｗｅｂサーバ１００は、画像信号処理部１０４や入力信号処理部１０５を備えなくてもよい。また、ディスプレイ１１１や入力デバイス１１２が、Ｗｅｂサーバ１００の筐体と一体に形成されてもよい。Ｗｅｂサーバ１００は、第１の実施形態のサーバ１０に対応する。ＲＡＭ１０２またはＨＤＤ１０３は、第１の実施形態の記憶部１１に対応する。ＣＰＵ１０１は、第１の実施形態のコンテンツ提供部１２に対応する。ＲＡＭ１０２は、第１の実施形態のキャッシュメモリ２２に対応する。
【００３７】
図４は、第２の実施形態のコンテンツ提供システムの機能例を示すブロック図である。
Ｗｅｂサーバ１００は、記憶部１２０と、制御部１３０と、通信制御部１４０と、を有する。制御部１３０及び通信制御部１４０は、ＣＰＵ１０１が実行するプログラムモジュールとして実現できる。
【００３８】
記憶部１２０は、ページ定義表４１０、操作動線表４２０、アクセス傾向表４３０及びＷｅｂページ情報４４０を記憶する。ページ定義表４１０は、Ｗｅｂページごとに、Ｗｅｂページに含まれるコンテンツの分類を定義する。操作動線表４２０は、Ｗｅｂページに記述されるリンクに基づいて、選択可能なＷｅｂページ画面の遷移先を操作動線として示す。アクセス傾向表４３０は、利用者ごとのアクセス傾向を示す。Ｗｅｂページ情報４４０は、Ｗｅｂサーバ１００が管理するＷｅｂページを記述したＨＴＭＬ文書とコンテンツを含む。なお、第２実施形態では、ＷｅｂページはＨＴＭＬによって記述されているとする。
【００３９】
制御部１３０は、コンテンツ先読み部１３１、コンテンツ送信部１３２及びアクセス管理部１３３を有し、通信制御部１４０を介して入力するクライアント２００からのアクセス要求に応じてＷｅｂページに関する情報を提供する。
【００４０】
コンテンツ先読み部１３１は、クライアント２００からアクセス要求を受信したＷｅｂページを解析し、このＷｅｂページにリンクが張られているリンク先のＷｅｂページを検出する。コンテンツ先読み部１３１は、クライアント２００の利用者のアクセス傾向をアクセス傾向表４３０から取得し、取得したアクセス傾向に基づいてリンク先のＷｅｂページがアクセスされる可能性を評価し、評価に基づいてキャッシュ優先順を設定する。キャッシュ優先順は、クライアント２００におけるコンテンツ先読みの際に実行順に相当する。コンテンツ先読み部１３１は、設定したキャッシュ優先順をクライアント２００に送信する。なお、コンテンツ先読み部１３１は、クライアント２００からのリクエストに応じて、コンテンツの先読みを行うとしてもよい。この場合、コンテンツ先読み部１３１は、リクエストを受け付けたリンク先のＷｅｂページのコンテンツを先読みし、クライアント２００に送信する。コンテンツ先読み部１３１は、キャッシュ優先順の高いＷｅｂページから順にコンテンツを読み出し、クライアント２００に送信してキャッシュメモリ２４０に格納させる。コンテンツ先読み部１３１は、コンテンツがＷｅｂページ情報４４０にあるときはＷｅｂページ情報４４０から読み出し、コンテンツが他のサーバに保持されているときは、通信制御部１４０を介して他のサーバから対象のコンテンツを取得する。
【００４１】
コンテンツ送信部１３２は、クライアント２００からのアクセス要求を受信し、アクセス要求に応じて、コンテンツを埋め込んだＷｅｂページ、あるいはＷｅｂページのＨＴＭＬ文書とコンテンツをクライアント２００に送信する。
【００４２】
アクセス管理部１３３は、クライアント２００からのアクセス要求に基づいて、アクセス傾向表４３０を更新する。このようにアクセス要求ごとにアクセス傾向表４３０を更新することによってアクセス傾向表４３０を最新の状態にしておくことができる。
【００４３】
通信制御部１４０は、クライアント２００の通信制御部２１０とネットワーク３００を介して接続し、通信制御部２１０との間で情報交換を行う。
クライアント２００は、通信制御部２１０と、表示部２２０と、操作入力部２３０と、キャッシュメモリ２４０と、を有する。通信制御部２１０、表示部２２０及び操作入力部２３０は、ＣＰＵが実行するプログラムモジュールとして実現できる。
【００４４】
通信制御部２１０は、Ｗｅｂサーバ１００の通信制御部１４０とネットワーク３００を介して接続し、通信制御部１４０との間で情報交換を行う。通信制御部２１０は、Ｗｅｂサーバ１００から取得したキャッシュ優先順に従って、キャッシュ優先順の高いＷｅｂページから順にコンテンツを先読みし、キャッシュデータとしてキャッシュメモリ２４０に格納する。なお、コンテンツの先読みをＷｅｂサーバ１００のコンテンツ先読み部１３１が行う場合は、Ｗｅｂサーバ１００から受信したＷｅｂページのコンテンツをキャッシュデータとしてキャッシュメモリ２４０に格納する。
【００４５】
表示部２２０は、通信制御部２１０が取得したＷｅｂページのコンテンツと、キャッシュメモリ２４０に格納されるキャッシュデータに基づいて、Ｗｅｂページ画面を表示する。表示部２２０は、クライアント２００が備えるＷｅｂサーバ１００の画像信号処理部１０４及びディスプレイ１１１と同様の構成に接続し、ディスプレイ１１１に画面を表示する。
【００４６】
操作入力部２３０は、クライアント２００が備えるＷｅｂサーバ１００の入力デバイス１１２及び入力信号処理部１０５と同様の構成に接続し、通信制御部２１０を介して入力した利用者の指示をＷｅｂサーバ１００に送信する。
【００４７】
キャッシュメモリ２４０は、通信制御部２１０が先読みしたＷｅｂページのコンテンツを一時保存する。Ｗｅｂページのコンテンツ収集は、例えば、クライアント２００が通信制御部２１０を介してリクエストをＷｅｂサーバ１００に送信し、コンテンツ先読み部１３１に実行させるとしてもよい。コンテンツは、表示部２２０による画面表示の際に読み出すことができる。
【００４８】
以下、具体例を挙げてコンテンツ提供システムの動作を説明する。
図５は、Ｗｅｂページの関係の一例を示す図である。図５は、点線で囲まれているコンテンツから矢印の先のＷｅｂページ画面にリンクが張られていることを示している。
【００４９】
図５の例では、クライアント２００の表示部２２０には、最初にＡ画面２５１が表示される。このように表示部２２０に画面が表示されるＷｅｂページを第１ページとする。Ａ画面２５１は、コンテンツＡ１〜Ａ１１の表示領域を有し、少なくともコンテンツのいくつかに他の画面へのリンクが設定されている。このうち、コンテンツＡ６はＢ画面２５２にリンクが張られている。このように、第１ページのコンテンツのリンク先のＷｅｂページを第２ページとする。
【００５０】
クライアント２００は、利用者がＡ画面２５１のコンテンツＡ６の表示領域をクリックすると、サーバ１００に対してリンク先の第２ページ（Ｂ画面２５２）へのアクセス要求を送信する。このとき、クライアント２００のキャッシュメモリ２４０には、先読みしたコンテンツ（コンテンツＢ１〜Ｂ６）が格納されている。サーバ１００は、Ｗｅｂページ情報４４０に格納する第２ページ（Ｂ画面２５２）をクライアント２００に送信する。なお、このとき、Ｂ画面２５２のコンテンツＢ１〜Ｂ６は、先読みされ、既にクライアント２００のキャッシュメモリ２４０にキャッシュされているため、送信しない。よって、クライアント２００は、アクセス要求を行ってからコンテンツが収集される場合と比較し、Ｂ画面２５２の表示に要する時間を短縮することができる。サーバ１００では、第２ページ（Ｂ画面２５２）を送信した後、第２ページ（Ｂ画面２５２）を第１ページとする。そして、第１ページ（Ｂ画面２５２）のコンテンツにリンクが設定されている第２ページについて、コンテンツ先読みを行う際のキャッシュ優先順を設定する。
【００５１】
クライアント２００の表示部２２０に表示される第１ページ（Ｂ画面２５２）は、コンテンツＢ１〜Ｂ６の表示領域を有し、コンテンツＢ４は第２ページ（Ｃ画面２５３）にリンクが張られている。クライアント２００は、サーバ１００から取得したキャッシュ優先順に従って、コンテンツＢ４を含む他のページへのリンクが設定されている第２ページのコンテンツを取得し、キャッシュメモリ２４０に格納する先読み処理を行う。なお、サーバ１００に先読みを依頼し、サーバ１００から取得したコンテンツをキャッシュメモリ２４０にキャッシュするとしてもよい。いずれの手法であっても、最も優先度の高いコンテンツ、図５の例では、キャッシュ優先順の高いコンテンツＢ４にリンクが張られている第２ページ（Ｃ画面２５３）のコンテンツから順にキャッシュメモリ２４０に格納される。
【００５２】
利用者によってコンテンツＢ４がクリックされたことを検出したクライアント２００は、リンク先の第２ページ（Ｃ画面２５３）へのアクセス要求をサーバ１００に送信して第２ページ（Ｃ画面２５３）を取得し、表示部２２０に表示する。このとき、コンテンツは、キャッシュメモリ２４０にキャッシュされているキャッシュデータを用いる。サーバ１００では、第２ページ（Ｃ画面２５３）を送信した後、第２ページ（Ｃ画面２５３）を第１ページとする。そして、第１ページ（Ｃ画面２５３）のコンテンツにリンクが設定されている第２ページのキャッシュ優先順を設定する。
【００５３】
このように、サーバ１００では、クライアント２００に送信したＷｅｂページを第１ページとし、第１ページのコンテンツにリンクが設定されている複数の第２ページについて、コンテンツを先読みするキャッシュ優先順を設定する。クライアント２００またはサーバ１００がキャッシュ優先順に基づいてコンテンツを先読みし、先読みした第２ページのコンテンツをキャッシュメモリ２４０に格納する。こうして、クライアント２００でアクセス発生時には迅速にＷｅｂページのコンテンツを表示できるようにしておく。サーバ１００は、第２ページのアクセス要求を受信したときは、第２ページを第１ページとし、同様の手順を繰り返す。
【００５４】
複数の第２ページのコンテンツをページごとに順番に先読みする場合には、アクセスされる可能性の高い順に先読みすることが好ましい。サーバ１００におけるコンテンツの先読みは、コンテンツ先読み部１３１が、利用者のアクセス傾向に応じてキャッシュ優先順を設定して行う。コンテンツ先読み部１３１は、記憶部１２０に格納するページ定義表４１０、操作動線表４２０及びアクセス傾向表４３０に基づいて、キャッシュ優先順を設定する。
【００５５】
図６は、ページ定義表の一例を示す図である。
ページ定義表４１０は、Ｗｅｂページに含まれるコンテンツの属性を定義した表の一例である。ページ定義表４１０では、ページの内容を表示した画面ごとに、画面に含まれるコンテンツと、そのコンテンツのコンテンツ種別と、業務種別とが定義されている。コンテンツ種別は、利用者がＷｅｂページを選択する際の判断要素となり得る特徴によってコンテンツを分類するものであり、Ｗｅｂサーバ１００の利用形態に応じて適宜設定される。例えば、コンテンツをそのデータ形式に応じて、テキスト、画像、音声などの種別を設定することができる。また、コンテンツの内容に応じて、スケジュール、仕様書、報告書などの種別を設定することができる。業務種別は、コンテンツが利用される業務を分類した情報である。
【００５６】
図６の例では、画面「Ａ」のコンテンツ「Ａ１」は、コンテンツ種別が「ＣＮ１」、業務種別が「ＪＢ３」である。また、例えば、画面「Ｃ」のコンテンツ「Ｃ１」、「Ｃ２」、「Ｃ３」、「Ｃ４」は、コンテンツ種別は「ＣＮ１」と共通であるが、業務種別は、それぞれ「ＪＢ３」、「ＪＢ２」、「ＪＢ２」、「ＪＢ１」と異なる。
【００５７】
なお、コンテンツ種別及び業務種別は、一例であり、コンテンツを分類する基準は対象のＷｅｂページの特徴に応じて適宜設定することができる。
図７は、操作動線表の一例を示す図である。
【００５８】
操作動線表４２０は、Ｗｅｂページに設定されているリンクに基づいて、利用者の操作によって画面が遷移する動線を示す。利用者が複数のリンク先から１つを選択する操作は、利用者の嗜好によるところが大きく、利用者がＷｅｂページを選択する際の判断要素となり得る特徴の１つである。図７の例では、「Ｂ画面」を起点として、「Ｂ画面」から「Ｃ画面」、「Ｚ画面」、「Ｗ画面」への動線と、その先の動線が定義されている。操作動線表４２０には、Ｗｅｂページの内容を表示する画面の操作動線が定義されている。
【００５９】
図８は、アクセス傾向表の一例を示す図である。
アクセス傾向表４３０は、クライアント２００から取得したアクセス要求に基づいて、利用者ごとに、コンテンツに対するアクセス傾向を示す。図８の例では、アクセス傾向表４３０は、利用者ごとに、コンテンツをコンテンツ種類別４３１、業務別４３２、操作動線別４３３に分類し、分類ごとにアクセス数を集計したアクセス傾向を示す。
【００６０】
コンテンツ種類別４３１のアクセス傾向は、コンテンツ種別ごとのアクセス数を集計した情報である。コンテンツ種別は、ページ定義表４１０に示すコンテンツごとに定義された種別である。コンテンツ種別のアクセス数は、アクセス管理部１３３が、クライアント２００からアクセス要求を取得するごとに、アクセス要求のあったコンテンツのコンテンツ種別を特定し、カウントアップした情報である。例えば、利用者Ａが画面Ａ２５１のコンテンツＡ１をクリックして別のＷｅｂページにアクセスしたとする。アクセス管理部１３３は、アクセス要求に基づいて、利用者がコンテンツＡ１をクリックしたことを検出する。例えば、ページ定義表４１０に基づいて、コンテンツＡ１のコンテンツ種別を特定し、利用者「Ａ」のコンテンツ種別「ＣＮ１」に対応するアクセス数をインクリメントする。
【００６１】
業務別４３２のアクセス傾向は、コンテンツに対応する業務種別ごとのアクセス数を集計した情報である。業務種別は、ページ定義表４１０に示すコンテンツごとに定義された情報である。コンテンツ種類別４３１と同様に、アクセス管理部１３３は、利用者ごとに、当該利用者がアクセスしたコンテンツの業務種別に対応するアクセス数をインクリメントする。
【００６２】
操作動線別４３３のアクセス傾向は、Ｗｅｂページを遷移させる操作動線ごとのアクセス数を集計した情報である。操作動線は、操作動線表４２０に定義された情報である。アクセス管理部１３３は、利用者ごとに、利用者の操作によってＷｅｂページが他のＷｅｂページに遷移するときに、当該利用者の操作動線に対応するアクセス数をインクリメントする。
【００６３】
なお、上記では、アクセス傾向をアクセス数で検出するとしたが、例えば、所定時間当たりのアクセス数で算出したアクセス頻度を検出に用いることもできる。
次に、Ｗｅｂサーバ１００及びクライアント２００による画面表示処理について説明する。図９は、コンテンツ提供システムにおける画面表示処理の手順を示す図である。なお、以下では、Ｗｅｂサーバ１００がコンテンツの先読みを行う場合の手順を示す。
【００６４】
［ステップＳ１１］クライアント２００は、利用者のＡ画面（第１ページ）のリクエストを受け付け、Ｗｅｂサーバ１００に対し、Ａ画面（第１ページ）のリクエストと、利用者の識別情報を送信する。利用者の識別情報は、別途送信するとしてもよい。
【００６５】
［ステップＳ１２］Ｗｅｂサーバ１００は、クライアント２００からのＡ画面（第１ページ）へのリクエストを受信し、記憶部１２０に格納するＷｅｂページ情報４４０から該当するコンテンツを読み出す。
【００６６】
［ステップＳ１３］Ｗｅｂサーバ１００は、Ａ画面（第１ページ）を解析し、コンテンツにリンクが設定されるリンク先画面（第２ページ）を検出する。Ｗｅｂサーバ１００は、リンク先画面（第２ページ）が複数あるときは、それぞれのリンク先画面（第２ページ）に対し、アクセス傾向表４３０に基づいて、識別情報で識別される当該利用者が、それぞれのリンク先画面（第２ページ）にアクセスする可能性を評価する。Ｗｅｂサーバ１００は、評価結果に基づいて、評価結果の高い順にキャッシュ優先順を設定する。キャッシュ優先順の設定の詳細は、図１０〜１３を用いて後で説明する。
【００６７】
［ステップＳ１４］Ｗｅｂサーバ１００は、読み出したＡ画面（第１ページ）のコンテンツとキャッシュ優先順をクライアント２００に送信する。Ａ画面（第１ページ）のコンテンツとキャッシュ優先順をクライアント２００に送信する。Ａ画面（第１ページ）のコンテンツは、例えば、第１ページに埋め込んで送信することができる。Ｗｅｂサーバ１００は、待ち状態になる。
【００６８】
［ステップＳ１５］クライアント２００は、Ｗｅｂサーバ１００が送信したＡ画面（第１ページ）を受信し、Ａ画面を表示する。
［ステップＳ１６］クライアント２００は、バックグラウンドでキャッシュ優先順に基づいて、Ａ画面（第１ページ）のコンテンツにリンクが設定されるリンク先画面（第２ページ）のコンテンツの先読みをＷｅｂサーバ１００に依頼する。
【００６９】
［ステップＳ１７］クライアント２００からの依頼を受け付けると、Ｗｅｂサーバ１００は、キャッシュ優先順に基づいて、Ａ画面（第１ページ）のコンテンツにリンクが設定されるリンク先画面（第２ページ）のコンテンツを先読みし、クライアント１００に送信する。次の依頼を受け付けるまで、待ち状態になる。
【００７０】
［ステップＳ１８］クライアント２００は、Ｗｅｂサーバ１００から受信したコンテンツをキャッシュメモリ２４０に格納し、処理をステップＳ１６に進める。
クライアント２００及びＷｅｂサーバ１００は、クライアント２００が次の画面リクエストを受け付けるまでの間、ステップＳ１６〜Ｓ１８の処理を繰り返し、キャッシュ優先順に従って、コンテンツの先読みを行う。これにより、キャッシュ優先順の順にコンテンツがキャッシュメモリ２４０に格納される。以下、次の画面リクエストを受け付けたときの処理を説明する。
【００７１】
利用者は、Ａ画面（第１ページ）のコンテンツから、Ｂ画面（第２ページ）へのリンクが設定されるコンテンツを選択する。
［ステップＳ１９］クライアント２００は、利用者が選択したコンテンツにリンクが設定されるＢ画面（第２ページ）のリクエストをＷｅｂサーバ１００に送信し、Ｗｅｂサーバ１００からの応答待ち状態になる。
【００７２】
［ステップＳ２０］Ｗｅｂサーバ１００は、クライアント２００から受信したＢ画面（第２ページ）のリクエストに基づいて、アクセス傾向表４３０を更新する。アクセス傾向表４３０の更新は、図１４を用いて後で説明する。
【００７３】
［ステップＳ２１］Ｗｅｂサーバ１００は、Ｂ画面を第１ページとして解析し、コンテンツにリングが設定されるリンク先画面（第２ページ）を検出する。Ｗｅｂサーバ１００は、リンク先の画面（第２ページ）が複数あるときは、それぞれの画面（第２ページ）について、各画面（第２ページ）にアクセスする可能性を評価する。アクセスする可能性は、アクセス傾向表４３０に基づいて、識別情報で識別される当該利用者のアクセス傾向を解析して評価する。Ｗｅｂサーバ１００は、評価結果に基づいて、評価結果の高い順にキャッシュ優先順を設定する。
【００７４】
［ステップＳ２２］Ｗｅｂサーバ１００は、Ｂ画面（第１ページ）と、キャッシュ優先順をクライアント２００に送信する。
［ステップＳ２３］クライアント２００は、Ｗｅｂサーバ１００からＢ画面とキャッシュ優先順を受信する。クライアント２００は、Ｂ画面（第１ページ）の記述に基づき、キャッシュメモリ２４０に格納するキャッシュデータよりＢ画面（第１ページ）のコンテンツを取得する。
【００７５】
［ステップＳ２４］クライアント２００は、表示部２２０にＢ画面（第１ページ）を表示し、処理を終了する。
以上の処理手順により、クライアント２００に表示される画面（第１ページ）からリンク先の次の画面（第２ページ）が選択される前に、クライアント２００において第２ページのコンテンツの先読みが行われる。クライアント２００による第２ページのコンテンツの先読みは、利用者ごとに検出したアクセス傾向表４３０に基づくキャッシュ優先順に基づいて行われる。これにより、クライアント２００が第２ページのリクエストを受け付けたとき、該当する第２ページがキャッシュメモリ２４０に存在しない確率を下げ、クライアント２００における画面表示の応答性を向上することができる。
【００７６】
なお、他の画面へのリンクが設定されるＢ画面のコンテンツが利用者によって選択されたときは、ステップＳ１９の「Ｂ画面のリクエスト」を選択された画面のリクエストに置き換え、ステップＳ１６からの処理を繰り返す。
【００７７】
次に、キャッシュ優先順の設定について説明する。
図１０は、画面のリンク関係を示す図である。
Ａ画面２５１のコンテンツには、Ｂ画面２５２、Ｘ画面２５５及びＹ画面２５６へのリンクが設定されている。また、Ｂ画面２５２のコンテンツには、Ｃ画面２５３、Ｚ画面２５７及びＷ画面２５８へのリンクが設定されている。また、Ｃ画面２５３のコンテンツには、Ｄ画面２５４へのリンクが設定されている。
【００７８】
以下では、Ｂ画面を第１ページとして説明する。図１１は、Ｂ画面とリンク先の画面との関係を示す図である。
Ｂ画面２５２は、第１ページであり、クライアント２００の表示部２２０に表示されている。Ｂ画面２５２は、コンテンツＢ１〜Ｂ６を有し、コンテンツＢ４にはＣ画面２５３へのリンク、コンテンツＢ５にはＺ画面２５７へのリンク、コンテンツＢ６にはＷ画面２５８へのリンクが設定されている。クライアント２００は、コンテンツＢ４がクリックされると、Ｗｅｂサーバ１００に対してＣ画面２５３をリクエストする。また、コンテンツＢ５のクリックでＺ画面２５７をリクエストし、コンテンツＢ６のクリックでＷ画面２５８をリクエストする。Ｃ画面２５３、Ｚ画面２５７及びＷ画面２５８は、第２ページに相当する。
【００７９】
ここで、リンク先のＣ画面２５３は、コンテンツＣ１，Ｃ２，Ｃ３，Ｃ４，Ｃ５，Ｃ６を有する。Ｚ画面２５７は、コンテンツＺ１，Ｚ２，Ｚ３，Ｚ４，Ｚ５を有する。Ｗ画面２５８は、コンテンツＷ１，Ｗ２，Ｗ３，Ｗ４を有する。
【００８０】
Ｗｅｂサーバ１００では、リンク先のＣ画面２５３、Ｚ画面２５７、Ｗ画面２５８の各画面が有するコンテンツに対するアクセス傾向に基づいて、Ｃ画面２５３、Ｚ画面２５７、Ｗ画面２５８のキャッシュ優先順を設定する。
【００８１】
図１２は、リンク先画面のページ定義表を示す図である。
ページ定義表４１１は、Ｃ画面２５３、Ｚ画面２５７、Ｗ画面２５８それぞれについて、画面に含まれるコンテンツと、このコンテンツのコンテンツ種別及び業務種別が定義されている。
【００８２】
コンテンツ先読み部１３１は、ページ定義表４１１と、アクセス傾向表４３０と、利用者の識別情報とに基づいて、Ｃ画面２５３、Ｚ画面２５７、Ｗ画面２５８がアクセスされる可能性をポイント値として算出する。なお、ポイント値は、アクセス傾向表４３０に登録されているコンテンツ種類別、業務別、操作動線別のアクセス傾向のうち、少なくとも１つの分類のアクセス傾向に基づいて算出する。ポイント値の算出方法は、適宜設定される。以下では、一例として、アクセスされる可能性のポイント値算出にコンテンツ種類別と業務別のアクセス傾向を用い、画面ごとに、コンテンツ種類別のアクセス数と業務別のアクセス数の合計を、コンテンツ当たりの平均値として算出した値をポイント値とする。画面に含まれるコンテンツのコンテンツ種類別のアクセス数の合計をＳCN、業務別のアクセス数の合計をＳJBとしたとき、画面のポイント値Ｐは次の式で表すことができる。
【００８３】
Ｐ＝（ＳCN＋ＳJB）／（画面のコンテンツ数）                    ・・・（１）
具体例を挙げて説明する。なお、利用者は「Ａ」であるとする。
コンテンツ先読み部１３１は、Ｃ画面２５３のポイント値を算出する。Ｃ画面２５３は、コンテンツＣ１，Ｃ２，Ｃ３，Ｃ４，Ｃ５，Ｃ６を有する。コンテンツ種類別の合計アクセス数ＳCNを算出する。ページ定義表４１１から、コンテンツＣ１，Ｃ２，Ｃ３，Ｃ４のコンテンツ種別はＣＮ１、コンテンツＣ５のコンテンツ種別はＣＮ２、コンテンツＣ６のコンテンツ種別はＣＮ３であることが抽出される。アクセス傾向表４３０から、利用者Ａについて、コンテンツ種別ＣＮ１のアクセス数は１０、コンテンツ種別ＣＮ２のアクセス数は４、コンテンツ種別ＣＮ３のアクセス数は１であることが抽出される。すなわち、Ｃ画面２５３のコンテンツ種類別の合計アクセス数ＳCNは次のようになる。
【００８４】
ＳCN＝
１０（Ｃ１）＋１０（Ｃ２）＋１０（Ｃ３）＋１０（Ｃ４）＋４（Ｃ５）＋１（Ｃ６）＝４５
業務別の合計アクセス数ＳJBも同様に算出する。
【００８５】
ＳJB＝
１（Ｃ１）＋５（Ｃ２）＋５（Ｃ３）＋１２（Ｃ４）＋５（Ｃ５）＋１（Ｃ６）＝２９
Ｃ画面２５３のポイント値は、式（１）から、Ｐ＝（４５＋２９）／６＝１３．０と算出することができる。
【００８６】
コンテンツ先読み部１３１は、Ｚ画面２５７及びＷ画面２５８についてもポイント値を算出する。Ｚ画面２５７の場合は、次のようになる。
ＳCN＝１０（Ｚ１）＋１０（Ｚ２）＋１（Ｚ３）＋１（Ｚ４）＋１（Ｚ５）＝２３
ＳJB＝１（Ｚ１）＋１（Ｚ２）＋１（Ｚ３）＋５（Ｚ４）＋１２（Ｚ５）＝２０
よって、Ｚ画面２５７のポイント値は、Ｐ＝（２３＋２０）／５＝８．６と算出できる。
【００８７】
Ｗ画面２５８の場合は、次のようになる。
ＳCN＝１０（Ｗ１）＋４（Ｗ２）＋１（Ｗ３）＋１（Ｗ４）＝１６
ＳJB＝５（Ｗ１）＋５（Ｗ２）＋１（Ｗ３）＋１（Ｗ４）＝１２
よって、Ｗ画面２５８のポイント値は、Ｐ＝（１６＋１２）／４＝７．０と算出できる。
【００８８】
このように、Ｃ画面２５３のポイント値１３．０と、Ｚ画面２５７のポイント値８．６と、Ｗ画面２５８のポイント値７．０が算出できる。
コンテンツ先読み部１３１は、算出した画面のポイント値の高い順に、キャッシュ優先順を設定する。この場合は、キャッシュ優先順は、Ｃ画面２５３、Ｚ画面２５７、Ｗ画面２５８の順に設定される。
【００８９】
なお、上記のポイント値算出は一例である。例えば、式（１）では、コンテンツ種類別と業務別の合計アクセス値を同等としたが、重要度に応じて重み付けを行うとしてもよい。また、例えば、各画面が備えるアクセス数が最も高いコンテンツ種別のコンテンツの数と、アクセス数が最も高い業務種別のコンテンツの数と、を用いてポイント値を算出するとしてもよい。この場合、Ｃ画面２５３は、アクセス数が最も高いコンテンツ種別ＣＮ１のコンテンツを４個有し、アクセス数が最も高い業務種別ＪＢ１のコンテンツを１個有する。Ｚ画面２５７は、コンテンツ種別ＣＮ１のコンテンツを２個、業務種別ＪＢ１のコンテンツを１個有する。Ｗ画面２５８は、コンテンツ種別ＣＮ１のコンテンツを１個有し、業務種別ＪＢ１のコンテンツはない。総個数をポイント値としてキャッシュ優先順を決めると、Ｃ画面２５３、Ｚ画面２５７、Ｗ画面２５８の順になる。
【００９０】
図１３は、キャッシュ優先順の設定の手順を示すフローチャートである。
［ステップＳ５１］コンテンツ先読み部１３１は、クライアント２００が表示している第１画面を記述する第１ページを解析し、第１画面のコンテンツのリンクが設定されているコンテンツの移動先ページを抽出する。
【００９１】
［ステップＳ５２］コンテンツ先読み部１３１は、ページにアクセスされる可能性の評価が行われていない未評価の移動先ページがあるか否かを判定する。コンテンツ先読み部１３１は、未評価の移動先ページがあるときは、処理をステップＳ５３に進め、未評価の移動先ページがないときは処理をステップＳ５６に進める。
【００９２】
［ステップＳ５３］コンテンツ先読み部１３１は、未評価の移動先ページを１つ選択する。
［ステップＳ５４］コンテンツ先読み部１３１は、選択した移動先ページに基づいて、移動先ページに含まれるコンテンツを抽出する。例えば、移動先ページに基づいて、ページ定義表４１０，４１１を検索し、該当ページのコンテンツを抽出することができる。また、移動先ページを解析してコンテンツを抽出することができる。
【００９３】
［ステップＳ５５］コンテンツ先読み部１３１は、利用者の識別情報と、ページ定義表４１０，４１１と、アクセス傾向表４３０と、に基づき、抽出したコンテンツへ利用者がアクセスしたコンテンツ種類別アクセス数と、業務別アクセス数を集計する。
【００９４】
［ステップＳ５６］コンテンツ先読み部１３１は、式（１）を用いて、移動先ページのポイント値（＝集計値／コンテンツ数）を算出する。コンテンツ先読み部１３１は、算出したポイント値を移動先ページに関連付けて記憶部１２０に一時保存し、処理をステップＳ５２に進める。
【００９５】
［ステップＳ５７］コンテンツ先読み部１３１は、移動先ページに関連付けて記憶部１２０に一時保存した移動先ページのポイント値を比較し、ポイント値の順にキャッシュ優先順を設定する。例えば、ポイント値が高い方がアクセスされる可能性が高いときは、ポイント値の最も高いものの優先順を最上位にし、ポイント値の順に移動先ページのキャッシュ優先順を設定する。
【００９６】
以上の処理手順が実行され、コンテンツ先読み部１３１は、利用者ごとのアクセス傾向を示すアクセス傾向表４３０に基づいて、移動先ページがアクセスされる可能性を評価する。そして、コンテンツ先読み部１３１は、アクセスされる可能性が高い順に移動先ページのキャッシュ優先順を設定する。
【００９７】
キャッシュ優先順を設定する判断基準となるアクセス傾向表４３０は、アクセス管理部１３３が、クライアント２００からアクセス要求を受信するごとに更新する。
図１４は、アクセス傾向表更新の手順を示すフローチャートである。
【００９８】
［ステップＳ７１］アクセス管理部１３３は、クライアント２００から受信したアクセス要求に基づき、利用者が選択したコンテンツを検出する。利用者がクライアント２００の表示部２２０に表示されている第１画面のコンテンツから１つのコンテンツを選択することにより、このコンテンツにリンクが張られているページへのアクセス要求が発生する。アクセス管理部１３３は、このリンク元のコンテンツを検出する。
【００９９】
［ステップＳ７２］アクセス管理部１３３は、ページ定義表４１０，４１１を用いて検出したコンテンツのコンテンツ種別を特定する。そして、クライアント２００からアクセス要求とともに受信した利用者の識別情報に基づいて、アクセス傾向表４３０の当該利用者のコンテンツ種類別アクセス数をインクリメントする。
【０１００】
［ステップＳ７３］アクセス管理部１３３は、ページ定義表４１０，４１１を用いて検出したコンテンツの業務種別を特定する。そして、クライアント２００からアクセス要求とともに受信した利用者の識別情報に基づいて、アクセス傾向表４３０の当該利用者の業務別アクセス数をインクリメントする。
【０１０１】
［ステップＳ７４］アクセス管理部１３３は、アクセス管理部１３３は、クライアント２００が表示する第１画面（第１ページ）と、アクセス要求先の第２ページから操作動線を検出する。そして、クライアント２００からアクセス要求とともに受信した利用者の識別情報に基づいて、アクセス傾向表４３０の当該利用者の操作動線別アクセス数をインクリメントする。
【０１０２】
以上の処理手順が実行されることにより、アクセス管理部１３３は、クライアント２００からアクセス要求を受信するごとに、アクセス傾向表４３０を更新する。このように、アクセス傾向表４３０は、適宜更新されるので、例えば、利用者の嗜好が変化した場合であっても、これに対応し、利用者のアクセス傾向をリアルタイムで把握することができる。このアクセス傾向表４３０を用いてキャッシュ優先順を設定することにより、Ｗｅｂサーバ１００は、クライアント２００からアクセス要求されたときに、要求されたページのコンテンツがクライアント２００のキャッシュメモリ２４０に存在する確率を上げ、画面表示の応答性を向上させることができる。
【０１０３】
なお、上記では、アクセス要求を受信するごとにアクセス傾向表４３０を更新するとしたが、利用者の嗜好が急激に変化することは少ないことを考慮し、所定時間ごとに更新処理を行うとしてもよい。アクセス管理部１３３は、所定時間が経過するまでの期間は、受信したアクセス要求を記憶部１２０に格納しておく。所定時間に到達したときに記憶部１２０から読み出して図１４に示すアクセス傾向表更新の手順を実行する。
【０１０４】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、Ｗｅｂページを提供するサーバが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ／ＲＷ（Rewritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【０１０５】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１０６】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１０７】
また、上記の処理機能の少なくとも一部を、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ、ＰＬＤ（Programmable Logic Device）などの電子回路で実現することもできる。
【０１０８】
なお、本発明は上記の実施形態そのままに限定されるものではなく、実施段階でのその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素を適宜組み合わせてもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。このような、発明の趣旨を逸脱しない範囲内において種々の変形や応用が可能である。
【符号の説明】
【０１０９】
１０  サーバ
１１  記憶部
１２  コンテンツ提供部
２０  クライアント
２１  表示部
２２  キャッシュメモリ
３１  アクセス傾向情報
３２  第１ページ
３２ａ  第１画面
３３ａ，３３ｂ，３３ｃ  第２ページ
【図１】
2017068715.tif 000003
【図２】
2017068715.tif 000004
【図３】
2017068715.tif 000005
【図４】
2017068715.tif 000006
【図５】
2017068715.tif 000007
【図６】
2017068715.tif 000008
【図７】
2017068715.tif 000009
【図８】
2017068715.tif 000010
【図９】
2017068715.tif 000011
【図１０】
2017068715.tif 000012
【図１１】
2017068715.tif 000013
【図１２】
2017068715.tif 000014
【図１３】
2017068715.tif 000015
【図１４】
2017068715.tif 000016