(57)【要約】【課題】  クライアント端末それぞれの状況に応じてタスクを実行させることができる情報処理システムを提供する【解決手段】管理サーバは、クライアント端末毎の稼働状況、必要なタスク状況を管理している。また、クライアント端末は、ハートビートを管理サーバに送信し、自機の稼働状態を通知する。管理サーバは、クライアント端末からハートビートの返信情報に、タスクに関するタスク情報を挿入し、クライアント端末に返信する。これにより、クライアント端末は、タスクに関する情報と、自機の状況とを勘案して、実行すべきタスクの要否を判断し、タスクに必要なデータファイルの管理サーバへの取得タイミングを独自に決定し、タスク実行のタイミングも決定できる。【選択図】図１
2013097548.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末と、
このクライアント端末を管理する管理サーバと
を含み、
前記クライアント端末は、
少なくとも自機の稼働状態を示す情報が含まれた通知データを、前記管理サーバに送信する送信手段
を有し、
前記管理サーバは、
前記クライアント端末からの通知データに対して、返信情報を返信する返信手段と、
前記返信情報に、前記クライアント端末のタスクに関するタスク情報を挿入する情報挿入手段と
を有する情報処理システム。
【請求項２】
クライアント端末からの通知データに対して、返信情報を返信する返信手段と、
前記返信情報に、前記クライアント端末が実行すべきタスクに関するタスク情報を挿入する情報挿入手段と
を有する情報処理装置。
【請求項３】
前記情報挿入手段は、前記タスク情報として、タスク種別、タスクの実行に要する時間を示す情報、タスクの優先順位、関連する他のタスクを示す情報、配信ファイルの有無、配信ファイルのデータサイズ、及び、タスクに要するデータファイルの版数、の少なくとも一つを挿入する
請求項２に記載の情報処理装置。
【請求項４】
前記情報挿入手段は、前記タスク情報として、タスクの実行に必要なデータファイルを要求すべきタイミングを示す情報を挿入する
請求項２に記載の情報処理装置。
【請求項５】
クライアント端末が通知データを送信すべき間隔を示すデータ通知間隔を設定する間隔設定手段
をさらに有し、
前記情報挿入手段は、前記返信情報に、前記間隔設定手段により変更されたデータ通知間隔を挿入する
請求項２に記載の情報処理装置。
【請求項６】
タスクの優先順位とデータ通知間隔とに関連付けられて、タスク情報を格納するタスク情報格納手段
をさらに有し、
前記情報挿入手段は、前記タスク情報格納手段に格納されている前記タスク情報の中から、前記優先順位に応じた順序で、タスク情報と、そのタスクに関連付けられたデータ通知間隔とを挿入する
請求項５に記載の情報処理装置。
【請求項７】
前記タスク情報格納手段は、直列的な順序で実行すべき複数のタスクを、関連タスクとして互いに関連付けて格納し、
前記情報挿入手段は、前記タスク情報格納手段に関連タスクとして格納された複数のタスクのタスク情報を、連続する複数の通知データに対する返信情報に、順に挿入する
請求項６に記載の情報処理装置。
【請求項８】
少なくとも自機の稼働状態を示す情報が含まれた通知データを、外部装置に送信する送信手段と、
前記送信手段により送信された通知データの返信情報に応じて、タスクの実行に必要な前処理を行う前処理手段と、
前記前処理手段により前処理が行われた後に、タスクを実行する実行手段と
を有するクライアント端末。
【請求項９】
前記返信情報には、タスクの種別を示すタスク種別が含まれており、
前記前処理手段は、前記タスク種別に基づいて、タスク実行の要否を判断し、
前記実行手段は、前記前処理手段によりタスクの実行が必要であると判断された場合に、このタスクを実行する
請求項８に記載のクライアント端末。
【請求項１０】
前記返信情報には、データファイルを要求するタイミングを指定する情報が含まれており、
前記前処理手段は、前記返信情報により指定されたタイミングで、データファイルを取得し、
前記実行手段は、前記前処理手段により取得されたデータファイルを用いて、タスクを実行する
請求項９に記載のクライアント端末。
【請求項１１】
前記返信情報には、次に実行すべきタスクの存在を示す関連タスク情報が含まれており、
前記前処理手段は、前記返信情報に含まれる関連タスク情報に応じて、タスクの実行完了を、次に実行すべきタスクの要求情報として外部装置に通知する
請求項８に記載のクライアント端末。
【請求項１２】
前記送信手段は、送信した通知データに対応する返信情報が既定の期間に受信できなかった場合、通知データの送信間隔を自機のデフォルト値に戻す
請求項８に記載のクライアント端末。
【請求項１３】
前記返信情報には、タスクの優先順位を示す情報が含まれており、
前記前処理手段は、前記実行手段により実行されているタスクの優先順位と、前記返信情報により通知されたタスクの優先順位とを比較し、通知されたタスクの優先順位が実行中のタスクよりも高い場合に、実行中のタスクをキャンセルし、
前記前処理手段によりタスクがキャンセルされた旨を、前記外部装置に通知するタスク制御手段
をさらに有する請求項８に記載のクライアント端末。
【請求項１４】
前記タスク制御手段は、互いに関連付けられた複数のタスクのいずれかが失敗した場合に、実行済みの他の関連付けられたタスクを、実行前の状態に戻し、関連タスクをキャンセルした旨を外部装置に通知する
請求項１３に記載のクライアント端末。
【請求項１５】
前記タスク制御手段は、互いに関連付けられた複数のタスクよりも優先順位の高いタスクが前記返信情報により通知された場合に、実行済みの関連付けられたタスクを、実行前の状態に戻し、関連タスクをキャンセルした旨を外部装置に通知する
請求項１３に記載のクライアント端末。
【請求項１６】
前記送信手段は、タスクの実行中に、通知データを送信するタイミングが到来した場合、タスクの進捗情報を外部装置に通知する
請求項８に記載のクライアント端末。
【請求項１７】
クライアント端末が、少なくとも自機の稼働状態を示す情報が含まれた通知データを、管理サーバに送信するステップと、
前記管理サーバが、前記クライアント端末から受信した通知データに対する返信情報に、タスクに関するタスク情報を挿入するステップと、
前記管理サーバが、前記タスク情報が挿入された返信情報を、前記クライアント端末に返信するステップと、
前記クライアント端末が、前記返信情報に挿入されたタスク情報に応じて、タスクの前処理を行うステップと
を有する情報処理方法。
【請求項１８】
クライアント端末からのデータ通知に対して返信情報を返信するステップと、
前記返信情報に、前記クライアント端末のタスクに関するタスク情報を挿入するステップと
をコンピュータに実行させるプログラム。
【請求項１９】
少なくとも自機の稼働状態を示す情報が含まれた通知データを、送信するステップと、
送信された前記通知データの返信情報に応じて、タスクの実行に必要な前処理を行うステップと、
前処理後に、タスクを実行する実行ステップと
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムに関する。
【背景技術】
【０００２】
例えば、特許文献１には、複数のクライアントから前記クライアントの識別データを有する要求情報を、所定の期間に受信する受信手段と、前記識別データにより、前記複数のクライアントを識別するテスト手段と、前記所定の期間に、前記要求情報を発信していない前記クライアントに関するアラーム信号を生成するアラーム手段と、前記テスト手段により識別された任意のクライアントへの、応答データを生成する生成手段と、前記任意のクライアントに、前記応答データを送信する送信手段とを具備することを特徴とするデータ配信システムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−３３４８９８
【発明の概要】
【発明が解決しようとする課題】
【０００４】
クライアント端末それぞれの状況に応じてタスクを実行させることができる情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明に係る情報処理システムは、クライアント端末と、このクライアント端末を管理する管理サーバとを含み、前記クライアント端末は、少なくとも自機の稼働状態を示す情報が含まれた通知データを、前記管理サーバに送信する送信手段を有し、前記管理サーバは、前記クライアント端末からの通知データに対して、返信情報を返信する返信手段と、前記返信情報に、前記クライアント端末のタスクに関するタスク情報を挿入する情報挿入手段とを有する。
【０００６】
本発明に係る情報処理装置は、クライアント端末からの通知データに対して、返信情報を返信する返信手段と、前記返信情報に、前記クライアント端末が実行すべきタスクに関するタスク情報を挿入する情報挿入手段とを有する。
【０００７】
好適には、前記情報挿入手段は、前記タスク情報として、タスク種別、タスクの実行に要する時間を示す情報、タスクの優先順位、関連する他のタスクを示す情報、配信ファイルの有無、配信ファイルのデータサイズ、及び、タスクに要するデータファイルの版数、の少なくとも一つを挿入する。
【０００８】
好適には、前記情報挿入手段は、前記タスク情報として、タスクの実行に必要なデータファイルを要求すべきタイミングを示す情報を挿入する。
【０００９】
好適には、クライアント端末が通知データを送信すべき間隔を示すデータ通知間隔を設定する間隔設定手段をさらに有し、前記情報挿入手段は、前記返信情報に、前記間隔設定手段により変更されたデータ通知間隔を挿入する。
【００１０】
好適には、タスクの優先順位とデータ通知間隔とに関連付けられて、タスク情報を格納するタスク情報格納手段をさらに有し、前記情報挿入手段は、前記タスク情報格納手段に格納されている前記タスク情報の中から、前記優先順位に応じた順序で、タスク情報と、そのタスクに関連付けられたデータ通知間隔とを挿入する。
【００１１】
好適には、前記タスク情報格納手段は、直列的な順序で実行すべき複数のタスクを、関連タスクとして互いに関連付けて格納し、前記情報挿入手段は、前記タスク情報格納手段に関連タスクとして格納された複数のタスクのタスク情報を、連続する複数の通知データに対する返信情報に、順に挿入する。
【００１２】
本発明に係るクライアント端末は、少なくとも自機の稼働状態を示す情報が含まれた通知データを、外部装置に送信する送信手段と、前記送信手段により送信された通知データの返信情報に応じて、タスクの実行に必要な前処理を行う前処理手段と、前記前処理手段により前処理が行われた後に、タスクを実行する実行手段とを有する。
【００１３】
好適には、前記返信情報には、タスクの種別を示すタスク種別が含まれており、前記前処理手段は、前記タスク種別に基づいて、タスク実行の要否を判断し、前記実行手段は、前記前処理手段によりタスクの実行が必要であると判断された場合に、このタスクを実行する。
【００１４】
好適には、前記返信情報には、データファイルを要求するタイミングを指定する情報が含まれており、前記前処理手段は、前記返信情報により指定されたタイミングで、データファイルを取得し、前記実行手段は、前記前処理手段により取得されたデータファイルを用いて、タスクを実行する。
【００１５】
好適には、前記返信情報には、次に実行すべきタスクの存在を示す関連タスク情報が含まれており、前記前処理手段は、前記返信情報に含まれる関連タスク情報に応じて、タスクの実行完了を、次に実行すべきタスクの要求情報として外部装置に通知する。
【００１６】
好適には、前記送信手段は、送信した通知データに対応する返信情報が既定の期間に受信できなかった場合、通知データの送信間隔を自機のデフォルト値に戻す。
【００１７】
好適には、前記返信情報には、タスクの優先順位を示す情報が含まれており、前記前処理手段は、前記実行手段により実行されているタスクの優先順位と、前記返信情報により通知されたタスクの優先順位とを比較し、通知されたタスクの優先順位が実行中のタスクよりも高い場合に、実行中のタスクをキャンセルし、前記前処理手段によりタスクがキャンセルされた旨を、前記外部装置に通知するタスク制御手段をさらに有する。
【００１８】
好適には、前記タスク制御手段は、互いに関連付けられた複数のタスクのいずれかが失敗した場合に、実行済みの他の関連付けられたタスクを、実行前の状態に戻し、関連タスクをキャンセルした旨を外部装置に通知する。
【００１９】
好適には、前記タスク制御手段は、互いに関連付けられた複数のタスクよりも優先順位の高いタスクが前記返信情報により通知された場合に、実行済みの関連付けられたタスクを、実行前の状態に戻し、関連タスクをキャンセルした旨を外部装置に通知する。
【００２０】
好適には、前記送信手段は、タスクの実行中に、通知データを送信するタイミングが到来した場合、タスクの進捗情報を外部装置に通知する。
【００２１】
本発明に係る情報処理方法は、クライアント端末が、少なくとも自機の稼働状態を示す情報が含まれた通知データを、管理サーバに送信するステップと、前記管理サーバが、前記クライアント端末から受信した通知データに対する返信情報に、タスクに関するタスク情報を挿入するステップと、前記管理サーバが、前記タスク情報が挿入された返信情報を、前記クライアント端末に返信するステップと、前記クライアント端末が、前記返信情報に挿入されたタスク情報に応じて、タスクの前処理を行うステップとを有する。
【００２２】
本発明に係るプログラムは、クライアント端末からのデータ通知に対して返信情報を返信するステップと、前記返信情報に、前記クライアント端末のタスクに関するタスク情報を挿入するステップとをコンピュータに実行させるプログラム。
【００２３】
本発明に係るプログラムは、少なくとも自機の稼働状態を示す情報が含まれた通知データを、送信するステップと、送信された前記通知データの返信情報に応じて、タスクの実行に必要な前処理を行うステップと、前処理後に、タスクを実行する実行ステップとをコンピュータに実行させる。
【発明の効果】
【００２４】
クライアント端末それぞれの状況に応じてタスクを実行させることができる。
【図面の簡単な説明】
【００２５】
【図１】データ通信システム１の概要を説明する図である。
【図２】データ応答プログラム５０の機能構成を説明する図である。
【図３】タスク管理部５４０をより詳細に説明する図である。
【図４】タスク情報管理テーブルを例示する図である。
【図５】データ通知プログラム７０の機能構成を説明する図である。
【図６】タスク制御部７２０をより詳細に説明する図である。
【図７】ハートビート通知への応答処理（Ｓ５０）を説明するフローチャートである。
【図８】クライアント端末９のハートビート送信処理（Ｓ７０）を説明するフローチャートである。
【図９】クライアント端末９の優先順位に基づいたタスクの適用処理（Ｓ８０）を説明するフローチャートである。
【図１０】関連タスク適用失敗時のロールバック処理（Ｓ９０）を説明するフローチャートである。
【図１１】クライアント端末のタスク適用状況管理テーブルを例示する図である。
【図１２】クライアント端末の関連タスク適用状況管理テーブルを例示する図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態を、図面を参照して説明する。
図１は、データ通信システム１の概要を説明する図である。
図１に例示するように、本実施形態のデータ通信システム1は、管理サーバ５と、クライアント端末９Ａ〜９Ｃとを有する。管理サーバ５は、コンピュータ端末であり、サーバ機能を有する。クライアント端末９は、コンピュータ端末であり、ネットワークを介して管理サーバ５と接続されている。クライアント端末９は、例えば、さまざまな地点に配置された情報端末やＡＴＭ機であり、管理サーバ５により管理される対象である。
例えば、管理サーバ５とクライアント端末９との間には、ファイアウォールなどが設置され、ｈｔｔｐ及びｈｔｔｐｓなどの一部の通信のみが許可されている。
本例のクライアント端末９が、ｈｔｔｐ通信を用いて、ハートビートを管理サーバ５に送信することにより、管理サーバ５は、ファイアウォール越しに、クライアント端末９の稼働状況（死活）を監視する。
【００２７】
図２は、データ応答プログラム５０の機能構成を説明する図である。
図２に例示するように、データ応答プログラム５０は、ハートビート応答部５００と、端末情報管理部５２０と、タスク管理部５４０とを有する。
データ応答プログラム５０は、例えば、CD-ROMなどの記録媒体を介して、管理サーバ５にインストールされたコンピュータプログラムである。
【００２８】
ハートビート応答部５００は、クライアント端末９からの通知データに対して返信情報を返信する。より具体的には、ハートビート応答部５００は、ハートビート通知を受信したクライアント端末の稼働状態を、端末情報管理部５２０とタスク管理部５４０とに通知する。また、ハートビート応答部５００は、他の構成より通知された情報をハートビート通知の返信情報に挿入して、クライアント端末９へ通知する。
【００２９】
端末情報管理部５２０は、端末情報ＤＢ６００が保持する端末情報管理テーブルに対して、情報の取得及び更新を行う。端末情報管理テーブルは、クライアント端末９の識別情報（ＭＡＣアドレスなど）と、その端末の稼働状態とを保持する。より具体的には、端末情報管理部５２０は、ハートビート応答部５００より通知されたクライアント端末９の稼働状態に基づいて、端末情報管理テーブルを更新する。
【００３０】
なお、ハートビート応答部５００は、本発明の返信手段の一例である。また、ハートビート応答部５００、端末情報管理部５２０及びタスク管理部５４０の組合せは、本発明の情報挿入手段の一例である。ここで、タスクとは、クライアント端末が実行する処理であり、例えば、自機にインストールされているソフトウェアのアップデート処理、バックアップデータの作成処理などである。
【００３１】
図３は、タスク管理部５４０をより詳細に説明する図である。
図３に例示するように、タスク管理部５４０は、タスク優先順位管理部５４２と、ハートビート通知間隔管理部５４４と、関連タスク定義部５４６と、タスク適用状況管理部５４８とから構成される。
タスク管理部５４０は、タスク情報の取得や更新をタスク情報ＤＢ６２０に対して行う。ここで、タスク情報とは、タスクに関する情報であり、例えば、タスクの属性情報などである。情報の取得及び更新対象は、タスク情報ＤＢ６２０が保持する、タスク情報管理テーブルである。
図４は、タスク情報管理テーブルを例示する図である。
図４に例示するように、タスク情報管理テーブルは、タスク情報ＩＤ、タスク種別、タスクの優先順位、関連タスクＩＤ、配信ファイルの有無、データサイズ、版数、適用所要時間を保持する。配信ファイルの有無は、タスクの実行に必要なデータファイルをクライアント端末９に送信する必要があるかどうかを示す。本例のタスク情報には、さらに、タスクに必要なデータファイルを要求すべきタイミングと、タスクに紐づくデータ通知間隔とが含まれる。タスク種別は、タスクの種別を示す。タスクの優先順位とは、タスクの実行の優先順位を示す。関連タスクＩＤとは、互いに関連付けられた他のタスクを識別するための情報であり、例えば、次に実行すべきタスクのＩＤである。データサイズとは、配信ファイル（すなわち、タスクの実行に要するデータファイル）のデータサイズである。版数とは、配信ファイルの版数である。適用所要時間とは、タスクの実行に要する目安時間である。
【００３２】
タスク優先順位管理部５４２は、予め設定されたタスクの優先順位に従って、クライアント端末９に通知すべきタスクを決定する。具体的には、タスク優先順位管理部５４２は、クライアント端末９からハートビート応答部５００がハートビートを受信すると、このクライアント端末９の情報（ＩＤなど）に基づいて、ハートビート受信時にタスク情報管理テーブルに登録されているタスクの中から、より優先順位の高いタスクを選択する。これにより、クライアント端末９に通知すべきタスクが複数存在していた場合は、優先順位の最も高いタスクの情報がクライアント端末９に通知される。タスク優先順位管理部５４２は、選択したタスクのタスク情報をハートビートの返信情報に挿入するよう、ハートビート応答部５００に指示する。
【００３３】
ハートビート通知間隔管理部５４４は、クライアント端末９が通知データ（具体的には、ハートビート）を送信すべき間隔を示すデータ通知間隔を設定する。例えば、ハートビート通知間隔管理部５４４は、タスク情報に関連付けられるハートビート通知間隔を、タスク管理テーブルより取得し、取得されたハートビート通知間隔をハートビート応答部５００に通知する。また、ハートビート通知間隔管理部５４４は、管理者の指示に応じて、クライアント端末９のハートビート通知間隔を任意の値に変更できる。
【００３４】
関連タスク定義部５４６は、直列的な順序で実行すべき複数のタスクを関連タスクとして互いに関連付けておき、既定の順序で、関連付けられた複数のタスクをハートビート応答部５００に通知する。
【００３５】
タスク適用状況管理部５４８は、クライアント端末毎に、タスクの通知状況（タスク情報が通知済みであるか否か）、及び、タスクの実行状況（タスクの実行中、タスク実行済み、タスクの実行失敗、又は、タスクの実行前）を管理する。具体的には、タスク適用状況管理部５４８は、クライアント端末毎にタスク適用状況を管理するタスク適用状況管理テーブルと、クライアント端末毎の関連タスク適用状況を管理する関連タスク適用状況管理テーブルとを保持し、ハートビートに含まれる情報（タスクの実行状況など）に基づいて、各テーブルを更新する。タスク適用状況管理テーブルと、関連タスク適用状況管理テーブルとは、端末情報ＤＢ６００に格納される。
【００３６】
図５は、データ通知プログラム７０の構成を説明する図である。
図５に例示するように、データ通知プログラム７０は、ハートビート送信部７００と、タスク制御部７２０と、ハートビート通知管理部７４０とを有する。
データ通知プログラム７０は、例えば、CD-ROMなどの記録媒体を介して、クライアント端末9Ａ〜9Ｃにインストールされたコンピュータプログラムである。
なお、本例の通知データとは、クライアント端末が少なくとも稼働中であることをｈｔｔｐ通信で定期的に通知するハートビートである。
【００３７】
ハートビート送信部７００は、少なくとも自機の稼働状態を示す情報が含まれた通知データを、管理サーバ５に送信する。例えば、ハートビート送信部７００は、クライアント端末９自身の稼働状態と、タスク適用状況と、タスクの適用結果とをハートビートのパケットに挿入し、定期的に管理サーバ５に対して送信する。また、ハートビート送信部７００は、管理サーバ５から受信したタスク情報（ハートビートの返信情報に含まれる情報）を、タスク制御部７２０へ通知する。さらに、ハートビート送信部７００は、管理サーバ５から、タスクの実行に必要なデータファイルを取得する。なお、ハートビート送信部７００は、他のサーバ（例えば、管理サーバ５により指定されたアクセス先）から、タスクの実行に必要なデータファイルを取得してもよい。
【００３８】
タスク制御部７２０は、タスクの実行に必要な前処理を行い、タスクを実行する。タスク制御部７２０は、図６に例示するように、タスク判断部７２２と、タスク取得通知部７２４と、タスク適用部７２６とを有する。
タスク判断部７２２は、管理サーバ５より通知された返信情報に含まれるタスク種別に基づいて、タスク実行の要否を判断する。例えば、タスク判断部７２２は、タスク種別に基づいて、タスクが自身に対して適用可能なタスクかどうかを判断する。さらに、タスク判断部７２２は、自身の現在の処理状態を取得し、タスク適用が可能な状態かどうかを判断する。現在処理中のタスクが存在した場合は、タスク判断部７２２は、現在処理中のタスクの優先順位と、管理サーバ５より通知されたタスクの優先順位とを比較し、優先順位によって現在のタスクについて、「続行」又は「キャンセル」をタスク適用部７２６に指示する。
【００３９】
タスク取得通知部７２４は、データファイルの取得が必要なタスクである場合、管理サーバ５よりタスク情報と共に通知されたデータファイル取得のタイミングを保持する。タスク取得通知部７２４は、保持しているデータファイル取得のタイミングが到来した場合に、ハートビート送信部７００にデータファイルの取得を依頼する。
【００４０】
タスク適用部７２６は、ハートビートの返信情報を介して通知されたタスク情報又は関連タスク情報に応じて、タスクを実行し、実行完了を管理サーバ５へ通知する。例えば、タスク適用部７２６は、タスクを実行し、実行済みタスクの適用結果と、実行中のタスクの進捗状況とを一時的にファイルもしくはメモリ上で保持しておく。保持すると同時に、タスク適用部７２６は、タスクの適用結果を管理サーバに送信するようハートビート送信部７００に指示する。さらに、タスク適用部７２６は、関連タスクの実行が途中で失敗した場合は、既に実行済みの関連タスクをタスク実行前の状態に復元する。
【００４１】
ハートビート通知管理部７４０は、管理サーバ５より通知されたハートビート通知間隔を保持する。ハートビート通知管理部７４０は、ハートビート通知間隔に従って、定期的に、ハートビート送信部７００にハートビート通知を依頼する。ハートビート送信部７００により、ハートビートの返信情報が受信できなかった場合は、ハートビート通知管理部７４０は、設定されているハートビートの通知間隔を、クライアント端末が保有している既定の通知間隔（デフォルト値）に変更する。
【００４２】
図７は、ハートビート通知への応答処理（Ｓ５０）である。
図７に例示するように、ステップ５００（Ｓ５００）において、ハートビート応答部５００は、クライアント端末９からのハートビート通知を受信する。さらに、ハートビート応答部５００は、ハートビート通知を端末情報管理部５２０と、タスク管理部５４０とに通知する。
ステップ５０５（Ｓ５０５）において、端末情報管理部５２０は、クライアント端末９の識別情報と、その稼働状態とを端末情報ＤＢ６００に登録する。
ステップ５１０（Ｓ５１０）において、タスク管理部５４０は、タスク情報テーブルを参照して、ハートビート通知を受けたクライアント端末９に対して通知すべきタスクが存在するか否かを判断する。
タスクが存在する場合は、ハートビート通知への応答処理（Ｓ５０）は、Ｓ５１５へ移行する。タスクが存在しない場合は、ハートビート通知への応答処理（Ｓ５０）は、Ｓ５３５へ移行する。
ステップ５１５（Ｓ５１５）において、タスク管理部５４０は、クライアント端末９へ通知するタスク情報をタスク情報テーブルより取得する。
ステップ５２０（Ｓ５２０）において、タスク管理部５４０は、タスク情報テーブルを参照して、通知するタスクについて、クライアント端末９にデータファイルを送信する必要があるか否かを判断する。
データファイルの送信が必要である場合は、ハートビート通知への応答処理（Ｓ５０）は、Ｓ５２５へ移行する。データファイルの送信が不要である場合は、ハートビート通知への応答処理（Ｓ５０）は、Ｓ５３０へ移行する。
ステップ５２５（Ｓ５２５）において、タスク管理部５４０は、タスク情報テーブルよりタスク取得可能となる時間とタスク情報とを取得し、ハートビート応答部５００へ通知する。
ステップ５３０（Ｓ５３０）において、タスク管理部５４０は、タスク情報テーブルよりタスク情報とタスク適用状況を取得し、ハートビート応答部５００へ通知する。
ステップ５３５（Ｓ５３５）において、ハートビート通知間隔管理部５４４は、タスクに関連付けられるハートビート通知間隔を決定し、ハートビート応答部５００へ通知を依頼する。通知すべきタスクが存在しなかった場合、ハートビート通知間隔管理部５４４は、ハートビート間隔を変更せず、前回通知したハートビート間隔を再度通知させる。
ハートビート応答部５００は、通知された情報をクライアント端末９へ通知する。
【００４３】
図８は、クライアント端末９のハートビート送信処理（Ｓ７０）である。
図８に例示するように、ステップ７００（Ｓ７００）において、ハートビート送信部７００は、管理サーバ５からハートビート通知の応答を受信する。
ステップＳ７０５（Ｓ７０５）において、受信した情報に、タスク情報が存在していればハートビート送信処理（Ｓ７０）は、Ｓ７１０へ移行し、存在しなければ、ハートビート送信処理（Ｓ７０）は終了する。
ステップ７１０（Ｓ７１０）において、タスク判断部７２２は、通知されたタスクが自機に適用可能かどうかを判断する。適用可能な場合は、ハートビート送信処理（Ｓ７０）はＳ７１５へ移行し、適用不可な場合は、ハートビート送信処理（Ｓ７０）は終了する。
ステップ７１５（Ｓ７１５）において、タスク判断部７２２は、通知タスクは、データ取得の必要があるかを判断する。必要がある場合は、ハートビート送信処理（Ｓ７０）は、Ｓ７２０へ移行し、必要がない場合は、ハートビート送信処理（Ｓ７０）は、Ｓ７３５へ移行する。
ステップ７２０（Ｓ７２０）において、タスク判断部７２２は、通知タスクが即時適用可能か判断する。即時適用可能な場合は、ハートビート送信処理（Ｓ７０）は、Ｓ７３０へ移行する。即時適用不可な場合は、ハートビート送信処理（Ｓ７０）は、ステップ７２５へ移行する。
ステップ７２５（Ｓ７２５）において、タスク取得通知部７２４は、タスク取得時間が到来するまで待機する。タスク取得時間が到来すると、ハートビート通知への応答処理（Ｓ１０）は、ステップ７３０へ移行する。
ステップ７３０（Ｓ７３０）において、タスク取得通知部７２４は、ハートビート送信部７００に管理サーバ５へのタスクの取得を通知する。
ステップ７３５（Ｓ７３５）において、タスク適用部７２６は、通知タスクを適用し、適用結果をハートビート送信部へ通知する。ハートビート送信部７００は、タスクの適用結果を管理サーバ５へ通知する。
【００４４】
図９は、クライアント端末９の優先順位に基づいたタスクの適用処理（Ｓ８０）である。
図９に例示するように、ステップ８００（Ｓ８００）において、ハートビート送信部７００は、管理サーバ５からハートビート通知の応答としてタスク情報を受信する。
ステップ８０５（Ｓ８０５）において、タスク判断部７２２は、適用中のタスクが存在するか確認する。存在した場合は、優先順位に基づいたタスクの適用処理（Ｓ８０）は、Ｓ８１０へ移行し、存在しない場合は、優先順位に基づいたタスクの適用処理（Ｓ８０）は、Ｓ８３０へ移行する。
ステップ８１０（Ｓ８１０）において、タスク判断部７２２は、通知されたタスクと適用中のタスクの優先順位を比較する。通知タスクの優先順位が高ければ、優先順位に基づいたタスクの適用処理（Ｓ８０）は、Ｓ８１５へ移行する。通知タスクの優先順位が低ければ、優先順位に基づいたタスクの適用処理（Ｓ８０）は、Ｓ８２５へ移行する。
ステップ８１５（Ｓ８１５）において、タスク判断部７２２は、現在実行中のタスクのキャンセルをタスク適用部７２６に通知し、タスク適用部７２６は、適用中のタスクをキャンセルする。
ステップ８２０（Ｓ８２０）において、タスク適用部７２６は、キャンセルしたことをハートビート送信部７００に通知する。
ステップ８２５（Ｓ８２５）において、タスク適用部７２６は、適用中のタスクが完了するまで待機する。待機後、優先順位に基づいたタスクの適用処理（Ｓ８０）は、ステップ８３０（Ｓ８３０）へ移行する。
ステップ８３０（Ｓ８３０）において、タスク取得通知部７２４は、通知されたタスクデータを取得するようにハートビート送信部７００に通知し、タスクデータを取得する。
ステップ８３５（Ｓ８３５）において、タスク適用部７２６は、タスクを適用し、適用結果をハートビート送信部７００へ通知する。ハートビート送信部７００は、管理サーバ５にタスク適用結果を通知する。
【００４５】
図１０は、関連タスク適用失敗時のロールバック処理（Ｓ９０）を説明するフローチャートである。
図１０に例示するように、ステップ９００（Ｓ９００）においてタスク適用部７２６が、タスクの適用に失敗すると、タスク適用失敗をタスク判断部７２２へ通知する。
ステップ９０５（Ｓ９０５）において、タスク判断部７２２は、適用失敗したタスクが関連タスクかどうかを判断する。関連タスクの場合は、関連タスク適用失敗時のロールバック処理（Ｓ９０）は、Ｓ９１０に移行する。関連タスクでない場合は、関連タスク適用失敗時のロールバック処理（Ｓ９０）は、Ｓ９２０へ移行する。
ステップ９１０（Ｓ９１０）において、タスク判断部７２２は、適用済みの関連タスクが存在するかどうかを判断する。存在した場合は、関連タスク適用失敗時のロールバック処理（Ｓ９０）は、Ｓ９１５へ移行する。存在しなかった場合は、関連タスク適用失敗時のロールバック処理（Ｓ９０）は、Ｓ９２０移行する。
ステップ９１５（Ｓ９１５）において、タスク適用部７２６は、適用済みタスクをロールバックする。
ステップ９２０（Ｓ９２０）において、タスク適用部７２６は、適用失敗をハートビート送信部７００に通知する。ハートビート送信部７００は、通知された情報を管理サーバ５へ送信する。
【００４６】
図１１は、クライアント端末のタスク適用状況管理テーブルを例示する図である。
図１１に例示するように、タスク適用状況管理テーブルは、端末情報ＤＢ６００に格納される。タスク適用状況管理テーブルは、端末ＩＤ、適用タスク情報ＩＤ、適用状態、適用状況を保持する。適用状態は、タスク適用中を示す適用中、タスク適用済みを示す適用済み、タスク適用を保留している適用待ち、及び、タスク適用失敗の適用エラーのステータスが存在する。適用を保留している状態とは、対象のクライアント端末に適用予定のタスクが複数存在する場合に、タスクの優先順位を比較した際、優先順位が低く、クライアント端末へのタスクの通知が即時で必要のない状態を示す。
【００４７】
図１２は、クライアント端末の関連タスク適用状況管理テーブルを例示する図である。
図１２に例示するように、関連タスク適用状況管理テーブルは、端末情報ＤＢ６００に格納される。関連タスク適用状況管理テーブルは、端末ＩＤ、関連タスクＩＤ、適用状態、関連タスク適用状況を保持する。適用状態は、タスク適用中を示す適用中、タスク適用済みを示す適用済み、タスク適用を保留している適用待ち、及び、タスク適用失敗の適用エラーのステータスが存在する。適用を保留している状態とは、対象のクライアント端末に適用予定のタスクが複数存在する場合に、タスクの優先順位を比較した際、優先順位が低く、クライアント端末へのタスクの通知が即時で必要のない状態を示す。
【００４８】
以上説明したように、本実施形態のデータ通信システム１において、クライアント端末９は、ハートビートを用いて、自機の稼働状況を管理サーバ５へ定期的に通知し、管理サーバ５は、ハートビートの返信情報に、タスクに要するデータファイルのデータサイズなどのタスク情報を挿入してクライアント端末９へ通知する。これにより、クライアント端末９は、タスク情報（データサイズ）と自機の情報（リソースの状況など）とに基づいて、タスク実行に要するデータファイルの取得と、タスクの実行とを行う。また、クライアント端末９から定期的に稼働状況を管理サーバ５へ通知するため、ファイアウォールなどにより稼働状態の監視が困難なネットワーク環境においても、管理サーバ５は、クライアント端末の稼働状態を管理できる。さらに、クライアント端末９は、タスク情報として、タスクの種別を取得するため、タスク実行の要否を独自に判断できる。また、クライアント端末９は、タスク情報として、タスクに要する推定処理時間や、タスクに要するデータファイルの配信期間などを取得するため、自機の都合に合わせて、データファイルの取得タイミングや、タスクの実行タイミングなどを決定できる。これらはまた、クライアント端末９と管理サーバ５との間の不要なデータ通信を省き、ネットワーク負荷の軽減に資する。さらに、クライアント端末９は、自機の処理状況に応じてタスクの取得・実行するため、自機によるサービスレベルの向上が期待できる。
【００４９】
次に、上記実施形態の変形例を説明する。
本実施形態では、管理サーバ５は、クライアント端末９から管理サーバ５へのタスク取得時間を指定しているが、例えば、タスク取得時間は、特定時間以前、特定時間帯、または、特定時間以降のように指定してもよい。
【符号の説明】
【００５０】
１…データ通信システム
５…管理サーバ
９…クライアント端末
５０…データ応答プログラム
７０…データ送信プログラム
６００…端末情報データベース
６２０…タスク情報データベース
【図１】
2013097548.tif 000003
【図２】
2013097548.tif 000004
【図３】
2013097548.tif 000005
【図４】
2013097548.tif 000006
【図５】
2013097548.tif 000007
【図６】
2013097548.tif 000008
【図７】
2013097548.tif 000009
【図８】
2013097548.tif 000010
【図９】
2013097548.tif 000011
【図１０】
2013097548.tif 000012
【図１１】
2013097548.tif 000013
【図１２】
2013097548.tif 000014