(57)【特許請求の範囲】
【請求項１】
ウェブサーバ機能及び差分通知機能を有するサーバ処理装置が、複数のクライアントである複数のウェブ端末に接続されているサーバ・複数クライアント差分通知システムにおいて、
前記サーバ処理装置は、
スケジュールによって動作する第１の差分更新コマンドが格納されている第１の記憶手段と、差分更新する対象のコンテンツが格納されている第２の記憶手段と、更新指示手段により任意のタイミングで動作する第２の差分更新コマンド又は前記第１の記憶手段から前記第１の差分更新コマンドを入力する入力手段とを付属し、
データ転送速度を監視する監視機能と、
前記入力手段から入力される前記第１又は第２の差分更新コマンドで指定されたデータサイズと前記監視機能で監視されている前記データ転送速度をもとに、予め用意した複数種類の更新方法の中から最適な更新方法を決定する更新方法決定機能と、
前記更新方法決定機能により決定された更新方法を示す更新通知データを作成する更新制御機能と、
前記更新制御機能から入力される前記更新通知データを、前記複数のウェブ端末へ転送すると共に、データ転送速度を前記監視機能へ通知して前記更新方法決定機能による更新方法の決定に反映させる差分通知機能と、
前記更新制御機能により決定された更新方法に基づき、前記第２の記憶手段から差分対象のコンテンツが送付されて前記複数のウェブ端末へのダウンロードに備えるサーバ機能と
を有し、前記複数のウェブ端末のそれぞれは、前記サーバ処理装置から受け取った前記更新通知データが示す更新方法に従って、該更新通知データの差分データ又は前記サーバ機能からＨＴＴＰダウンロードにより差分データを取得してコンテンツを更新する手段を有することを特徴とするサーバ・複数クライアント差分通知システム。
【請求項２】
前記更新方法決定機能は、前記複数種類の更新方法として、データサイズが第１の閾値より小さく、前記ウェブ端末の数とデータサイズとの積に相当する総通信コストが第２の閾値より小さい場合に選択される差分データ直接送付と、データサイズが前記第１の閾値以上で、前記総通信コストが前記第２の閾値以上の場合に選択される差分データ通常ＨＴＴＰダウンロード指令通知と、前記第１又は第２の差分更新コマンドの更新時間が、前記監視機能が示すデータ転送速度から計算されるＨＴＴＰダウンロードの転送最小時間を現在の時間に足した時間よりも遅い場合に選択される差分データの先行ダウンロード指令通知及び通常ＨＴＴＰダウンロード指令通知の組合せ、の３種類のうち、前記差分データ直接送付選択時は前記更新通知データの差分データを前記ウェブ端末へ送付し、前記差分データ通常ＨＴＴＰダウンロード指令通知又は前記差分データの先行ダウンロード指令通知の選択時は、前記第２の記憶手段から差分対象のコンテンツが前記サーバ処理装置へ送付されてから前記ウェブ端末へダウンロードすることを特徴とする請求項１記載のサーバ・複数クライアント差分通知システム。
【請求項３】
前記ウェブ端末のそれぞれは、
前記サーバ処理装置から転送された前記更新通知データを受け取り、その更新通知データ中の更新方法を解析する差分更新機能と、
差分データを前記サーバ処理装置からＨＴＴＰダウンロードで取得するダウンロード機能と、
前記ウェブブラウザ表示手段と
を有し、前記差分更新機能は受け取った前記更新通知データ中の更新方法が前記差分データ直接送付の場合は、該更新データ中の差分データを前記ウェブブラウザ表示手段に通知してコンテンツを更新し、前記更新方法が前記差分データ直接送付以外の場合は、前記ＨＴＴＰダウンロード機能により、差分コンテンツを前記サーバ処理装置からＨＴＴＰダウンロードで取得させると共に、前記更新方法が前記差分データ通常ＨＴＴＰダウンロード指令通知ならば、前記差分コンテンツをダウンロードした後で、前記ウェブブラウザ表示手段へ通知してコンテンツを更新し、すでにＨＴＴＰコンテンツキャッシュに格納されている場合は、ダウンロードせずに、前記ＨＴＴＰコンテンツキャッシュの差分コンテンツを利用してコンテンツを更新し、前記更新方法が前記差分データ先行ＨＴＴＰダウンロード指令通知ならば、前記差分コンテンツをダウンロードした後で、前記ＨＴＴＰコンテンツキャッシュに格納しておくことを特徴とする請求項２記載のサーバ・複数クライアント差分通知システム。
【請求項４】
前記複数のウェブ装置のそれぞれは、前記差分データ先行ＨＴＴＰダウンロード指令通知または前記差分データ通常ＨＴＴＰダウンロード指令通知によって更新された差分データに関して、更新された領域の中の部分修正について差分データ直接送付を利用して修正することを特徴とする請求項２記載のサーバ・複数クライアント差分通知システム。
【請求項５】
前記サーバ処理装置の差分通知機能は、前記複数のウェブ端末へ転送する前記更新通知データの更新方法が前記差分データ直接送付の場合には、予め通信速度が測定されている前記複数のウェブ端末のうち通信速度が遅いウェブ端末から順番に転送し、前記更新通知データの更新方法が前記差分データＨＴＴＰダウンロード指令通知又は前記差分データの先行ダウンロード指令通知の場合には、前記複数のウェブ端末のうち通信速度が速いウェブ端末から順番に転送することを特徴とする請求項２記載のサーバ・複数クライアント差分通知システム。
【請求項６】
前記更新通知データが示す差分データは、前記第１又は第２の差分更新コマンドが示す差分データをコピーした差分データ又は前記サーバ処理装置のサーバ機能上においた差分データのＵＲＬ又は前記第２の記憶手段からの差分更新する対象のコンテンツであることを特徴とする請求項１記載のサーバ・複数クライアント差分通知システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はサーバ・複数クライアント差分通知システムに係り、特にウェブ（Ｗｅｂ）サーバ機能及び差分通知機能を有するサーバ処理装置が、インターネット上に分散した多数のウェブ（Ｗｅｂ）端末に接続されている大規模なウェブ端末同期システムにおいて、多数のウェブ端末の画面に表示する情報を、端末間で同じ内容に保つサーバ・複数クライアント差分通知システムに関する。
【０００２】
【従来の技術】
例えば、ラジオの放送番組がラジオ放送とインターネット上に分散した多数のウェブ端末とを連動して、詳細情報を視聴者にリアルタイム配信するような場合は、多数のウェブ端末の画面に表示する情報をリアルタイムで同期させ、端末間で同じ内容に保つようにする必要がある。このような大規模なウェブ端末同期システムにおいては、ウェブサーバ機能を有するサーバ処理装置の最新情報が、ウェブ端末に表示している情報との差異が生じたら、すべて再取得するのではなく、更新があったところだけをウェブ端末に取得させるように、サーバ処理装置の最新情報とウェブ端末が表示している情報との差異を示す差分通知を行う。
【０００３】
この差分通知システムは、従来はテレビのような放送型の通信ができないインターネット上に分散したウェブ端末の自動更新を一定時間で行うか、サーバ処理装置から通知されるメタ情報をトリガーとして、それぞれウェブ端末が差分データをサーバ処理装置からダウンロードしている。
【０００４】
例えば、ＳＭＩＬ（Synchronized Multimedia Integration Language）というメタ記述言語は、ウェブコンテンツの更新情報が記述されており、記述されたスケジュールに従ってウェブコンテンツをダウンロードして表示する。また、ストリーム連動型のウェブコンテンツでは、サーバ処理装置から各クライアントに通知されるイベントをトリガーとしてウェブコンテンツを更新することができる。
【０００５】
【発明が解決しようとする課題】
しかるに、上記従来の差分通知システムでは、二つの問題がある。第一の問題は、複数のウェブ端末が同時に差分通知を受け取ることができず、更新タイミングがばらばらになってしまうことである。既存の方式では、差分コンテンツの取得方法はウェブ端末側に予め配信されたプログラムで定める必要があり、サーバ処理装置側で動的に変化する差分コンテンツの大きさによる場合分けができないので、差分コンテンツの大きさに依存した最適な更新方法を選択できず、更新タイミングが複数のウェブ端末間で乱れてしまう。
【０００６】
第二の問題は、大きなサイズのコンテンツの更新に時間がかかることである。コンテンツのサイズが大きくなり、ウェブ端末数が多くなると、サーバ処理装置に差分取得のトランザクションがバースト的に発生してしまい、その結果、輻輳状態になり、最終的にウェブ端末毎に更新タイミングがずれてしまう。
【０００７】
本発明は以上の点に鑑みなされたもので、更新データの大きさから最適な更新通知方法を選択し、差分データ直接送付、ＨＴＴＰダウンロード指令通知、先行ＨＴＴＰダウンロード指令通知のいずれかによって、複数のウェブ端末間でリアルタイムに画面を更新して画面同期を実現することで、大きな差分データの更新から小さな差分データの更新まで一貫して行い得るサーバ・複数クライアント差分通知システムを提供することを目的とする。
【０００８】
また、本発明の他の目的は、大きな差分コンテンツをサーバからウェブ端末へ通知するときも、ウェブ端末間でリアルタイムに同期し得るサーバ・複数クライアント差分通知システムを提供することにある。
【０００９】
【課題を解決するための手段】
本発明は上記の目的を達成するため、ウェブサーバ機能及び差分通知機能を有するサーバ処理装置が、複数のクライアントである複数のウェブ端末に接続されているサーバ・複数クライアント差分通知システムにおいて、サーバ処理装置は、スケジュールによって動作する第１の差分更新コマンドが格納されている第１の記憶手段と、差分更新する対象のコンテンツが格納されている第２の記憶手段と、更新指示手段により任意のタイミングで動作する第２の差分更新コマンド又は第１の記憶手段から第１の差分更新コマンドを入力する入力手段とを付属し、データ転送速度を監視する監視機能と、入力手段から入力される第１又は第２の差分更新コマンドで指定されたデータサイズと監視機能で監視されているデータ転送速度をもとに、予め用意した複数種類の更新方法の中から最適な更新方法を決定する更新方法決定機能と、更新方法決定機能により決定された更新方法を示す更新通知データを作成する更新制御機能と、更新制御機能から入力される更新通知データを、複数のウェブ端末へ転送すると共に、データ転送速度を監視機能へ通知して更新方法決定機能による更新方法の決定に反映させる差分通知機能と、更新制御機能により決定された更新方法に基づき、第２の記憶手段から差分対象のコンテンツが送付されて複数のウェブ端末へのダウンロードに備えるサーバ機能とを有し、複数のウェブ端末のそれぞれは、サーバ処理装置から受け取った更新通知データが示す更新方法に従って、更新通知データの差分データ又はサーバ機能からＨＴＴＰダウンロードにより差分データを取得してコンテンツを更新する手段を有する構成としたものである。
【００１０】
この発明では、更新方法決定機能が監視機能からのデータ転送速度情報と、第１又は第２の更新通知データが指定するデータサイズとのトレードオフを計算して、予め用意した複数種類の更新方法の中から、多数のウェブ端末間の画面をリアルタイム同期するのに最適な更新方法を選択するようにしたため、多数のウェブ端末間で同期してウェブブラウザの画面を更新することで、第一の目的を達成できる。
【００１１】
ここで、本発明における上記の更新方法決定機能は、複数種類の更新方法として、データサイズが第１の閾値より小さく、ウェブ端末の数とデータサイズとの積に相当する総通信コストが第２の閾値より小さい場合に選択される差分データ直接送付と、データサイズが第１の閾値以上で、総通信コストが第２の閾値以上の場合に選択される差分データ通常ＨＴＴＰダウンロード指令通知と、第１又は第２の差分更新コマンドの更新時間が、監視機能が示すデータ転送速度から計算されるＨＴＴＰダウンロードの転送最小時間を現在の時間に足した時間よりも遅い場合に選択される差分データの先行ダウンロード指令通知及び通常ＨＴＴＰダウンロード指令通知の組合せ、の３種類のうち、差分データ直接送付選択時は更新通知データの差分データをウェブ端末へ送付し、差分データ通常ＨＴＴＰダウンロード指令通知又は差分データの先行ダウンロード指令通知の選択時は、第２の記憶手段から差分対象のコンテンツがサーバ処理装置へ送付されてからウェブ端末へダウンロードすることを特徴とする。
【００１２】
また、本発明は上記の目的を達成するため、ウェブ端末のそれぞれは、サーバ処理装置から転送された更新通知データを受け取り、その更新通知データ中の更新方法を解析する差分更新機能と、差分データをサーバ処理装置からＨＴＴＰダウンロードで取得するダウンロード機能と、ウェブブラウザ表示手段とを有し、差分更新機能は受け取った更新通知データ中の更新方法が差分データ直接送付の場合は、更新データ中の差分データをウェブブラウザ表示手段に通知してコンテンツを更新し、更新方法が差分データ直接送付以外の場合は、ＨＴＴＰダウンロード機能により、差分コンテンツをサーバ処理装置からＨＴＴＰダウンロードで取得させると共に、更新方法が差分データ通常ＨＴＴＰダウンロード指令通知ならば、差分コンテンツをダウンロードした後で、ウェブブラウザ表示手段へ通知してコンテンツを更新し、すでにＨＴＴＰコンテンツキャッシュに格納されている場合は、ダウンロードせずに、ＨＴＴＰコンテンツキャッシュの差分コンテンツを利用してコンテンツを更新し、更新方法が差分データ先行ＨＴＴＰダウンロード指令通知ならば、差分コンテンツをダウンロードした後で、ＨＴＴＰコンテンツキャッシュに格納しておく構成としたものである。
【００１３】
この発明では、差分データ先行ＨＴＴＰダウンロード指令通知に基づいてウェブ端末内のダウンロード機能が差分データを指定ＵＲＬからＨＴＴＰダウンロードしておき、同一ＵＲＬのダウンロード指令通知によって先行ダウンロードされてＨＴＴＰコンテンツキャッシュに保管されていた差分データをウェブブラウザ表示手段で表示することを可能にするようにしたため、単純な命令セットだけで差分更新を可能にでき、先行ダウンロードの終了が間に合わない場合には、ダウンロード指令通知に処理を切り替えることができる。
【００１４】
すなわち、この発明では、ウェブ端末において、情報が書き換えられるより前に、ベースとなる差分情報を先行的に差分情報をＨＴＴＰダウンロードし、ウェブ端末のＨＴＴＰコンテンツキャッシュにキャッシュし、リアルタイムに書き換えられる情報を、更新時間になったらサーバ処理装置から送信する２段階の更新方法を自動的に更新方法決定機能が指定することで、第二の目的を達成できる。
【００１５】
また、本発明は、上記の目的を達成するため、複数のウェブ装置のそれぞれは、差分データ先行ＨＴＴＰダウンロード指令通知または差分データ通常ＨＴＴＰダウンロード指令通知によって更新された差分データに関して、更新された領域の中の部分修正について差分データ直接送付を利用して修正するようにしたため、大きな通信量が必要なコンテンツでも、大きな領域を先に送付し、その中のリアルタイム性が必要な小さい部分領域の更新を瞬時に行うことを可能にできる。
【００１６】
また、本発明は、上記の目的を達成するため、サーバ処理装置の差分通知機能は、複数のウェブ端末へ転送する更新通知データの更新方法が差分データ直接送付の場合には、予め通信速度が測定されている複数のウェブ端末のうち通信速度が遅いウェブ端末から順番に転送し、更新通知データの更新方法が差分データＨＴＴＰダウンロード指令通知又は差分データの先行ダウンロード指令通知の場合には、複数のウェブ端末のうち通信速度が速いウェブ端末から順番に転送するようにしたため、差分データ直接送付に関してはウェブ端末間の同期のリアルタイム性を向上することができ、また、差分データＨＴＴＰダウンロード指令通知及び差分データの先行ダウンロード指令通知では、差分データをダウンロードするサーバ処理装置内のサーバ機能の負荷を分散するとともに通信経路上のＨＴＴＰキャッシュにヒットする確立を向上させることができ、差分コンテンツの更新のリアルタイム性を向上することができる。
【００１７】
【発明の実施の形態】
次に、本発明の一実施の形態について図面と共に説明する。図１は本発明になるサーバ・複数クライアント差分通知システムの一実施の形態のシステム構成図、図２は図１のシステムで用いるデータの一例の構成図を示す。図１及び図２を用いて本発明の一実施の形態の構成を説明する。
【００１８】
本実施の形態のサーバ・複数クライアント差分通知システムは、図１に示すように、サーバ処理装置１１０と、ＨＴＴＰ(Hypertext Transfer Protocol)キャッシュ装置１２０と、複数のウェブ端末１３０とから大略構成される。サーバ処理装置１１０には、更新指示手段１１６、更新スケジュール１１７及びＨＴＴＰコンテンツ１１８が付属している。また、ウェブ端末装置１３０の各々にはＨＴＴＰコンテンツキャッシュ１３４が付属している。また、ウェブ端末装置１３０は図１に示すようにインターネット上に多数分散して存在する。さらに、インターネット上にはＨＴＴＰキャッシュ装置１２０が存在することを前提とする。サーバ処理装置１１０とウェブ端末装置１３０の間はインターネットで接続される。
【００１９】
サーバ処理装置１１０は、更新方法決定機能１１１、更新制御機能１１２、差分通知機能１１３、通信コスト監視機能１１４及びウェブ（Ｗｅｂ）サーバ機能１１５を有する。また、サーバ処理装置１１０に付属している、更新指示手段１１６、記憶装置として更新スケジュール１１７及びＨＴＴＰコンテンツ１１８のうち、更新スケジュール１１７には、ＨＴＴＰコンテンツ１１８を更新する時間と更新方法を示す差分更新コマンド２１０が複数格納されている。
【００２０】
すなわち、更新スケジュール１１７には時間で予め決められた、すなわち、スケジュールによって動作する差分更新コマンド２１０が格納されており、時間を予め決められない差分更新コマンド２１０は更新指示手段１１６から入力する。ＨＴＴＰコンテンツ１１８には、差分更新する対象のコンテンツがＨＴＭＬ（Hypertext Markup Language）またはバイナリ形式で格納されている。更新指示手段１１６は、差分更新コマンド２１０を更新スケジュール１１７と並行して任意のタイミングで作成する入力手段である。すなわち、差分更新コマンド２１０は更新指示手段１１６により任意のタイミングで動作する。
【００２１】
更新方法決定機能１１１は、更新スケジュール１１７または更新指示手段１１６から転送される差分更新コマンド２１０に基づいて、差分更新の差分情報となるＨＴＴＰコンテンツ１１８を取得し、通信コスト監視機能１１４が監視している通信コスト（これは後述するように通信速度であり、換言するとデータ転送速度である）に基づいて、最適な更新方法を決定する。
【００２２】
ここで、差分更新コマンド２１０について説明する。差分更新コマンド２１０は、図２（Ａ）に示すように、更新方法２１１、更新時間２１２、差分領域ＩＤ２１３、データ種類２１４及び差分データ２１５を含む。また、オプションとして、第２段階差分領域ＩＤ２１６、第２段階差分ファイル２１７を含む。更新方法２１１は、「自動選択」、「差分データ直接送付」、「差分データ通常ＨＴＴＰダウンロード指令通知」、「差分データ先行ＨＴＴＰダウンロード指令通知」、「段階的更新」がある。それぞれの方式は後述する。
【００２３】
更新時間２１２は、サーバ処理装置１１０から更新通知データを送付する時間を示している。差分領域ＩＤ２１３は、すでにウェブ端末装置１３０で表示されているＨＴＭＬコンテンツの中に、更新するべき個所をＩＤで予め指定してあり、ウェブ端末装置１３０内のＩＤの中の一つと等しい値を示す。データ種類２１４は、更新情報である差分データ２１５の種類を示す。この種類には、テキスト(Text)属性とファイル属性とＵＲＬ（Uniform Resource Locator）属性がある。
【００２４】
テキスト属性では差分データ２１５を直接記述できる。ファイル属性、ＵＲＬ属性では外部ファイルに格納されたファイルを指定することができる。外部ファイル及びＵＲＬの実態は、ＨＴＴＰコンテンツ１１８として格納されている。テキスト属性の利点は、小さいサイズの差分コンテンツを簡単に記述することができる。ファイル属性の利点は、大きなサイズの差分コンテンツを直接指定することができ、小さなサイズである場合には、差分更新コマンド２１０から更新する本当のデータ部分をファイルに分離することができる。ＵＲＬ属性はファイル属性の利点に加えて、外部のウェブサーバのコンテンツを指すことができる。第２段階差分領域ＩＤ２１６及び第２段階差分ファイル２１７は、更新方法２１１が「段階的更新」を示したときに利用される。
【００２５】
再び図１に戻って説明するに、更新方法決定機能１１１は更新方法２１１が「自動選択」の場合に、差分更新コマンド２１０で指定されたデータサイズと通信コスト監視機能１１４で示される通信コストをもとに最適な更新方法を決定する。すなわち、データサイズが第１の閾値より小さく、ウェブ端末装置１３０の数とデータサイズとの積に相当する総通信コストが第２の閾値より小さい場合には「差分データ直接送付」を選択する。また、データサイズが第１の閾値以上で、上記総通信コストが第２の閾値以上の場合には「差分データ通常ＨＴＴＰダウンロード指令通知」、さらにその場合に実際の更新時間までに猶予があれば「差分データ先行ＨＴＴＰダウンロード指令通知」を選択する。
【００２６】
「差分データ直接送付」はすべてのデータを更新通知データ２２０の１回の通信で送付できるので全体のスループットが速い。これに対してＨＴＴＰ経由で別途ダウンロードする方式は、更新通知データ２２０に加え、ＨＴＴＰトランザクションが必要なので、スループットが遅い。このトレードオフで速い方を選択する。
【００２７】
更新制御機能１１２は、差分更新コマンド２１０から図２（Ｂ）に示す構成の更新通知データ２２０を作成すると共に、ウェブサーバ機能１１５にＨＴＴＰコンテンツ１１８を送付してダウンロードに備える。上記の更新通知データ２２０中の更新方法２２１は、更新方法決定機能１１１が指定する。また、更新通知データ２２０中の差分領域ＩＤ２２２は、差分更新コマンド２１０の差分領域ＩＤ２１３または第２段階差分領域ＩＤ２１６をコピーする。また、更新通知データ２２０中の差分データ２２３は、差分データ２１５又はＨＴＴＰコンテンツ１１８又は差分データのＵＲＬとされる。
【００２８】
すなわち、差分更新コマンド２１０内のデータ種類２１４がテキスト属性の場合は、更新情報がテキストとして格納されているので、更新方法が「差分データ直接送付」なら差分データ２１５を、図２（Ｂ）に示す更新通知データ２２０中の差分データ２２３へコピーする。更新方法が「差分データ直接送付」以外なら、テキストの差分データ２１５をファイルに変換して、ウェブサーバ機能１１５に格納する。このときの差分データ２２３は、ウェブサーバ機能１１５上においた差分データのＵＲＬとなる。
【００２９】
差分更新コマンド２１０内のデータ種類２１４がファイル属性の場合は、更新情報がファイルとしてＨＴＴＰコンテンツ１１８に格納されているので、更新方法が「差分データ直接送付」ならＨＴＴＰコンテンツ１１８を差分データ２２３へコピーする。更新方法が「差分データ直接送付」以外なら、ＨＴＴＰコンテンツ１１８をそのままウェブサーバ機能１１５に格納する。このときの差分データ２２３は、ウェブサーバ機能１１５上においた差分データのＵＲＬとなる。
【００３０】
差分更新コマンド２１０内のデータ種類２１４がＵＲＬ属性の場合は、差分ファイルがすでにウェブサーバ上に存在する。更新方法が「差分データ直接送付」ならＨＴＴＰコンテンツ１１８をダウンロードして差分データ２２３へコピーする。更新方法が「差分データ直接送付」以外なら差分データのＵＲＬを差分データ２２３にコピーする。このときにＵＲＬが相対パスの場合は絶対パスに変換する。
【００３１】
差分通知機能１１３は、更新制御機能１１２から入力される上記の更新通知データ２２０を、ウェブ端末装置１３０の差分更新機能１３１へ転送する。また、差分通知機能１１３は、通信コストを通信コスト監視機能１１４へ通知して、更新方法の決定に反映させる。差分通知機能１１３には多数のウェブ端末装置１３０が接続されており、送信する順番は、更新方法２２１が「差分データ直接送付」の場合には、通信速度が遅いウェブ端末装置１３０から順番に送付する。逆に更新方法２２１が「差分データ直接送付」以外の場合には、通信速度が速いウェブ端末装置１３０から順番に送付する。
【００３２】
「差分データ直接送付」は多数のウェブ端末装置１３０間でなるべく同じ時間に画面を更新することができる。「差分データ直接送付」以外では、多数のウェブ端末装置１３０から多数のトランザクションが発生する場合に、ＨＴＴＰキャッシュ装置１２０にキャッシュヒットすることができ、ウェブサーバ機能１１５の負荷が軽減されて、結果的に差分コンテンツの更新のリアルタイム性が向上する。
【００３３】
ウェブ端末装置１３０は差分更新機能１３１、ＨＴＴＰダウンロード機能１３２、ウェブブラウザ表示手段１３３を含み、ＨＴＴＰコンテンツキャッシュ１３４が付属する。
【００３４】
差分更新機能１３１は、サーバ処理装置１１０内の差分通知機能１１３から転送された更新通知データ２２０を受け取り、その更新通知データ２２０中の更新方法２２１が「差分データ直接送付」の場合には、差分データ２２３をウェブブラウザ表示手段１３３に通知してコンテンツを更新する。更新方法２２１が「差分データ直接送付」以外の場合はＨＴＴＰダウンロードなので、差分更新機能１３１は、ＨＴＴＰダウンロード機能１３２に制御を移す。
【００３５】
ＨＴＴＰダウンロード機能１３２は、差分コンテンツをウェブサーバ機能１１５からＨＴＴＰダウンロードで取得する。差分通知機能１１３から転送された更新通知データ２２０中の更新方法２２１が「差分データ通常ＨＴＴＰダウンロード指令通知」ならば、差分コンテンツをダウンロードした後で、ＨＴＴＰダウンロード機能１３２は、差分更新機能１３１に通知して差分更新機能１３１がウェブブラウザ表示手段１３３へ通知し、コンテンツを更新する。
【００３６】
なお、すでにＨＴＴＰコンテンツキャッシュ１３４に格納されている場合は、ウェブサーバ機能１１５からはダウンロードせずに、ＨＴＴＰコンテンツキャッシュ１３４の内容を利用する。「差分データ先行ＨＴＴＰダウンロード指令通知」ならば、差分コンテンツをダウンロードしたあとで、ＨＴＴＰコンテンツキャッシュ１３４に格納しておく。
【００３７】
次に、主として図３、図４のフローチャートを用いて本実施の形態における動作の流れについて説明する。図３（Ａ）は更新方法決定機能１１１が更新方法を決定する動作を説明するフローチャートである。更新方法決定機能１１１は差分更新コマンド２１０が入力されると（ステップ３１０）、その更新方法２１１を判定し（ステップ３１１）、更新方法２１１が「自動選択」ではない場合には、指定に従った差分更新方法を選択する（ステップ３１２）。
【００３８】
一方、更新方法２１１が「自動選択」の場合は、データ量と通信オーバーヘッドのトレードオフを計算する（ステップ３１３）。更新方法決定機能１１１は計算の結果、データサイズが小さく、総通信コストが小さい場合には「差分データ直接送付」を選択する（ステップ３１５）。計算の結果、データサイズが第１の閾値以上で、総通信コストが第２の閾値以上の場合には「差分データ直接送付」以外のＨＴＴＰダウンロードとする。
【００３９】
ここで、「差分データ直接送付」はすべてのデータを差分通知データ２２０の１回の通信で送付できるので全体のスループットが速い。これに対してＨＴＴＰ経由で別途ダウンロードする方式は、差分通知データ２２０に加え、ＨＴＴＰトランザクションが必要なので、スループットが遅い。このトレードオフで合計が速い方を選択する。
【００４０】
そこで、ＨＴＴＰダウンロードの場合には、まず、更新まで猶予時間があるかどうかを判定する（ステップ３１４）。更新時間２１２と現在時間を比較し、時間差が同一または通信コスト監視機能１１４が示す通信速度がＨＴＴＰダウンロードの転送最小時間を下回っている場合には、ステップ３１７へ制御を移す。上回っている場合には、ステップ３１６へ制御を移す。
【００４１】
ステップ３１６では差分データ先行ＨＴＴＰダウンロード指令通知を行い、多数のウェブ端末装置１３０がＨＴＴＰダウンロードを開始する。そして、現在時間が更新時間２１２になった場合には、ステップ３１７へ制御を移す。ステップ３１７では、すでにＨＴＴＰコンテンツキャッシュ１３４に全差分情報あるいは途中までの差分情報があり、全差分情報がある場合には、すぐに画面に表示し、途中までの差分情報がある場合には、続きをダウンロードしたあとで、表示する。
【００４２】
次に、更新方法決定機能１１１に入力された差分更新コマンド２１０の更新方法２１１が「段階的更新」であるときの動作について、図３（Ｂ）と共に説明する。更新方法決定機能１１１は、ステップ３１２で指定に従った差分更新方式を選択するが、その差分更新方式が「段階的更新」であるものとする（ステップ３２０）。このステップ３２０はベースとなる大きな差分領域を予め送付して、ベースとなる差分領域の中にリアルタイム性を要求する一部の更新領域を更新時問に転送して更新することで、大きな更新のリアルタイム性を向上することが示されている。
【００４３】
差分更新コマンド２１０では、ベース領域を差分領域ＩＤ２１３、ベースデータを差分データ２１５が示すファイルに格納されており、ベース領域内においてリアルタイム性を要求するデータ領域を指定するＩＤを第２段階差分領域ＩＤ２１６に格納し、更新されるデータを第２段階差分ファイル２１７が示すファイルに格納している。
【００４４】
更新方法決定機能１１１は、差分更新方式が「段階的更新」であるものと判定すると、ベース部分を差分データ先行ＨＴＴＰダウンロード指令通知によって、各ウェブ端末装置１３０のＨＴＴＰコンテンツキャッシュ１３４に格納し（ステップ３２１）、更新時間２１２が現在時間になるまで待機する（ステップ３２２）。
【００４５】
待機が終了するまでに、第２段階差分ファイル２１７が示すファイルに、第２段階差分領域ＩＤ２１６の更新に必要なデータを記入する。通常は、常に最新のデータを第２段階差分ファイル２１７が示すファイルに書き込まれる操作を行う。待機が終了すると、最新のデータをファイルから取得する（ステップ３２３）。続いて、ステップ３２１で先行通知したベース部分を表示させるために、ベース部分の差分データＨＴＴＰダウンロード指令通知を行う（ステップ３２４）。
【００４６】
すると、各ウェブ端末装置１３０ではＨＴＴＰコンテンツキャッシュ１３４からベース領域を取得して、ウェブブラウザ表示手段１３３で表示する。そして、ステップ３２４の通知後すぐに動作し、リアルタイム更新部に対して差分データ直接送付を利用して更新通知する（ステップ３２５）。
【００４７】
以上の流れによって、一つの差分更新コマンド２１０から自動的に３つの更新通知を行って、データの一部だけを更新時間の寸前で差し替えることが可能な、大きな領域の差分更新が可能となる。
【００４８】
次に、更新方法決定機能１１１に入力された差分更新コマンド２１０の更新方法２１１が「差分データ通常ＨＴＴＰダウンロード指令通知」であるときの動作について、図４（Ａ）と共に説明する。更新方法決定機能１１１は、ステップ３１２で指定に従った差分更新方式を選択するが、その差分更新方式が「差分データ通常ＨＴＴＰダウンロード指令通知」であるものとする（ステップ３３０）。
【００４９】
すると、更新制御機能１１２は、差分更新コマンド２１０から図２（Ｂ）に示す構成の更新通知データ２２０を作成すると共に、ウェブサーバ機能１１５にＨＴＴＰコンテンツ１１８を送付してダウンロードに備える。上記の更新通知データ２２０中の更新方法２２１は、更新方法決定機能１１１が指定する。また、更新通知データ２２０中の差分領域ＩＤ２２２は、差分更新コマンド２１０の差分領域ＩＤ２１３または第２段階差分領域ＩＤ２１６をコピーする（ステップ３３１）。
【００５０】
続いて、更新通知データ２２０中の差分データ２２３に、更新データのＵＲＬを格納する（ステップ３３２）。差分通知機能１１３は、更新制御機能１１２から入力される上記の更新通知データ２２０を、ウェブ端末装置１３０の差分更新機能１３１へ転送する（ステップ３３３）。
【００５１】
差分更新機能１３１は、更新通知データ２２０を受信すると、その更新通知データ２２０中の更新方法２２１が「差分データ直接送付」以外であり、ＨＴＴＰダウンロードなので、ＨＴＴＰダウンロード機能１３２に制御を移す。これにより、ＨＴＴＰダウンロード機能１３２は、差分コンテンツをウェブサーバ機能１１５からＨＴＴＰダウンロードで取得する（ステップ３３４）。
【００５２】
このとき、すでにＨＴＴＰコンテンツキャッシュ１３４にすべてダウンロード済みならステップ３３５へ移行する。ＨＴＴＰコンテンツキャッシュ１３４に途中までダウンロード済みであった場合には、引き続きダウンロードを行う。ステップ３３５ではＨＴＴＰダウンロード機能１３２からの通知に基づき、差分更新機能１３１がウェブブラウザ表示手段１３３へ通知し、コンテンツを更新する。
【００５３】
次に、更新方法決定機能１１１に入力された差分更新コマンド２１０の更新方法２１１が「差分データ先行ＨＴＴＰダウンロード指令通知」であるときの動作について、図４（Ｂ）と共に説明する。更新方法決定機能１１１は、ステップ３１２で指定に従った差分更新方式を選択するが、その差分更新方式が「差分データ先行ＨＴＴＰダウンロード指令通知」であるものとする（ステップ３４０）。
【００５４】
すると、更新制御機能１１２は、差分更新コマンド２１０から図２（Ｂ）に示す構成の更新通知データ２２０を作成すると共に、ウェブサーバ機能１１５にＨＴＴＰコンテンツ１１８を送付してダウンロードに備える。上記の更新通知データ２２０中の更新方法２２１は、更新方法決定機能１１１が指定する。また、更新通知データ２２０中の差分領域ＩＤ２２２は、差分更新コマンド２１０の差分領域ＩＤ２１３又は第２段階差分領域ＩＤ２１６をコピーする（ステップ３４１）。
【００５５】
続いて、更新通知データ２２０中の差分データ２２３に、更新データのＵＲＬを格納する（ステップ３４２）。差分通知機能１１３は、更新制御機能１１２から入力される上記の更新通知データ２２０を、ウェブ端末装置１３０の差分更新機能１３１へ転送する（ステップ３４３）。差分更新機能１３１は、更新通知データ２２０を受信すると、その更新通知データ２２０中の更新方法２２１が「差分データ直接送付」以外であり、ＨＴＴＰダウンロードなので、ＨＴＴＰダウンロード機能１３２に制御を移す。これにより、ＨＴＴＰダウンロード機能１３２は、差分データをウェブサーバ機能１１５からＨＴＴＰダウンロードで取得する（ステップ３４４）。そして、ダウンロードした差分情報をＨＴＴＰコンテンツキャッシュ１３４に保管する（ステップ３４５）。
【００５６】
基本的にステップ３４０からステップ３４５までの一連の処理が終了すると、引き続き同一差分情報に対してステップ３３０が開始される。このときに差分データはＨＴＴＰコンテンツキャッシュ１３４に格納されているので、瞬時に差分を表示することができる。
【００５７】
また、先行ＨＴＴＰダウンロードが終了していない場合でも、現在時刻が更新時間２１２になった段階で、ステップ３３０が開始される。このとき、ステップ３３４では、ＨＴＴＰコンテンツキャッシュ１３４に差分情報がないか、または一部だけダウンロードされている状態になる。この場合は、ステップ３４０のＨＴＴＰダウンロードのトランザクションとステップ３３４のＨＴＴＰトランザクションが併合され、ステップ３４４のＨＴＴＰトランザクションの終了はステップ３３４のＨＴＴＰトランザクションの終了と同じになる。
【００５８】
次に、更新方法決定機能１１１に入力された差分更新コマンド２１０の更新方法２１１が「差分データ直接送付」であるときの動作について、図４（Ｃ）と共に説明する。更新方法決定機能１１１は、ステップ３１２で指定に従った差分更新方式を選択するが、その差分更新方式が「差分データ直接送付」であるものとする（ステップ３５０）。
【００５９】
すると、更新制御機能１１２は、差分更新コマンド２１０から図２（Ｂ）に示す構成の更新通知データ２２０を作成する（ステップ３５１）。上記の更新通知データ２２０中の更新方法２２１は、更新方法決定機能１１１が指定する。
【００６０】
差分通知機能１１３は、更新制御機能１１２から入力される上記の更新通知データ２２０を、ウェブ端末装置１３０の差分更新機能１３１へ転送する（ステップ３５２）。差分更新機能１３１は、サーバ処理装置１１０内の差分通知機能１１３から転送された更新通知データ２２０を受け取り、その更新通知データ２２０中の更新方法２２１が「差分データ直接送付」であるため、差分データ２２３をウェブブラウザ表示手段１３３に通知してコンテンツを更新する（ステップ３５３）。
【００６１】
【実施例】
次に、本発明の実施例を、図５及び図６を参照して説明する。図５は差分更新対象となるＨＴＭＬ文書例４１０、差分情報のＨＴＭＬ文書例４２０、２段階差分更新の２段階目が記述されたファイルの中身４３０を示す。差分更新対象となるＨＴＭＬ文書例４１０の中にはＤＩＶタグが４つあり、それぞれ一意のＩＤが振られている。この例ではＤＩＶタグの中身が、差分情報のＨＴＭＬ文書例４２０の差分情報に随時更新される。なお、差分更新対象となるＨＴＭＬ文書例４１０には差分更新プログラムのスクリプト言語が挿入され、差分更新機能１３１とやり取りが行われる。
【００６２】
図６は差分更新コマンドの一例４４０を示す。それぞれの行が差分更新コマンドであり、セミコロンでデータが区切られている。最初の項目から、スケジュール番号、更新方法２１１、更新時間２１２、差分領域ＩＤ２１３、データ種類２１４、差分データ２１５であり、段階的更新の場合には、第２段階差分領域ＩＤ２１６、第２段階差分ファイル２１７がある。
【００６３】
更新方法は「ＤｉｒｅｃｔＳｅｎｄ」が「差分データ直接送付」、「ＨｔｔｐＤｏｗｎｌｏａｄ」が「差分データ通常ＨＴＴＰダウンロード指令通知」、「ＰｒｅＤｏｗｎｌｏａｄ」が「差分データ先行ＨＴＴＰダウンロード指令通知」、「ＤｏｕｂｌｅＳｔｅｐ」が「段階的更新」、「Ａｕｔｏ」が「自動選択」を示す。
【００６４】
また、図６に示す更新通知データ４５０は、差分更新コマンド４４０に対応した更新通知データの例である。それぞれの行が差分通知データであり、最初の項目から、便宜上つけた行番号、更新方法２２１、差分領域ＩＤ２２２、差分データ２２３となる。「ＰｒｅＤｏｗｎｌｏａｄ」と「ＤｏｕｂｌｅＳｔｅｐ」は複数の更新通知データを利用する。
【００６５】
次に、差分更新コマンド４４０について順に説明する。ｉｎｎｅｒ１.ｈｔｍｌ〜ｉｎｎｅｒ５.ｈｔｍｌは差分情報４２０を基本とする文書である。ｒｅａｌｔｉｍｅ.ｔｘｔは２段階差分更新の２段階目が記述されたファイルの中身４３０である。
【００６６】
差分更新コマンド４４０のスケジュール番号１０は、１２時００分００秒にＤＩＶＴＥＳＴ１タグを＜ＦＯＮＴ＞テスト成功＜／ＦＯＮＴ＞＜ＢＲ＞に更新するために、差分データ直接送付を行うことを示している。更新通知データは１０番である。
【００６７】
差分更新コマンド４４０のスケジュール番号２０は、１２時００分１０秒にＤＩＶＴＥＳＴ１タグを＜ＦＯＮＴ＞＜／ＦＯＮＴ＞＜ＢＲ＞に更新するために差分データ直接送付を行うことを示している。スケジュール番号１０で記述した内容が空白になる効果がある。更新通知データは２０番である。
【００６８】
差分更新コマンド４４０のスケジュール番号３０は、１２時００分２０秒にＤＩＶＴＥＳＴ２タグをファイルｄａｔａ￥ｉｎｎｅｒ１.ｈｔｍｌの中身に更新するために、差分データ通常ＨＴＴＰダウンロード指令通知を行うことを示している。更新通知データは３０番である。
【００６９】
差分更新コマンド４４０のスケジュール番号４０は、１３時００分００秒にＤＩＶＴＥＳＴ２タグをファイルｄａｔａ￥ｉｎｎｅｒ２.ｈｔｍｌの中身に更新するために差分データ先行ＨＴＴＰダウンロード指令通知を行うことを示している。実際の先行ダウンロードは１３時００分００秒よりも前に行われ、更新通知データ４１番を転送する。先行通知の開始時間は、通信コスト監視機能１１４からの最低通信速度から計算される転送時間に数分程度の一定の余裕を持たせて決定する。
【００７０】
１３時００分００秒に差分データ通常ＨＴＴＰダウンロード指令通知が行われ、更新通知データ４２番を転送する。４１番と４２番の差分領域ＩＤと差分データは同一の内容である。
【００７１】
差分更新コマンド４４０のスケジュール番号５０は、１４時００分００秒にＤＩＶＴＥＳＴ２タグをファイルｄａｔａ￥ｉｎｎｅｒ３.ｈｔｍｌの中身に更新するために更新方法を自動選択する。この場合はｉｎｎｅｒ３.ｈｔｍｌのサイズが大きいので、差分データ通常ＨＴＴＰダウンロード指令通知を行うことを示している。更新通知データは５０番である。
【００７２】
差分更新コマンド４４０のスケジュール番号６０は、１５時００分００秒にＤＩＶＴＥＳＴ３タグをＵＲＬ  ｈｔｔｐ：／／ｉｎｔｅｒｎｅｔ２.ｃｏｍ／ｉｎｎｅｒ４.ｈｔｍｌの中身に更新するために、差分データ通常ＨＴＴＰダウンロード指令通知を行うことを示している。絶対パスのＵＲＬなのでそのままＵＲＬを更新通知データに記述する。更新通知データは６０番である。
【００７３】
差分更新コマンド４４０のスケジュール番号７０は、１５時００分３０秒にＤＩＶＴＥＳＴ３タグをＵＲＬ  ｉｎｎｅｒ４.ｈｔｍｌの中身に更新するために、差分データ通常ＨＴＴＰダウンロード指令通知を行うことを示している。相対パスのＵＲＬなのでパスを追加して、ＵＲＬを更新通知データに記述する。更新通知データは７０番である。
【００７４】
差分更新コマンド４４０のスケジュール番号８０は段階的更新である。１６時００分００秒にＤＩＶＴＥＳＴ４タグをＵＲＬ  ｉｎｎｅｒ５.ｈｔｍｌの中身、及びｒｅａｌｔｉｍｅ．ｔｘｔの中身に更新する。まず、ＤＩＶＴＥＳＴ４タグに対して、ファイルｄａｔａ￥ｉｎｎｅｒ５．ＨＴＭＬの中身に更新するために、差分データ先行ＨＴＴＰダウンロード指令通知を行う。このコマンドの発行時間はスケジュール番号４０と同様の先行時間である。更新通知データは８１番である。
【００７５】
１６時００分００秒になったら、ＤＩＶＴＥＳＴ４タグに対して、ファイルｄａｔａ￥ｉｎｎｅｒ５.ｈｔｍｌの中身に更新するために、差分データ通常ＨＴＴＰダウンロード指令通知を行う。更新通知データは８２番である。８２番の実行時にはすでにウェブ端末装置１３０のＨＴＴＰコンテンツキャッシュ１３４に差分データが蓄積されていることが多く、すぐに画面に反映できる。連続して、ＤＩＶＴＥＳＴ５タグに対して、ファイルｒｅａｌｔｉｍｅ．ｔｘｔの中身に更新するために、差分データ直接送付が行われる。更新通知データは８３番である。この差分通知データによって、「最新の統計データは９５％」という画面が、差分情報４２０の中の一部に反映させることができる。
【００７６】
【発明の効果】
以上説明したように、本発明によれば、第一の効果は更新コンテンツの大きさに依存した最適な更新通知方法を自動的にサーバ側で選択して多数のウェブ端末間のリアルタイムな画面同期を可能にすることである。その理由は、サーバ処理装置において、更新方法決定機能が監視機能からの通信コスト情報と更新データサイズとのトレードオフを計算して、大量のウェブ端末間の画面をリアルタイム同期するのに最適な更新方法を選択することで、大量のウェブ端末間で同期してウェブブラウザの画面を更新しているからである。
【００７７】
また、本発明の第二の効果は、大きな差分コンテンツをサーバから通知するときに、ウェブ端末間でリアルタイムに同期できることである。その理由は、ウェブ端末において、情報が書き換えられるより前に、ベースとなる差分情報を先行的に差分情報をＨＴＴＰダウンロードし、ウェブ端末のＨＴＴＰコンテンツキャッシュにキャッシュし、リアルタイムに書き換えられる情報を、更新時間になったらサーバ処理装置から送信する２段階の更新方法を自動的に更新方法決定機能が指定しているからである。
【００７８】
更に、本発明の第三の効果は、差分データ直接送付に関してはウェブ端末間の同期のリアルタイム性を向上することができ、差分データＨＴＴＰダウンロード指令通知及び差分データの先行ダウンロード指令通知では、差分コンテンツの更新のリアルタイム性を向上することができることである。その理由は、差分データ直接送付の場合には、複数のウェブ端末のうち通信速度が遅いウェブ端末から順番に転送し、差分データＨＴＴＰダウンロード指令通知又は差分データの先行ダウンロード指令通知の場合には、複数のウェブ端末のうち通信速度が速いウェブ端末から順番に転送することにより、サーバ処理装置内のサーバ機能の負荷を分散するとともに通信経路上のＨＴＴＰキャッシュにヒットする確立を向上させることができるようにしたためである。
【図面の簡単な説明】
【図１】本発明の一実施の形態のシステム構成図である。
【図２】本発明の一実施の形態のデータ構造図である。
【図３】本発明の一実施の形態における更新通知までの処理を示すフローチャートである。
【図４】本発明の一実施の形態における更新通知移行の処理を示すフローチャートである。
【図５】本発明の一実施例の文書構造である。
【図６】本発明の一実施例の差分更新コマンドと差分通知データである。
【符号の説明】
１１０  サーバ処理装置
１１１  更新方法決定機能
１１２  更新制御機能
１１３  差分通知機能
１１４  通信コスト監視機能
１１５  ウェブサーバ機能
１１６  更新指示手段
１１７  更新スケジュール
１１８  ＨＴＴＰコンテンツ
１２０  ＨＴＴＰキャッシュ装置
１３０  ウェブ（Ｗｅｂ）端末装置
１３１  差分更新機能
１３２  ＨＴＴＰダウンロード機能
１３３  ウェブブラウザ表示手段
１３４  ＨＴＴＰコンテンツキャッシュ
２１０  差分更新コマンド
２１１  更新方法
２１２  更新時間
２１３  差分領域ＩＤ
２１４  データ種類
２１５  差分データ
２１６  第２段階差分領域ＩＤ
２１７  第２段階差分ファイル
２２０  更新通知データ
２２１  更新方法
２２２  差分領域ＩＤ
２２３  差分データ
４１０  差分更新対象となるＨＴＭＬ文書例
４２０  差分情報のＨＴＭＬ文書例
４３０  ２段階差分更新の２段階目
４４０  差分更新コマンドの例
４５０  更新通知データの例
【図１】
0003969173.tif 000002
【図２】
0003969173.tif 000003
【図３】
0003969173.tif 000004
【図４】
0003969173.tif 000005
【図５】
0003969173.tif 000006
【図６】
0003969173.tif 000007