(57)【要約】【課題】先読みリストの自動作成を実現し、開発者の作業負荷を軽減しつつ、ウェブアプリケーション実行処理の高速化・効率化を図る。【解決手段】サーバ10は、送信要求されたファイル名に対するユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部13と、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部14と、あるウェブアプリケーションの先読みリストの要求に対し、当該ウェブアプリケーションの先読みリストを要求元に送信する先読みリスト送信部16と、を備え、先読みリスト生成部14は、対象ユーザからの先読みリストの要求に対し、対象ユーザ以外の他のユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成する。【選択図】図１
2010238114.tif 000002
【特許請求の範囲】
【請求項１】
ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバと、ネットワークを介して前記サーバと接続可能とされた１つ以上の通信端末と、を含んで構成される通信システムであって、
前記通信端末は、
キャッシュメモリと、
ウェブアプリケーションの起動時および実行中の所定タイミングで、前記ウェブアプリケーション実行のために先読みすべきファイル名を記載した先読みリストを前記サーバに要求する先読みリスト要求部と、
前記ウェブアプリケーションの先読みリストを前記サーバから受信し保存する先読みリスト受信保存部と、
前記先読みリストに記載されたファイルの送信要求を前記サーバに送信する先読みファイル要求部と、
前記先読みファイル要求部による送信要求に対しサーバから送信されたファイルを受信し前記キャッシュメモリに格納する先読みファイル受信格納部と、
前記ウェブアプリケーションの実行中に前記ウェブアプリケーションから要求されたファイルが前記キャッシュメモリに保存されているか否かを判定する判定部と、
前記要求されたファイルが保存されている場合、前記要求されたファイルを前記キャッシュメモリから読み出して前記ウェブアプリケーションに渡し、前記要求されたファイルが保存されていない場合、前記要求されたファイルの送信要求を前記サーバに送信し、前記要求されたファイルを前記サーバから受信して前記キャッシュメモリに格納するとともに前記ウェブアプリケーションに渡すキャッシュ制御部と、
を備え、
前記サーバは、
前記通信端末からファイルの送信要求を受信する受信部と、
送信要求された前記ファイルを要求元の通信端末に送信する送信部と、
受信された複数の通信端末からの送信要求に基づいて、送信要求されたファイル名に対するユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部と、
保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部と、
生成されたウェブアプリケーション毎の先読みリストを保存する保存部と、
あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、当該ウェブアプリケーションについての先読みリストを前記保存部から読み出し、前記通信端末に送信する先読みリスト送信部と、
を備える
ことを特徴とする通信システム。
【請求項２】
ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバと、ネットワークを介して前記サーバと接続可能とされた１つ以上の通信端末と、を含んで構成される通信システムであって、
前記通信端末は、
キャッシュメモリと、
ウェブアプリケーションの起動時および実行中の所定タイミングで、前記ウェブアプリケーション実行のために先読みすべきファイル名を記載した先読みリストを前記サーバに要求する先読みリスト要求部と、
前記ウェブアプリケーションの先読みリストを前記サーバから受信し保存する先読みリスト受信保存部と、
前記先読みリストに記載されたファイルの送信要求をユーザＩＤとともに前記サーバに送信する先読みファイル要求部と、
前記先読みファイル要求部による送信要求に対しサーバから送信されたファイルを受信し前記キャッシュメモリに格納する先読みファイル受信格納部と、
前記ウェブアプリケーションの実行中に前記ウェブアプリケーションから要求されたファイルが前記キャッシュメモリに保存されているか否かを判定する判定部と、
前記要求されたファイルが保存されている場合、前記要求されたファイルを前記キャッシュメモリから読み出して前記ウェブアプリケーションに渡し、前記要求されたファイルが保存されていない場合、前記要求されたファイルの送信要求をユーザＩＤとともに前記サーバに送信し、前記要求されたファイルを前記サーバから受信して前記キャッシュメモリに格納するとともに前記ウェブアプリケーションに渡すキャッシュ制御部と、
を備え、
前記サーバは、
前記通信端末からファイルの送信要求およびユーザＩＤを受信する受信部と、
送信要求された前記ファイルを要求元の通信端末に送信する送信部と、
受信された複数の通信端末からの送信要求に基づいて、ユーザＩＤと送信要求されたファイル名とを対応付けたユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部と、
保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部と、
生成されたウェブアプリケーション毎の先読みリストを保存する保存部と、
あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、当該ウェブアプリケーションについての先読みリストを前記保存部から読み出し、前記通信端末に送信する先読みリスト送信部と、
を備える
ことを特徴とする通信システム。
【請求項３】
前記先読みリスト生成部は、
ある対象ユーザからの前記先読みリストの要求に対し、
当該対象ユーザ以外の他のユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、前記先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成する、
ことを特徴とする請求項１又は２に記載の通信システム。
【請求項４】
前記先読みリスト生成部は、
ある対象ユーザからの前記先読みリストの要求に対し、
当該対象ユーザ以外の他のユーザのうち、前記ユーザアクセス情報より得られるアクセス傾向が、所定基準に照らし前記対象ユーザのアクセス傾向に類似した１人以上の他のユーザを特定し、当該類似した１人以上の他のユーザについてのファイル毎の送信要求頻度に基づいて、前記先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成する、
ことを特徴とする請求項１又は２に記載の通信システム。
【請求項５】
前記先読みリスト生成部は、
ある対象ユーザからの前記先読みリストの要求に対し、
当該対象ユーザの過去のユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、前記先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成する、
ことを特徴とする請求項１又は２に記載の通信システム。
【請求項６】
ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバであって、
通信端末からファイルの送信要求を受信する受信部と、
送信要求された前記ファイルを要求元の通信端末に送信する送信部と、
受信された複数の通信端末からの送信要求に基づいて、送信要求されたファイル名に対するユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部と、
保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部と、
生成されたウェブアプリケーション毎の先読みリストを保存する保存部と、
あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、当該ウェブアプリケーションについての先読みリストを前記保存部から読み出し、前記通信端末に送信する先読みリスト送信部と、
を備えるサーバ。
【請求項７】
ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバであって、
通信端末からファイルの送信要求およびユーザＩＤを受信する受信部と、
送信要求された前記ファイルを要求元の通信端末に送信する送信部と、
受信された複数の通信端末からの送信要求に基づいて、ユーザＩＤと送信要求されたファイル名とを対応付けたユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部と、
保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部と、
生成されたウェブアプリケーション毎の先読みリストを保存する保存部と、
あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、当該ウェブアプリケーションについての先読みリストを前記保存部から読み出し、前記通信端末に送信する先読みリスト送信部と、
を備えるサーバ。
【請求項８】
前記先読みリスト生成部は、
ある対象ユーザからの前記先読みリストの要求に対し、
当該対象ユーザ以外の他のユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、前記先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成する、
ことを特徴とする請求項６又は７に記載のサーバ。
【請求項９】
前記先読みリスト生成部は、
ある対象ユーザからの前記先読みリストの要求に対し、
当該対象ユーザ以外の他のユーザのうち、前記ユーザアクセス情報より得られるアクセス傾向が、所定基準に照らし前記対象ユーザのアクセス傾向に類似した１人以上の他のユーザを特定し、当該類似した１人以上の他のユーザについてのファイル毎の送信要求頻度に基づいて、前記先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成する、
ことを特徴とする請求項６又は７に記載のサーバ。
【請求項１０】
前記先読みリスト生成部は、
ある対象ユーザからの前記先読みリストの要求に対し、
当該対象ユーザの過去のユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、前記先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成する、
ことを特徴とする請求項６又は７に記載のサーバ。
【請求項１１】
ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバ、により実行される通信制御方法であって、
通信端末からファイルの送信要求を受信する受信ステップと、
送信要求された前記ファイルを要求元の通信端末に送信する送信ステップと、
受信された複数の通信端末からの送信要求に基づいて、送信要求されたファイル名に対するユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存ステップと、
保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成ステップと、
生成されたウェブアプリケーション毎の先読みリストを保存する保存ステップと、
あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、前記保存ステップで保存された前記ウェブアプリケーションについての先読みリストを読み出し、前記通信端末に送信する先読みリスト送信ステップと、
を備える通信制御方法。
【請求項１２】
ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバ、により実行される通信制御方法であって、
通信端末からファイルの送信要求およびユーザＩＤを受信する受信ステップと、
送信要求された前記ファイルを要求元の通信端末に送信する送信ステップと、
受信された複数の通信端末からの送信要求に基づいて、ユーザＩＤと送信要求されたファイル名とを対応付けたユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存ステップと、
保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成ステップと、
生成されたウェブアプリケーション毎の先読みリストを保存する保存ステップと、
あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、前記保存ステップで保存された前記ウェブアプリケーションについての先読みリストを読み出し、前記通信端末に送信する先読みリスト送信ステップと、
を備える通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信端末およびサーバを含んで構成される通信システム、当該通信システムにて実行される通信制御方法、並びに、当該通信システムを構成するサーバに関する。
【背景技術】
【０００２】
通信端末にてアプリケーションを実行中に、当該アプリケーションが、ＵＲＬ（Uniform  Resource  Locator）で一意に識別されるファイルをネットワーク経由でサーバに要求し、当該ファイルをサーバからダウンロードする処理が一般的に広く行われている。なお、上記のように、実行中に必要になったファイルをネットワーク経由でサーバに要求するアプリケーションは、「ウェブアプリケーション」と一般に呼ばれている。ところが、ファイルをネットワーク経由でサーバから通信端末へダウンロードするには、かなりの処理時間がかかるため、処理の高速化・効率化を図るべく、ウェブアプリケーション実行中に使用することが見込まれるファイルを予めサーバから通信端末へダウンロードしてキャッシュメモリに記憶しておく処理（いわゆる先読みキャッシュ処理）が広く知られている。
【０００３】
先読みキャッシュ処理では、対象とするファイルの識別情報を記載した先読みリストをウェブアプリケーション毎に予め用意しておき、ウェブアプリケーションの起動時などに当該ウェブアプリケーションの先読みリストに基づいて対象のファイルをサーバから通信端末へダウンロードしキャッシュメモリに格納しておくのが一般的であった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２５０８０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来は、各ウェブアプリケーションの開発者が、当該ウェブアプリケーションの実行中に頻繁に使用されると見込まれるファイルを予測して、先読みリストを作成しなければならなかった。そのため、先読みリスト作成に要する開発者の作業負荷が大きかった。
【０００６】
また、先読みリストは、開発者による予測に基づいて作成されるため、ウェブアプリケーション実行中に実際に頻繁に使用されるファイルと先読みリストに記載されたファイルとが一致せず、両者が乖離しているケースも想定され、かかる場合、当該ウェブアプリケーションの実行処理は高速化・効率化が困難となっていた。
【０００７】
本発明は、上記課題を解決するために成されたものであり、先読みリストの自動作成を実現し、ウェブアプリケーション開発者の作業負荷を軽減しつつ、ウェブアプリケーションの実行処理の高速化・効率化を図ることを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明に係る通信システムは、ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバと、ネットワークを介して前記サーバと接続可能とされた１つ以上の通信端末と、を含んで構成される通信システムであって、前記通信端末は、キャッシュメモリと、ウェブアプリケーションの起動時および実行中の所定タイミングで、前記ウェブアプリケーション実行のために先読みすべきファイル名を記載した先読みリストを前記サーバに要求する先読みリスト要求部と、前記ウェブアプリケーションの先読みリストを前記サーバから受信し保存する先読みリスト受信保存部と、前記先読みリストに記載されたファイルの送信要求を前記サーバに送信する先読みファイル要求部と、前記先読みファイル要求部による送信要求に対しサーバから送信されたファイルを受信し前記キャッシュメモリに格納する先読みファイル受信格納部と、前記ウェブアプリケーションの実行中に前記ウェブアプリケーションから要求されたファイルが前記キャッシュメモリに保存されているか否かを判定する判定部と、前記要求されたファイルが保存されている場合、前記要求されたファイルを前記キャッシュメモリから読み出して前記ウェブアプリケーションに渡し、前記要求されたファイルが保存されていない場合、前記要求されたファイルの送信要求を前記サーバに送信し、前記要求されたファイルを前記サーバから受信して前記キャッシュメモリに格納するとともに前記ウェブアプリケーションに渡すキャッシュ制御部と、を備え、前記サーバは、前記通信端末からファイルの送信要求を受信する受信部と、送信要求された前記ファイルを要求元の通信端末に送信する送信部と、受信された複数の通信端末からの送信要求に基づいて、送信要求されたファイル名に対するユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部と、保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部と、生成されたウェブアプリケーション毎の先読みリストを保存する保存部と、あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、当該ウェブアプリケーションについての先読みリストを前記保存部から読み出し、前記通信端末に送信する先読みリスト送信部と、を備えることを特徴とする。
【０００９】
また、別の態様として、通信端末のユーザを特定するためのユーザＩＤを用いる以下の通信システムも、上記の目的を達成するために有効である。即ち、本発明に係る通信システムは、ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバと、ネットワークを介して前記サーバと接続可能とされた１つ以上の通信端末と、を含んで構成される通信システムであって、前記通信端末は、キャッシュメモリと、ウェブアプリケーションの起動時および実行中の所定タイミングで、前記ウェブアプリケーション実行のために先読みすべきファイル名を記載した先読みリストを前記サーバに要求する先読みリスト要求部と、前記ウェブアプリケーションの先読みリストを前記サーバから受信し保存する先読みリスト受信保存部と、前記先読みリストに記載されたファイルの送信要求をユーザＩＤとともに前記サーバに送信する先読みファイル要求部と、前記先読みファイル要求部による送信要求に対しサーバから送信されたファイルを受信し前記キャッシュメモリに格納する先読みファイル受信格納部と、前記ウェブアプリケーションの実行中に前記ウェブアプリケーションから要求されたファイルが前記キャッシュメモリに保存されているか否かを判定する判定部と、前記要求されたファイルが保存されている場合、前記要求されたファイルを前記キャッシュメモリから読み出して前記ウェブアプリケーションに渡し、前記要求されたファイルが保存されていない場合、前記要求されたファイルの送信要求をユーザＩＤとともに前記サーバに送信し、前記要求されたファイルを前記サーバから受信して前記キャッシュメモリに格納するとともに前記ウェブアプリケーションに渡すキャッシュ制御部と、を備え、前記サーバは、前記通信端末からファイルの送信要求およびユーザＩＤを受信する受信部と、送信要求された前記ファイルを要求元の通信端末に送信する送信部と、受信された複数の通信端末からの送信要求に基づいて、ユーザＩＤと送信要求されたファイル名とを対応付けたユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部と、保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部と、生成されたウェブアプリケーション毎の先読みリストを保存する保存部と、あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、当該ウェブアプリケーションについての先読みリストを前記保存部から読み出し、前記通信端末に送信する先読みリスト送信部と、を備えることを特徴とする。
【００１０】
上記の通信システムでは、サーバは、先読みリスト生成部を備え、この先読みリスト生成部により、ユーザアクセス情報に基づいてウェブアプリケーション毎の先読みリストを自動的に生成する。先読みリストの生成手法については、以下のように、さまざまなバリエーションがある。
【００１１】
例えば、先読みリスト生成部は、ある対象ユーザからの先読みリストの要求に対し、当該対象ユーザ以外の他のユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成することができる。
【００１２】
また、先読みリスト生成部は、ある対象ユーザからの先読みリストの要求に対し、当該対象ユーザ以外の他のユーザのうち、ユーザアクセス情報より得られるアクセス傾向が、所定基準に照らし対象ユーザのアクセス傾向に類似した１人以上の他のユーザを特定し、当該類似した１人以上の他のユーザについてのファイル毎の送信要求頻度に基づいて、先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成することができる。
【００１３】
さらに、先読みリスト生成部は、ある対象ユーザからの先読みリストの要求に対し、当該対象ユーザの過去のユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成することができる。
【００１４】
ところで、上記のような通信システムに係る発明は、サーバに係る発明として捉えることもでき、以下のように記述することができる。
【００１５】
本発明に係るサーバは、ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバであって、通信端末からファイルの送信要求を受信する受信部と、送信要求された前記ファイルを要求元の通信端末に送信する送信部と、受信された複数の通信端末からの送信要求に基づいて、送信要求されたファイル名に対するユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部と、保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部と、生成されたウェブアプリケーション毎の先読みリストを保存する保存部と、あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、当該ウェブアプリケーションについての先読みリストを前記保存部から読み出し、前記通信端末に送信する先読みリスト送信部と、を備えることを特徴とする。
【００１６】
また、別の態様として、通信端末のユーザを特定するためのユーザＩＤを用いる以下のサーバも、上記の目的を達成するために有効である。即ち、本発明に係るサーバは、ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバであって、通信端末からファイルの送信要求およびユーザＩＤを受信する受信部と、送信要求された前記ファイルを要求元の通信端末に送信する送信部と、受信された複数の通信端末からの送信要求に基づいて、ユーザＩＤと送信要求されたファイル名とを対応付けたユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存部と、保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成部と、生成されたウェブアプリケーション毎の先読みリストを保存する保存部と、あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、当該ウェブアプリケーションについての先読みリストを前記保存部から読み出し、前記通信端末に送信する先読みリスト送信部と、を備えることを特徴とする。
【００１７】
上述したサーバが備えた先読みリスト生成部による先読みリストの生成手法については、以下のように、さまざまなバリエーションがある。
【００１８】
例えば、先読みリスト生成部は、ある対象ユーザからの先読みリストの要求に対し、当該対象ユーザ以外の他のユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成することができる。
【００１９】
また、先読みリスト生成部は、ある対象ユーザからの先読みリストの要求に対し、当該対象ユーザ以外の他のユーザのうち、ユーザアクセス情報より得られるアクセス傾向が、所定基準に照らし対象ユーザのアクセス傾向に類似した１人以上の他のユーザを特定し、当該類似した１人以上の他のユーザについてのファイル毎の送信要求頻度に基づいて、先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成することができる。
【００２０】
さらに、先読みリスト生成部は、ある対象ユーザからの先読みリストの要求に対し、当該対象ユーザの過去のユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、先読みリストに記載すべきファイルを選択し、選択されたファイル名を記載した先読みリストを生成することができる。
【００２１】
ところで、上記のようなサーバに係る発明は、サーバにより実行される通信制御方法に係る発明として捉えることもでき、以下のように記述することができる。
【００２２】
本発明に係る通信制御方法は、ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバ、により実行される通信制御方法であって、通信端末からファイルの送信要求を受信する受信ステップと、送信要求された前記ファイルを要求元の通信端末に送信する送信ステップと、受信された複数の通信端末からの送信要求に基づいて、送信要求されたファイル名に対するユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存ステップと、保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成ステップと、生成されたウェブアプリケーション毎の先読みリストを保存する保存ステップと、あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、前記保存ステップで保存された前記ウェブアプリケーションについての先読みリストを読み出し、前記通信端末に送信する先読みリスト送信ステップと、を備えることを特徴とする。
【００２３】
また、別の態様として、通信端末のユーザを特定するためのユーザＩＤを用いる以下の通信制御方法も、上記の目的を達成するために有効である。即ち、本発明に係る通信制御方法は、ウェブアプリケーションの実行時に使用される複数のファイルを保存し管理しているサーバ、により実行される通信制御方法であって、通信端末からファイルの送信要求およびユーザＩＤを受信する受信ステップと、送信要求された前記ファイルを要求元の通信端末に送信する送信ステップと、受信された複数の通信端末からの送信要求に基づいて、ユーザＩＤと送信要求されたファイル名とを対応付けたユーザアクセス情報をウェブアプリケーション毎に生成し保存するアクセス情報生成保存ステップと、保存された前記ユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する先読みリスト生成ステップと、生成されたウェブアプリケーション毎の先読みリストを保存する保存ステップと、あるウェブアプリケーションについての先読みリストを前記通信端末から要求された場合、前記保存ステップで保存された前記ウェブアプリケーションについての先読みリストを読み出し、前記通信端末に送信する先読みリスト送信ステップと、を備えることを特徴とする。
【００２４】
以上説明した本発明に係る通信システム、サーバ、通信制御方法によれば、サーバにおいて、ユーザアクセス情報に基づいてウェブアプリケーション毎の先読みリストを自動的に生成することができ、これにより、ウェブアプリケーション開発者の作業負荷を軽減しつつ、ウェブアプリケーションの実行処理の高速化・効率化を図ることができる。
【発明の効果】
【００２５】
本発明によれば、先読みリストの自動作成を実現し、ウェブアプリケーション開発者の作業負荷を軽減しつつ、ウェブアプリケーションの実行処理の高速化・効率化を図ることができる。
【図面の簡単な説明】
【００２６】
【図１】第１〜第３実施形態のシステム構成図である。
【図２】サーバおよび通信端末のハードウェア構成図である。
【図３】第１実施形態の通信システムで実行される処理を示す流れ図である。
【図４】図３の処理を説明するための図である。
【図５】第２実施形態の通信システムで実行される処理を示す流れ図である。
【図６】図５の処理を説明するための図である。
【図７】第３実施形態の通信システムで実行される処理の前半を示す流れ図である。
【図８】第３実施形態の通信システムで実行される処理の後半を示す流れ図である。
【図９】図７と図８の処理を説明するための図である。
【発明を実施するための形態】
【００２７】
以下、図面を参照して、本発明に係る実施形態１〜３を順に説明する。
［実施形態１］
実施形態１では、対象ユーザ以外の他のユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを生成する形態を説明する。なお、以下では、通信端末のユーザを特定するためのユーザＩＤを用いるケースを例示する（実施形態２、３も同様）。
【００２８】
図１に示すように、実施形態１に係る通信システム１は、莫大な量のファイルを記憶・管理するサーバ１０と、通信端末３０と、を含んで構成され、これらはネットワーク２０を介して相互に接続可能とされている。
【００２９】
まず、通信端末３０の構成について説明する。通信端末３０は、キャッシュメモリ３１、先読みリスト要求部３２、先読みリスト受信保存部３３、先読みファイル要求部３４、先読みファイル受信格納部３５、判定部３６、およびキャッシュ制御部３７を備える。
【００３０】
このうち、先読みリスト要求部３２は、ウェブアプリケーションの起動時および実行中の所定タイミングで、ウェブアプリケーション実行のために先読みすべきファイル名を記載した先読みリストをサーバ１０に要求する。先読みリスト受信保存部３３は、ウェブアプリケーションの先読みリストをサーバ１０から受信し保存する。先読みファイル要求部３４は、先読みリストに記載されたファイルの送信要求をユーザＩＤとともにサーバ１０に送信する。
【００３１】
先読みファイル受信格納部３５は、先読みファイル要求部３４による送信要求に対しサーバ１０から送信されたファイルを受信しキャッシュメモリ３１に格納する。判定部３６は、ウェブアプリケーションの実行中に当該ウェブアプリケーションから要求されたファイルがキャッシュメモリ３１に保存されているか否かを判定する。
【００３２】
キャッシュ制御部３７は、実行中のウェブアプリケーションから要求されたファイルを当該ウェブアプリケーションに渡す。より具体的には、判定部３６による判定で要求されたファイルがキャッシュメモリ３１に保存されている場合、キャッシュ制御部３７は、要求されたファイルをキャッシュメモリ３１から読み出してウェブアプリケーションに渡す。一方、判定部３６による判定で要求されたファイルがキャッシュメモリ３１に保存されていない場合、キャッシュ制御部３７は、要求されたファイルの送信要求をユーザＩＤとともにサーバ１０に送信し、当該要求されたファイルをサーバ１０から受信してキャッシュメモリ３１に格納するとともにウェブアプリケーションに渡す。
【００３３】
なお、図２（ｂ）には、通信端末３０のハードウェア構成の一例を示す。通信端末３０は、ハードウェア構成として、ＣＰＵ３０Ａと、ＲＡＭ３０Ｂと、ＲＯＭ３０Ｃと、入力デバイスであるキーボードやマウス等の入力装置３０Ｄと、外部装置との通信を行う通信装置３０Ｅと、キャッシュメモリ３０Ｆと、出力デバイスであるディスプレイやプリンタ等の出力装置３０Ｇとを備え、特別なハードウェア構成を必要とするものではない。前述した通信端末３０の各機能ブロックの機能は、ＲＡＭ３０Ｂ等に所定のプログラムを読み込ませ、ＣＰＵ３０Ａの制御の下で入力装置３０Ｄ、通信装置３０Ｅ、出力装置３０Ｇを動作させ、キャッシュメモリ３０Ｆ等に対しデータの読み書きを行うことで実行される。このような通信端末３０のハードウェア構成は、後述する実施形態２、３でも同様である。
【００３４】
次に、サーバ１０の構成について説明する。図１に示すように、サーバ１０は、莫大な量のファイルを記憶したファイルデータベース１７と、ファイルデータベース１７へのファイル入出力を管理するファイル管理部１８と、通信端末３０からのファイル要求等を受信する受信部１１と、要求されたファイルを通信端末３０へ送信する送信部１２と、アクセス情報生成保存部１３と、先読みリスト生成部１４と、保存部１５と、先読みリスト送信部１６と、を備える。
【００３５】
このうち、アクセス情報生成保存部１３は、受信された複数の通信端末からの送信要求に基づいて、ユーザＩＤと送信要求されたファイル名とを対応付けたユーザアクセス情報をウェブアプリケーション毎に生成し保存する。先読みリスト生成部１４は、保存されたユーザアクセス情報に基づいて、ウェブアプリケーション毎の先読みリストを生成する。前述したように実施形態１では、先読みリスト生成部１４は、対象ユーザ以外の他のユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを生成する。
【００３６】
保存部１５は、生成されたウェブアプリケーション毎の先読みリストを保存する。先読みリスト送信部１６は、あるウェブアプリケーションについての先読みリストを通信端末３０から要求された場合、当該ウェブアプリケーションについての先読みリストを保存部１５から読み出して通信端末３０に送信する。
【００３７】
なお、図２（ａ）には、サーバ１０のハードウェア構成の一例を示す。サーバ１０は、ハードウェア構成として、ＣＰＵ１０Ａと、ＲＡＭ１０Ｂと、ＲＯＭ１０Ｃと、入力デバイスであるキーボードやマウス等の入力装置１０Ｄと、外部装置との通信を行う通信装置１０Ｅと、莫大な量のファイルを記憶するための補助記憶装置１０Ｆと、出力デバイスであるディスプレイやプリンタ等の出力装置１０Ｇとを備え、特別なハードウェア構成を必要とするものではない。前述したサーバ１０の各機能ブロックの機能は、ＲＡＭ１０Ｂ等に所定のプログラムを読み込ませ、ＣＰＵ１０Ａの制御の下で入力装置１０Ｄ、通信装置１０Ｅ、出力装置１０Ｇを動作させ、補助記憶装置１０Ｆ等に対しデータの読み書きを行うことで実行される。このようなサーバ１０のハードウェア構成は、後述する実施形態２、３でも同様である。
【００３８】
続いて、図３を用いて、第１実施形態の通信システム１において実行される処理について説明する。ここでは、ユーザＡの通信端末（以下「端末Ａ」と称する）、ユーザＢの通信端末（以下「端末Ｂ」と称する）、ユーザＣの通信端末（以下「端末Ｃ」と称する）が、順にサーバ１０に対し先読みリストを要求する状況において、サーバ１０の先読みリスト生成部１４が、ユーザＡ、Ｂのユーザアクセス情報より得られるファイル毎の送信要求頻度に基づいてユーザＣ向けの先読みリストを生成するケースを説明する。なお、図３では、ウェブアプリケーションを「アプリ」と略記している。
【００３９】
最初に、端末Ａにおいて、あるウェブアプリケーション（以下「対象ウェブアプリケーション」という）が起動され、先読みリスト要求部３２が、対象ウェブアプリケーション実行のために先読みすべきファイル名を記載した先読みリストをサーバ１０に要求する（図３のステップＴ１）。
【００４０】
サーバ１０では、受信部１１が上記要求を受信すると（ステップＳ１）、先読みリスト送信部１６が対象ウェブアプリケーションの先読みリストを保存部１５から読み出して端末Ａへ送信する。ただし、ここでは、対象ウェブアプリケーションの先読みリストが保存部１５に保存されていないものとする。したがって、先読みリスト送信部１６は、空の先読みリストを端末Ａへ送信する（ステップＳ２）。
【００４１】
端末Ａでは、先読みリスト受信保存部３３が空の先読みリストを受信すると（ステップＴ２）、受信した先読みリストが空であるので、この時点では先読みすべきファイルの要求は行われない。
【００４２】
その後、実行中の対象ウェブアプリケーションがファイルを要求すると、判定部３６は、要求されたファイルがキャッシュメモリ３１に保存されているか否かを判定する（ステップＴ３）。もし、要求されたファイルがキャッシュメモリ３１に保存されていれば、キャッシュ制御部３７が、当該ファイルをキャッシュメモリ３１から読み出して対象ウェブアプリケーションに渡す（ステップＴ６）。但し、ここでは、要求されたファイルが、ダウンロード元のアドレスがＵＲＬ１であるファイル（以下「ＵＲＬ１のファイル」と称する）と、ダウンロード元のアドレスがＵＲＬ２であるファイル（以下「ＵＲＬ２のファイル」と称する）の２つであり、これらはキャッシュメモリ３１に保存されていないものとする。よって、ステップＴ３で保存されていないと判定され、キャッシュ制御部３７は、要求されたファイル（ＵＲＬ１、２のファイル）の送信要求をユーザＡのユーザＩＤとともにサーバ１０に送信する（ステップＴ４）。
【００４３】
サーバ１０では、受信部１１が上記送信要求を受信すると（ステップＳ３）、ファイル管理部１８が上記ＵＲＬ１、２のファイルをファイルデータベース１７から読み出して端末Ａへ送信する（ステップＳ４）。そして、アクセス情報生成保存部１３は、上記送信要求に基づいて、ユーザＩＤ（ユーザＡ）と、送信要求されたファイル名（ここでは識別のために便宜上、ダウンロード元のアドレスである「ＵＲＬ１」、「ＵＲＬ２」を用いる）とを対応付けたユーザアクセス情報を生成し保存する（ステップＳ５）。例えば、図４（ａ）に示すように「ユーザＡ」と、「ＵＲＬ１」および「ＵＲＬ２」とを対応付けたユーザアクセス情報が生成され保存される。
【００４４】
端末Ａでは、キャッシュ制御部３７が、要求したファイル（ＵＲＬ１、２のファイル）をサーバ１０から受信し、これらＵＲＬ１、２のファイルをキャッシュメモリ３１に格納するとともに、実行中のウェブアプリケーションに渡す（ステップＴ５）。
【００４５】
次に、端末Ｂとサーバ１０との間でも、上述したステップＴ１〜Ｔ６、Ｓ１〜Ｓ５の処理が同様に実行される。ここでは重複した説明は省略する。ただし、端末Ｂで実行中の同じウェブアプリケーション（対象ウェブアプリケーション）は、ＵＲＬ１、２のファイルに加え、ＵＲＬ３のファイルも要求したとする。したがって、ステップＳ５では、アクセス情報生成保存部１３は、端末Ｂからの送信要求に基づいて、ユーザＩＤ（ユーザＢ）と、送信要求されたファイル名（ＵＲＬ１、ＵＲＬ２、ＵＲＬ３）とを対応付けたユーザアクセス情報を生成し保存する。例えば、図４（ｂ）に示すように「ユーザＡ」と、「ＵＲＬ１」、「ＵＲＬ２」および「ＵＲＬ３」とを対応付けたユーザアクセス情報が生成され保存される。
【００４６】
以上の結果、図４（ｂ）に示すように、対象ウェブアプリケーションに関するユーザアクセス情報として、複数ユーザ（ユーザＡ、Ｂ）についてのユーザアクセス情報が保存されるに至った。
【００４７】
そこで、サーバ１０では、先読みリスト生成部１４が、複数ユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを生成する（ステップＳ６）。ここでは、説明をわかりやすくするために、先読みリスト生成部１４は、複数ユーザ全員から送信要求があったファイル（図４（ｃ）に太線で囲んだＵＲＬ１、２）を、先読みリストに記載すべきファイルとして選択し、選択したファイル（ＵＲＬ１、２）を記載した先読みリストを生成する。そして、生成された先読みリストは、保存部１５により保存される（ステップＳ７）。
【００４８】
その後、端末Ｃにおいて、対象ウェブアプリケーションが起動され、先読みリスト要求部３２が、対象ウェブアプリケーション実行のための先読みリストをサーバ１０に要求する（ステップＴ７）。
【００４９】
サーバ１０では、受信部１１が上記要求を受信すると（ステップＳ８）、先読みリスト送信部１６が対象ウェブアプリケーションの先読みリスト（即ち、ＵＲＬ１、２が記載された先読みリスト）を保存部１５から読み出して端末Ｃへ送信する（ステップＳ９）。
【００５０】
端末Ｃでは、先読みリスト受信保存部３３が上記先読みリストを受信し保存する（ステップＴ８）。今回は、空の先読みリストではないので、以下のように、先読みすべきファイルの要求が行われる。即ち、先読みファイル要求部３４が、上記の先読みリストに記載されたファイル（ここでは、ＵＲＬ１、２）の送信要求をユーザＩＤ（ユーザＣ）とともにサーバ１０に送信する（ステップＴ９）。
【００５１】
サーバ１０では、受信部１１が上記送信要求を受信すると（ステップＳ１０）、ファイル管理部１８が、送信要求された上記ＵＲＬ１、２のファイルをファイルデータベース１７から読み出して端末Ｃへ送信する（ステップＳ１１）。
【００５２】
端末Ｃでは、先読みファイル受信格納部３５が、先読みファイル要求部３４による送信要求に対しサーバ１０から送信されてきたファイル（ＵＲＬ１、２のファイル）を受信しキャッシュメモリ３１に格納する（ステップＴ１０）。
【００５３】
以上説明した実施形態１によれば、ユーザＣからみると、他のユーザＡ、Ｂのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを自動的に生成することができる。また、端末Ｃは、生成された先読みリスト、および、当該先読みリストに記載されたファイルを自動的に受信し保存することができる。
【００５４】
［実施形態２］
実施形態２では、対象ユーザの過去のユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを生成する形態を説明する。
【００５５】
実施形態２における通信システムの構成、サーバおよび通信端末の構成は、実施形態１の構成（図１）と同様であるので、ここでは説明を省略する。
【００５６】
ただし、サーバ１０の先読みリスト生成部１４は、対象ユーザの過去のユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを生成する。この点が実施形態１とは異なる。
【００５７】
続いて、図５を用いて、第２実施形態の通信システム１において実行される処理について説明する。ここでは、ユーザＡの通信端末３０（以下「端末Ａ」という）において、同じウェブアプリケーション（対象ウェブアプリケーション）の起動時又はその実行中の所定タイミングに、計３回にわたり、サーバ１０に対し先読みリストを要求する状況を想定する。その状況でサーバ１０の先読みリスト生成部１４が、ユーザＡに関する過去２回のユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて、先読みリストを生成するケースを説明する。なお、図５では、ウェブアプリケーションを「アプリ」と略記している。
【００５８】
最初に、端末Ａにおいて、対象ウェブアプリケーションが起動され、先読みリスト要求部３２が、対象ウェブアプリケーション実行のために先読みすべきファイル名を記載した先読みリストをサーバ１０に要求する（図５のステップＴ２１）。
【００５９】
サーバ１０では、受信部１１が上記要求を受信すると（ステップＳ２１）、先読みリスト送信部１６が対象ウェブアプリケーションの先読みリストを保存部１５から読み出して端末Ａへ送信する。ただし、ここでは、対象ウェブアプリケーションの先読みリストが保存部１５に保存されていないものとする。したがって、先読みリスト送信部１６は、空の先読みリストを端末Ａへ送信する（ステップＳ２２）。
【００６０】
端末Ａでは、先読みリスト受信保存部３３が空の先読みリストを受信すると（ステップＴ２２）、受信した先読みリストが空であるので、この時点では先読みすべきファイルの要求は行われない。
【００６１】
その後、実行中の対象ウェブアプリケーションがファイルを要求すると、判定部３６は、要求されたファイルがキャッシュメモリ３１に保存されているか否かを判定する（ステップＴ２３）。もし、要求されたファイルがキャッシュメモリ３１に保存されていれば、キャッシュ制御部３７が、当該ファイルをキャッシュメモリ３１から読み出して対象ウェブアプリケーションに渡す（ステップＴ２６）。但し、ここでは、要求されたファイルが、ダウンロード元のアドレスがＵＲＬ１であるファイル（ＵＲＬ１のファイル）と、ダウンロード元のアドレスがＵＲＬ２であるファイル（ＵＲＬ２のファイル）と、ダウンロード元のアドレスがＵＲＬ３であるファイル（ＵＲＬ３のファイル）の３つであり、これらはキャッシュメモリ３１に保存されていないものとする。よって、ステップＴ２３で保存されていないと判定され、キャッシュ制御部３７は、要求されたファイル（ＵＲＬ１、２、３のファイル）の送信要求をユーザＡのユーザＩＤとともにサーバ１０に送信する（ステップＴ２４）。
【００６２】
サーバ１０では、受信部１１が上記送信要求を受信すると（ステップＳ２３）、ファイル管理部１８が上記ＵＲＬ１、２、３のファイルをファイルデータベース１７から読み出して端末Ａへ送信する（ステップＳ２４）。そして、アクセス情報生成保存部１３は、上記送信要求に基づいて、ユーザＩＤおよび要求回数と、送信要求されたファイル名（ここでは識別のために便宜上、ダウンロード元のアドレスである「ＵＲＬ１」、「ＵＲＬ２」、「ＵＲＬ３」を用いる）とを対応付けたユーザアクセス情報を生成し保存する（ステップＳ２５）。例えば、図６（ａ）に示すように「ユーザＡ（１回目）」と、「ＵＲＬ１」、「ＵＲＬ２」および「ＵＲＬ３」とを対応付けたユーザアクセス情報が生成され保存される。
【００６３】
端末Ａでは、キャッシュ制御部３７が、要求したファイル（ＵＲＬ１、２、３のファイル）をサーバ１０から受信し、これらＵＲＬ１、２、３のファイルをキャッシュメモリ３１に格納するとともに、実行中のウェブアプリケーションに渡す（ステップＴ２５）。
【００６４】
次に、しばらく時間が経過して、端末Ａにおいて、対象ウェブアプリケーションが再度起動されたケースを想定する。このとき、端末Ａの先読みリスト要求部３２が、対象ウェブアプリケーションに関する先読みリストをサーバ１０に再度要求する（図５のステップＴ２１）。以後、上述したステップＳ２１〜Ｓ２５、Ｔ２２〜Ｔ２６の処理が同様に実行される。ここでは重複した説明は省略する。
【００６５】
ただし、２回目は、対象ウェブアプリケーションが、ＵＲＬ２、３、４のファイルを要求したとする。したがって、ステップＳ２５では、アクセス情報生成保存部１３は、端末Ａからの２回目の送信要求に基づいて、ユーザＩＤおよび要求回数と、送信要求されたファイル名とを対応付けたユーザアクセス情報を生成し保存する。例えば、図６（ｂ）に示すように「ユーザＡ（２回目）」と、「ＵＲＬ２」、「ＵＲＬ３」および「ＵＲＬ４」とを対応付けたユーザアクセス情報が生成され保存される。
【００６６】
以上の結果、図６（ｂ）に示すように、対象ウェブアプリケーションに関するユーザアクセス情報として、ユーザＡの１回目と２回目についてのユーザアクセス情報が保存されるに至った。
【００６７】
そこで、サーバ１０では、先読みリスト生成部１４が、ユーザＡの複数回にわたるユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを生成する（ステップＳ２６）。ここでは、説明をわかりやすくするために、先読みリスト生成部１４は、複数回の送信要求に共通するファイル（図６（ｃ）に太線で囲んだＵＲＬ２、３）を、先読みリストに記載すべきファイルとして選択し、選択したファイル（ＵＲＬ２、３）を記載した先読みリストを生成する。そして、生成された先読みリストは、保存部１５により保存される（ステップＳ２７）。
【００６８】
その後、端末Ａにおいて、対象ウェブアプリケーションが再度起動され、先読みリスト要求部３２が、対象ウェブアプリケーション実行のための先読みリストをサーバ１０に再度要求する（ステップＴ２７）。
【００６９】
サーバ１０では、受信部１１が上記要求を受信すると（ステップＳ２８）、先読みリスト送信部１６が対象ウェブアプリケーションの先読みリスト（即ち、ＵＲＬ２、３が記載された先読みリスト）を保存部１５から読み出して端末Ａへ送信する（ステップＳ２９）。
【００７０】
端末Ａでは、先読みリスト受信保存部３３が上記先読みリストを受信し保存する（ステップＴ２８）。今回は、空の先読みリストではないので、以下のように、先読みすべきファイルの要求が行われる。即ち、先読みファイル要求部３４が、上記の先読みリストに記載されたファイル（ここでは、ＵＲＬ２、３）の送信要求をユーザＩＤ（ユーザＡ）とともにサーバ１０に送信する（ステップＴ２９）。
【００７１】
サーバ１０では、受信部１１が上記送信要求を受信すると（ステップＳ３０）、ファイル管理部１８が、送信要求された上記ＵＲＬ２、３のファイルをファイルデータベース１７から読み出して端末Ａへ送信する（ステップＳ３１）。
【００７２】
端末Ａでは、先読みファイル受信格納部３５が、先読みファイル要求部３４による送信要求に対しサーバ１０から送信されてきたファイル（ＵＲＬ２、３のファイル）を受信しキャッシュメモリ３１に格納する（ステップＴ３０）。
【００７３】
以上説明した実施形態２によれば、同じユーザＡの過去のユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを自動的に生成することができる。また、端末Ａは、生成された先読みリスト、および、当該先読みリストに記載されたファイルを自動的に受信し保存することができる。
【００７４】
［実施形態３］
実施形態３では、類似ユーザ（アクセス傾向が対象ユーザに類似した他のユーザ）に関するファイル毎の送信要求頻度に基づいて先読みリストを生成する形態を説明する。
【００７５】
実施形態３における通信システムの構成、サーバおよび通信端末の構成は、実施形態１の構成（図１）と同様であるので、ここでは説明を省略する。
【００７６】
ただし、サーバ１０の先読みリスト生成部１４は、類似ユーザ（アクセス傾向が対象ユーザに類似した他のユーザ）に関するファイル毎の送信要求頻度に基づいて先読みリストを生成する。この点が上記実施形態１、２とは異なる。
【００７７】
続いて、図７、図８を用いて、第３実施形態の通信システム１において実行される処理について説明する。ここでは、既に、ユーザＡの通信端末（端末Ａ）、ユーザＢの通信端末（端末Ｂ）、ユーザＣの通信端末（端末Ｃ）が、順にサーバ１０に対しファイルの送信要求を行い、図９（ａ）に示すユーザアクセス情報がサーバ１０のアクセス情報生成保存部１３により生成され保存されているものとする。かかる状況において、ユーザＤの通信端末（端末Ｄ）において同じウェブアプリケーション（対象ウェブアプリケーション）が起動され、端末Ｄがサーバ１０に対し先読みリストを要求し、そして、サーバ１０の先読みリスト生成部１４が、ユーザＤの類似ユーザ（アクセス傾向がユーザＤに類似した他のユーザ）に関するファイル毎の送信要求頻度に基づいて先読みリストを生成するケースを説明する。なお、図７、図８では、ウェブアプリケーションを「アプリ」と略記している。
【００７８】
まず、端末Ｄにおいて、対象ウェブアプリケーションが起動され、先読みリスト要求部３２が、対象ウェブアプリケーション実行のために先読みすべきファイル名を記載した先読みリストをサーバ１０に要求する（図７のステップＴ４１）。
【００７９】
サーバ１０では、受信部１１が上記要求を受信すると（ステップＳ４１）、先読みリスト送信部１６が対象ウェブアプリケーションの先読みリストを保存部１５から読み出して端末Ｄへ送信する。ただし、ここでは、対象ウェブアプリケーションの先読みリストが保存部１５に保存されていないものとする。したがって、先読みリスト送信部１６は、空の先読みリストを端末Ｄへ送信する（ステップＳ４２）。
【００８０】
端末Ｄでは、先読みリスト受信保存部３３が空の先読みリストを受信すると（ステップＴ４２）、受信した先読みリストが空であるので、この時点では先読みすべきファイルの要求は行われない。
【００８１】
その後、実行中の対象ウェブアプリケーションが、ダウンロード元のアドレスがＵＲＬ１であるファイル（以下「ＵＲＬ１のファイル」又は「ファイル１」と称する）を要求したとする。ここで判定部３６は、要求されたファイル１がキャッシュメモリ３１に保存されているか否かを判定する（ステップＴ４３）。もし、ファイル１がキャッシュメモリ３１に保存されていれば、キャッシュ制御部３７が、当該ファイル１をキャッシュメモリ３１から読み出して対象ウェブアプリケーションに渡す（ステップＴ４６）。但し、ここでは、ファイル１がキャッシュメモリ３１に保存されていないものとする。よって、ステップＴ４３で保存されていないと判定され、キャッシュ制御部３７は、ファイル１の送信要求をユーザＤのユーザＩＤとともにサーバ１０に送信する（ステップＴ４４）。
【００８２】
サーバ１０では、受信部１１が上記送信要求を受信すると（ステップＳ４３）、ファイル管理部１８がファイル１をファイルデータベース１７から読み出して端末Ｄへ送信する（ステップＳ４４）。そして、アクセス情報生成保存部１３は、上記送信要求に基づいて、ユーザＩＤ（ユーザＤ）と、送信要求されたファイル名（ファイル１）とを対応付けたユーザアクセス情報を生成し保存する（ステップＳ４５）。例えば、図９（ｂ）に示すように「ユーザＤ」と、ファイル１に相当する「ＵＲＬ１」とを対応付けたユーザアクセス情報が生成され保存される。
【００８３】
端末Ｄでは、キャッシュ制御部３７が、ファイル１をサーバ１０から受信し、該ファイル１を、キャッシュメモリ３１に格納するとともに実行中の対象ウェブアプリケーションに渡す（ステップＴ４５）。
【００８４】
一方、サーバ１０では、先読みリスト生成部１４が、ユーザＤの類似ユーザ（アクセス傾向がユーザＤに類似した他のユーザ）に関するファイル毎の送信要求頻度に基づいて先読みリストを生成する（ステップＳ４６）。具体的には、ユーザＤと同様に、ファイル１を要求した他のユーザをユーザＤの類似ユーザとする。図９（ｂ）に示すようにファイル１を要求した他のユーザとしては、ユーザＡとユーザＢが存在するが、ここでは一例として、ユーザＡ、Ｂのうち、時系列上で後にファイル１を要求したユーザ（即ち、より新しい時点でファイル１を要求したユーザ）であるユーザＢを、ユーザＤの類似ユーザとする。そして、先読みリスト生成部１４は、ユーザＢが送信要求したファイル１、２（図９（ｂ）のＵＲＬ１、２）を、先読みリストに記載すべきファイルとして選択し、選択したファイル１、２を記載した先読みリストを生成する。そして、生成された先読みリストは、保存部１５により保存される（ステップＳ４７）。
【００８５】
その後、端末Ｄにおいて、対象ウェブアプリケーションが再度起動されたとき、又は、対象ウェブアプリケーション実行中に所定の先読みリスト要求タイミングが到来したとき、先読みリスト要求部３２が、対象ウェブアプリケーション実行のための先読みリストをサーバ１０に要求する（ステップＴ４７）。
【００８６】
サーバ１０では、受信部１１が上記要求を受信すると（ステップＳ４８）、先読みリスト送信部１６が対象ウェブアプリケーションの先読みリスト（即ち、ファイル１、２が記載された先読みリスト）を保存部１５から読み出して端末Ｄへ送信する（ステップＳ４９）。
【００８７】
端末Ｄでは、先読みリスト受信保存部３３が上記先読みリストを受信し保存する（ステップＴ４８）。今回は空の先読みリストではないので、先読みファイル要求部３４が、上記の先読みリストに記載されたファイル１、２の送信要求をユーザＩＤ（ユーザＤ）とともにサーバ１０に送信する（ステップＴ４９）。
【００８８】
サーバ１０では、受信部１１が上記送信要求を受信すると（ステップＳ５０）、ファイル管理部１８が、送信要求されたファイル１、２をファイルデータベース１７から読み出して端末Ｄへ送信する（ステップＳ５１）。
【００８９】
端末Ｄでは、先読みファイル受信格納部３５が、先読みファイル要求部３４による送信要求に対しサーバ１０から送信されてきたファイル１、２を受信しキャッシュメモリ３１に格納する（ステップＴ５０）。
【００９０】
その後、実行中の対象ウェブアプリケーションが、ダウンロード元のアドレスがＵＲＬ３であるファイル（以下「ＵＲＬ３のファイル」又は「ファイル３」と称する）を要求したとする。ここで判定部３６は、要求されたファイル３がキャッシュメモリ３１に保存されているか否かを判定する（ステップＴ５１）。もし、ファイル３がキャッシュメモリ３１に保存されていれば、キャッシュ制御部３７が、当該ファイル３をキャッシュメモリ３１から読み出して対象ウェブアプリケーションに渡す（ステップＴ５４）。但し、ここでは、ファイル３がキャッシュメモリ３１に保存されていないものとする。よって、ステップＴ５１で保存されていないと判定され、キャッシュ制御部３７は、ファイル３の送信要求をユーザＤのユーザＩＤとともにサーバ１０に送信する（ステップＴ５２）。
【００９１】
サーバ１０では、受信部１１が上記送信要求を受信すると（ステップＳ５２）、ファイル管理部１８がファイル３をファイルデータベース１７から読み出して端末Ｄへ送信する（ステップＳ５３）。そして、アクセス情報生成保存部１３は、上記送信要求に基づいて、ユーザＩＤ（ユーザＤ）と、送信要求されたファイル名（ファイル３）とを対応付けたユーザアクセス情報を生成し保存する（ステップＳ５４）。例えば、図９（ｃ）に示すように「ユーザＤ」と、ファイル３に相当する「ＵＲＬ３」とを対応付けたユーザアクセス情報が生成され保存される。
【００９２】
端末Ｄでは、キャッシュ制御部３７が、ファイル３をサーバ１０から受信し、該ファイル３を、キャッシュメモリ３１に格納するとともに実行中の対象ウェブアプリケーションに渡す（ステップＴ５３）。
【００９３】
一方、サーバ１０では、先読みリスト生成部１４が、ユーザＤの類似ユーザ（アクセス傾向がユーザＤに類似した他のユーザ）に関するファイル毎の送信要求頻度に基づいて先読みリストを生成する（ステップＳ５５）。具体的には、ユーザＤと同様に、ファイル３を要求した他のユーザをユーザＤの類似ユーザとする。図９（ｃ）に示すようにファイル３を要求した他のユーザはユーザＡのみなので、ユーザＡを、ユーザＤの類似ユーザとする。そして、先読みリスト生成部１４は、ユーザＡが送信要求したファイル１、３、５（図９（ｃ）のＵＲＬ１、３、５）を、先読みリストに記載すべきファイルとして選択し、選択したファイル１、３、５を記載した先読みリストを生成する。そして、生成された先読みリストは、保存部１５により保存される（ステップＳ５６）。
【００９４】
その後、端末Ｄにおいて、対象ウェブアプリケーションが再度起動されたとき、又は、対象ウェブアプリケーション実行中に所定の先読みリスト要求タイミングが到来したとき、先読みリスト要求部３２が、対象ウェブアプリケーション実行のための先読みリストをサーバ１０に要求する（ステップＴ５５）。
【００９５】
サーバ１０では、受信部１１が上記要求を受信すると（ステップＳ５７）、先読みリスト送信部１６が対象ウェブアプリケーションの先読みリスト（即ち、ファイル１、３、５が記載された先読みリスト）を保存部１５から読み出して端末Ｄへ送信する（ステップＳ５８）。
【００９６】
端末Ｄでは、先読みリスト受信保存部３３が上記先読みリストを受信し保存する（ステップＴ５６）。今回も空の先読みリストではないので、先読みファイル要求部３４が、上記の先読みリストに記載されたファイル１、３、５の送信要求をユーザＩＤ（ユーザＤ）とともにサーバ１０に送信する（ステップＴ５７）。
【００９７】
サーバ１０では、受信部１１が上記送信要求を受信すると（ステップＳ５９）、ファイル管理部１８が、送信要求されたファイル１、３、５をファイルデータベース１７から読み出して端末Ｄへ送信する（ステップＳ６０）。
【００９８】
端末Ｄでは、先読みファイル受信格納部３５が、先読みファイル要求部３４による送信要求に対しサーバ１０から送信されてきたファイル１、３、５を受信しキャッシュメモリ３１に格納する（ステップＴ５８）。
【００９９】
以上説明した実施形態３によれば、ユーザＤからみた類似ユーザのユーザアクセス情報より得られる、ファイル毎の送信要求頻度に基づいて先読みリストを自動的に生成することができる。また、端末Ｄは、生成された先読みリスト、および、当該先読みリストに記載されたファイルを自動的に受信し保存することができる。
【０１００】
以上の実施形態１〜３に共通した効果として、ユーザアクセス情報に基づいてウェブアプリケーション毎の先読みリストを自動的に生成することができるという効果、および、先読みリストの自動作成の実現により、ウェブアプリケーション開発者の作業負荷を軽減しつつウェブアプリケーションの実行処理の高速化・効率化を図ることができるという効果が挙げられる。
【０１０１】
なお、実施形態３では、先読みリスト生成部１４は、類似ユーザとして１人のユーザを定めたが、類似ユーザとしては、複数人から成るグループを定めてもよい。例えば、先読みリスト生成部１４は、図９（ｃ）において、ファイル１、３のうち少なくとも１つを送信要求したユーザ（ユーザＡとＢ）から成るグループを定め、そのグループに属するユーザＡとＢの何れかが送信要求したファイルであるファイル１、２、３、５を、先読みリストに記載すべきファイルとして選択し、選択したファイル１、２、３、５を記載した先読みリストを生成してもよい。
【０１０２】
また、上記の実施形態１〜３では、通信端末のユーザを特定するためのユーザＩＤを用いるケースを例示したが、ユーザＩＤを用いないケースでも本発明は有効である。例えば、ユーザを特定することなく、ウェブアプリケーションを構成するファイルに対するアクセス頻度を求め、かかるアクセス頻度をもとに、先読みリストを生成し保存する。そして、任意のユーザから先読みリストの送信要求があったときに、当該送信要求に対して、保存しておいた先読みリストを返信することができる。このようなケースでも、上記の実施形態１〜３と同様の効果を得ることができる。
【符号の説明】
【０１０３】
１…通信システム、１０…サーバ、１０Ａ…ＣＰＵ、１０Ｂ…ＲＡＭ、１０Ｃ…ＲＯＭ、１０Ｄ…入力装置、１０Ｅ…通信装置、１０Ｆ…補助記憶装置、１０Ｇ…出力装置、１１…受信部、１２…送信部、１３…アクセス情報生成保存部、１４…先読みリスト生成部、１５…保存部、１６…先読みリスト送信部、１７…ファイルデータベース、１８…ファイル管理部、２０…ネットワーク、３０…通信端末、３０Ａ…ＣＰＵ、３０Ｂ…ＲＡＭ、３０Ｃ…ＲＯＭ、３０Ｄ…入力装置、３０Ｅ…通信装置、３０Ｆ…キャッシュメモリ、３０Ｇ…出力装置、３１…キャッシュメモリ、３２…先読みリスト要求部、３３…先読みリスト受信保存部、３４…先読みファイル要求部、３５…先読みファイル受信格納部、３６…判定部、３７…キャッシュ制御部。
【図１】
2010238114.tif 000003
【図２】
2010238114.tif 000004
【図３】
2010238114.tif 000005
【図４】
2010238114.tif 000006
【図５】
2010238114.tif 000007
【図６】
2010238114.tif 000008
【図７】
2010238114.tif 000009
【図８】
2010238114.tif 000010
【図９】
2010238114.tif 000011