(57)【要約】【課題】メッセージキューイング方式を用いた通信システムにおいて、データの送信タイミングを制御する。【解決手段】通信システムは、少なくとも１つのキューと、起動時刻と転送データとを含む要求データが少なくとも１つ記憶された転送テーブルと、前記転送テーブルに記憶された要求データ各々について、当該要求データの起動時刻を経過したか否かを判別する送信制御手段と、起動時刻を経過した要求データの転送データを、前記キューに書き込む登録手段と、前記キューに書き込まれた転送データを、メッセージキューイング方式を用いて他システムに送信する送信手段と、を有する。【選択図】図１
2007166186.tif 000002
【特許請求の範囲】
【請求項１】
通信システムであって、
少なくとも１つのキューと、
起動時刻と転送データとを含む要求データが、少なくとも１つ記憶された転送テーブルと、
前記転送テーブルに記憶された要求データ各々について、当該要求データの起動時刻を経過したか否かを判別する送信制御手段と、
起動時刻を経過した要求データの転送データを、前記キューに書き込む登録手段と、
前記キューに書き込まれた転送データを、メッセージキューイング方式を用いて他システムに送信する送信手段と、を有すること
を特徴とする通信システム。
【請求項２】
請求項１記載の通信システムであって、
前記転送テーブルに記憶された要求データの取消指示を受け付けて、当該取消指示で指定された要求データの起動時刻を前記転送テーブルから削除する取消手段を、さらに有し、
前記送信制御手段は、起動時刻が削除された要求データについては、起動時刻を経過しないと判別すること
を特徴とする通信システム。
【請求項３】
請求項１記載の通信システムであって、
前記要求データには、優先度がさらに含まれ、
前記送信制御手段は、前記要求データの優先度に対応するキューを特定し、
前記登録部は、前記起動時刻を経過した要求データの転送データを、前記送信制御手段が特定したキューに書き込むこと
を特徴とする通信システム。
【請求項４】
請求項１または請求項３記載の通信システムであって、
前記キュー各々の状態を監視する監視手段を、さらに有し、
前記送信制御手段は、各キューの状態に基づいて、前記起動時刻を経過した前記要求データのキューを特定し、
前記登録部は、前記起動時刻を経過した要求データの転送データを、前記送信制御手段が特定したキューに書き込むこと
を特徴とする通信システム。
【請求項５】
通信システムが行う通信方法であって、
前記通信システムは、
少なくとも１つのキューと、
起動時刻と転送データとを含む要求データが、少なくとも１つ記憶された転送テーブルと、
処理部と、を有し、
前記処理部は、
前記転送テーブルに記憶された要求データ各々について、当該要求データの起動時刻を経過したか否かを判別する送信制御ステップと、
起動時刻を経過した要求データの転送データを、前記キューに書き込む登録ステップと、
前記キューに書き込まれた転送データを、メッセージキューイング方式を用いて他システムに送信する送信ステップと、を行うこと
を特徴とする通信方法。
【請求項６】
通信システムが行う通信プログラムであって、
前記通信システムは、
少なくとも１つのキューと、
起動時刻と転送データとを含む要求データが、少なくとも１つ記憶された転送テーブルと、
処理部と、を有し、
前記処理部に、
前記転送テーブルに記憶された要求データ各々について、当該要求データの起動時刻を経過したか否かを判別する送信制御ステップと、
起動時刻を経過した要求データの転送データを、前記キューに書き込む登録ステップと、
前記キューに書き込まれた転送データを、メッセージキューイング方式を用いて他システムに送信する送信ステップと、を実行させること
を特徴とする通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メッセージキューイング方式を用いた通信技術に関する。
【背景技術】
【０００２】
アプリケーションプログラム間で非同期にデータを送受信する技術として、メッセージキューイング（ＭＱ：message queueing）が存在する。メッセージキューイングでは、キューと呼ばれる領域にデータを格納することにより、相手方アプリケーションプログラムの応答を待つことなく、次の処理を実行することができる。なお、特許文献１には、メッセージキューイングを用いた非同期通信方法および非同期通信装置が記載されている。
【特許文献１】特開平７−２３９８１９
【発明の開示】
【発明が解決しようとする課題】
【０００３】
オンラインで各種の処理の実行指示を入力するシステムにおいて、実行時間が長い処理については実行結果などの応答を待つことは非効率である。そこで、非同期にデータを送信（転送）するメッセージキューイングを適用して、処理を実行することが考えられる。
【０００４】
しかしながら、メッセージキューイングでは、キューに格納された実行指示データは、自動的にアプリケーションサーバなどに送信され、処理が実行される。そのため、所望の時間に処理を実行したい場合であっても、一旦、キューに格納されたデータは、送信先のアプリケーションサーバのキューから取り出されたタイミングで実行されてしまう。すなわち、メッセージキューイングを用いてデータを送信する場合、データの送信タイミングを制御することができず、したがって、ユーザは所望の時間に処理を実行することができない。
【０００５】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、メッセージキューイングを用いた通信システムにおいて、データの送信タイミングを制御することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明では、例えば、通信システムであって、少なくとも１つのキューと、起動時刻と転送データとを含む要求データが、少なくとも１つ記憶された転送テーブルと、前記転送テーブルに記憶された要求データ各々について、当該要求データの起動時刻を経過したか否かを判別する送信制御手段と、起動時刻を経過した要求データの転送データを、前記キューに書き込む登録手段と、前記キューに書き込まれた転送データを、メッセージキューイング方式を用いて他システムに送信する送信手段と、を有する。
【発明の効果】
【０００７】
本発明では、メッセージキューイングを用いた通信システムにおいて、データの送信タイミングを制御することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態について説明する。
【０００９】
図１は、本発明の一実施形態が適用された通信システムの全体構成図である。本実施形態の通信システムは、ユーザ端末１と、入力サーバ２と、基盤サーバ３と、少なくとも１つの業務サーバ４と、を有する。そして、ユーザ端末１は、インターネットまたはＬＡＮなどのネットワーク９により、入力サーバ２および業務サーバ４と接続されている。また、入力サーバ２および業務サーバ４は、ＬＡＮなどのネットワーク８により、基盤サーバ３と接続されている。
【００１０】
ユーザ端末１は、ユーザが入力した各種の処理の実行指示および取消指示を受け付け、ネットワーク９を介して入力サーバ２に送信する。なお、ユーザが入力する処理の実行指示は、例えば、データマイニングに必要なレポートの作成指示、統計データの作成指示などである。なお、データマイニングは、データベースに蓄積された各種データを解析し、データ項目間の相関関係やパターンなど探し出す技術である。ユーザは、所望の様々な内容の処理（非定型な処理）の実行指示を、ユーザ端末１を用いてオンラインで入力する。
【００１１】
入力サーバ２は、ユーザ端末１から入力された指示を受け付けて、基盤サーバ３の転送テーブル３７を更新する。図示する入力サーバ２は、転送テーブル登録部２１と、取消部２２と、を有する。転送テーブル登録部２１は、ユーザ端末１が送信した処理の実行指示を受け付け、受け付けた指示を転送テーブル３７に登録する。取消部２２は、ユーザ端末１が送信した取消指示を受け付けて、転送テーブル３７に登録された実行指示を取り消す。
【００１２】
基盤サーバ３は、転送テーブル３７に登録されたデータを、メッセージキューイング方式を用いて、業務サーバ４に送信（転送）する。図示する基盤サーバ３は、送信制御部３１と、キュー登録部３２と、キュー管理部（送信部）３３と、監視部３４と、少なくとも１つのキュー３６と、転送テーブル３７と、を有する。
【００１３】
送信制御部３１は、転送テーブル３７に登録されたデータが送信可能な状態か否かを判別し、転送テーブル３７の送信制御フラグを更新する。キュー登録部３２は、送信制御部３１が送信可能な状態と判別したデータを、転送テーブル３７から読み出し、キュー３６に書き込む。キュー管理部３３は、キュー３６に書き込まれたデータを、ネットワーク８を介して、メッセージキューイング方式により業務サーバ４に送信する。監視部３４は、キュー３６の状態を監視する。
【００１４】
キュー３６は、業務サーバ４に送信するデータが一時的に格納される領域である。基盤サーバ３の各キュー３６と、各業務サーバ４のキュー４３とは、メッセージチャネルによりそれぞれ対応付けられているものとする。なお、本実施形態の各キュー３６は、優先度毎に分類されている。例えば、基盤サーバ３は、優先度が高いデータ用のキュー３６と、優先度が中のデータ用のキュー３６と、優先度が低いデータ用のキュー３６と、を備える。なお、優先度が高いデータ用のキュー３６の数は、優先度が中または低いデータ用のキュー３６の数より比較的多く備えられ、優先度が高いデータは優先的に処理されるものとする。
【００１５】
転送テーブル３７には、入力サーバ２が登録したデータが記憶される。なお、転送テーブル３７については後述する。なお、本実施形態の転送テーブル３７は、基盤サーバ３が備えるテーブルである。しかしながら、基盤サーバ３および入力サーバ２からアクセス可能なデータベースサーバ（不図示）が、転送テーブル３７を備えることとしてもよい。
【００１６】
業務サーバ４各々は、メッセージキューイング方式を用いて基盤サーバ３からデータを受信し、所定の業務処理を行う。業務サーバ４は、業務処理部４１と、キュー管理部（受信部）４２と、キュー４３とを有する。業務処理部４１は、キュー４３からデータを取り出し、当該データに設定された業務処理（例えば、レポートの作成等）を行う。
【００１７】
キュー管理部４２は、メッセージキューイング方式により非同期に、基盤サーバ３からデータを受信する。キュー４３には、基盤サーバ３から受信したデータが一時的に格納される。
【００１８】
上記説明したユーザ端末１、入力サーバ２、基盤サーバ３、および、業務サーバ４は、いずれも、例えば図２に示すようなＣＰＵ９０１と、メモリ９０２と、ＨＤＤ等の外部記憶装置９０３と、キーボードやマウスなどの入力装置９０４と、ディスプレイやプリンタなどの出力装置９０５と、ネットワークと接続するための通信制御装置９０６と、を備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、ＣＰＵ９０１がメモリ９０２上にロードされた所定のプログラムを実行することにより、各装置の各機能が実現される。
【００１９】
例えば、入力サーバ２、基盤サーバ３、および、業務サーバ４の各機能は、入力サーバ２用のプログラムの場合は入力サーバ２のＣＰＵ９０１が、基盤サーバ３用のプログラムの場合は基盤サーバ３のＣＰＵ９０１が、そして、業務サーバ４用のプログラムの場合は業務サーバ４のＣＰＵ９０１が、それぞれ実行することにより実現される。なお、基盤サーバ３のキュー３６および転送テーブル３７には、基盤サーバ３のメモリ９０２または外部記憶装置９０３が用いられるものとする。また、業務サーバ４のキュー４３には、基盤サーバ３のメモリ９０２または外部記憶装置９０３が用いられるものとする。また、入力装置９０４および出力装置９０５については、各装置が必要に応じて備えるものとする。
【００２０】
次に、入力サーバ２の処理について説明する。
【００２１】
まずユーザは、各種の処理の実行指示をユーザ端末１に入力する。なお、実行指示には、処理の開始時刻と、処理の優先度と、処理の内容とが含まれている。ユーザ端末１は、入力された実行指示を、入力サーバ２に送信する。入力サーバ２の転送テーブル登録部２１は、実行指示を受信し、受信した実行指示に基づいて生成した要求データを、転送テーブル３７に登録する。
【００２２】
図３は、転送テーブル３７の一例を示す図である。図示する転送テーブル３７は、要求データ毎に、シーケンス番号３７１と、送信制御フラグ３７２と、送信済みフラグ３７３と、起動時刻３７４と、優先度３７５と、振分キュー３７６と、転送データ３７７とを有する。送信制御フラグ３７２は、転送データ３７７をキュー３６に書き込むタイミングを制御するためのフラグである。送信制御フラグ３７２の初期値は、例えば「ＯＦＦ」あるものとする。送信制御部３１は、送信可能な状態となった要求データの送信制御フラグ３７２を、例えば「ＯＮ」に変更する。
【００２３】
送信済みフラグ３７３は、転送データ３７７の送信状況（すなわち、キュー３６に書き込んだか否か）を示すフラグである。送信済みフラグ３７２は、未送信状態（初期値）を示す「未」と、送信済み状態（キューに書き込んだ状態）を示す「済」と、取消指示を受け付けた状態を示す「取消」の３つのステータスを有する。なお、キュー登録部３２が、送信済みフラグ３７３の更新を行う。
【００２４】
起動時刻３７４には、転送データ３７７の処理の開始時刻が設定される。優先度３７５には、本実施形態では「高」、「中」、「低」のいずれかが設定される。振分キュー３７６には、送信制御部３１が特定した所定のキュー３６の識別情報（キューＩＤ）が設定される。転送データ３７７は、ユーザがユーザ端末１を用いて入力した処理内容が設定される。
【００２５】
転送テーブル登録部２１は、シーケンス番号３７１に所定の連番を、送信制御フラグ３７２には「ＯＦＦ」を、送信済みフラグ３７３には「未」を、起動時刻３７４および優先度３７５には実行指示で指定された値を、振分キュー３７６にはスペース（空白）を、転送データ３７７には実行指示で指定された処理の内容を、それぞれ設定した要求データを生成し、転送テーブル３７に登録する。
【００２６】
なお、実行指示に起動時刻が含まれていない場合（ユーザが起動時刻を指定しない場合）は、転送テーブル登録部２１は、ＯＳ（Operating System）のタイマー機能などから取得した現在の時刻を起動時刻に設定する。これにより、当該要求データは、後述する送信制御部３１およびキュー登録部３２の処理により、リアルタイムでキュー３６に書き込まれ、業務サーバ４での処理が即時に開始される。
【００２７】
また、ユーザの属性（所属部署、役職）に応じて、実行指示で指定可能な優先度を制御することとしてもよい。例えば、本社に所属するユーザまたはユーザ端末１の場合は「高」、「中」または「低」の優先度を指定できるが、営業店に所属するユーザまたはユーザ端末１の場合は「中」または「低」の優先度しか指定できないものとする。ユーザ端末１または転送テーブル登録部２１は、ログイン時に入力するユーザＩＤ（またはユーザ端末ＩＤ）に応じて、指定可能な優先度をチェックするものとする。
【００２８】
また、ユーザは、ユーザ端末１から入力した処理の実行指示を取り消すことができる。すなわち、ユーザは、転送テーブル３７に登録された要求データの中から、所定の要求データの取消指示をユーザ端末１に入力する。そして、ユーザ端末１は、入力された取消指示を入力サーバ２に送信する。入力サーバ２の取消部２２は、取消指示を受信し、転送テーブル３７から取消指示で指定された要求データを特定する。そして、取消部２２は、特定した要求データの送信済みフラグ３７３を「未」から「取消」に変更するとともに、起動時刻３７４に設定された時刻を削除してスペース（空白）にする。これにより、後述する送信制御部３１およびキュー登録部３２の処理において、取消指示で指定された要求データは業務サーバ４に送信されないため、実行指示で指定した処理をキャンセルすることができる。
【００２９】
次に、基盤サーバ３の送信制御部３１の処理について説明する。
【００３０】
図４は、送信制御部３１の処理のフローチャートである。送信制御部３１は、所定のタイミングで（例えば、ｎ秒毎に）、ＯＳなどのタイマー機能から現在時刻を取得する（Ｓ１１）。そして、送信制御部３１は、転送テーブル３７に登録された要求データ（レコード）各々の起動時刻を参照し、現在時刻を経過した起動時間が設定された要求データ（すなわち現在時刻が起動時刻に達した要求データ）が存在するか否かを判別する（Ｓ１２）。
【００３１】
現在時刻を経過した要求データが存在しない場合（Ｓ１２：ＮＯ）、送信制御部３１はＳ１１に戻る。なお、入力サーバ２の取消部２２が取り消した要求データの場合、起動時刻がスペースになっているため、送信制御部３１は、現在時刻を経過しないものと判別する。
【００３２】
現在時刻を経過した要求データが存在する場合（Ｓ１２：ＹＥＳ）、送信制御部３１は、当該要求データの優先度を転送テーブル３７から取得する。そして、送信制御部３１は、取得した優先度に応じて所定のキュー３６を決定する（Ｓ１３）。なお、キュー３６の決定処理については後述する。そして、送信制御部３１は、決定したキュー３６のキューＩＤを転送テーブル３７の当該要求データの振分キューに設定する（Ｓ１４）。
【００３３】
そして、送信制御部３１は、転送テーブル３７の当該要求データの送信制御フラグを、「ＯＦＦ」から「ＯＮ」に更新する（Ｓ１５）。そして、送信制御部３１は、Ｓ１１に戻り、所定のタイミングで繰り返し図４に示す処理を行う。なお、現在時刻を経過した要求データが複数存在する場合（Ｓ１２：ＹＥＳ）、送信制御部３１は、Ｓ１３からＳ１５の処理を要求データ毎にそれぞれ実行する。
【００３４】
図５は、キューの決定処理（図４：Ｓ１３）のフローチャートである。
【００３５】
送信制御部３１は、転送テーブル３７を参照し、起動時刻が現在時刻を経過した要求データ（以下、「対象要求データ」）の優先度を取得する（Ｓ２１）。そして、送信制御部３１は、監視部３４を用いて、各キュー３６の状態を取得する（Ｓ２２）。監視部３４は、各キュー３６をモニタリングし、各キュー３６内に滞留しているデータ（メッセージ）の数を送信制御部３１に提供する。
【００３６】
そして、送信制御部３１は、Ｓ２１で取得した優先度に対応する各キューの状態を参照し、対応する全てのキューにおいて所定の閾値を超えるデータがキューに滞留しているか否かを判別する（Ｓ２３）。なお、本実施形態では、前述のとおり、優先度毎に、所定のキューが少なくとも１つ割り当てられているものとする。
【００３７】
滞留しているデータ数が閾値未満のキューが存在する場合（Ｓ２３：ＮＯ）、送信制御部３１は、閾値未満の所定のキューのキューＩＤを、転送テーブル３７の対象要求データの振分キューに設定する（Ｓ２７）。例えば、送信制御部３１は、データ数が閾値未満のキューのうち、最もデータ数が少ないキューのキューＩＤを振分キューに設定することが考えられる。
【００３８】
閾値を超えるデータが全てのキューに滞留している場合（Ｓ２３：ＹＥＳ）、送信制御部３１は、Ｓ２１で取得した優先度より下位の（すなわち、低い）優先度が存在するか否かを判別する（Ｓ２４）。具体的には、取得した優先度が「高」の場合、「高」より下位の「中」および「低」が存在するため、送信制御部３１は下位の優先度が存在すると判別する。同様に、取得した優先度が「中」の場合、「中」より下位の「低」が存在するために、送信制御部３１は下位の優先度が存在すると判別する。一方、取得した優先度が「低」の場合、「低」より下位の優先度が存在しないため、送信制御部３１は下位の優先度が存在しないと判別する。
【００３９】
下位の優先度が存在しない場合（Ｓ２４：ＮＯ）、Ｓ２６に進む。一方、下位の優先度が存在する場合（Ｓ２４：ＹＥＳ）、送信制御部３１は、下位の優先度に対応する各キューの状態を参照し、対応する全てのキューにおいて所定の閾値を超えるデータがキューに滞留しているか否かを判別する（Ｓ２５）。なお、送信制御部３１は、取得した優先度が「高」の場合は「中」および「低」に割り当てられた各キューを、また、取得した優先度が「中」の場合は「低」に割り当てられた各キューを、参照して判別する。
【００４０】
下位の優先度に対応する各キューにおいて、滞留しているデータ数が閾値未満のキューが存在する場合（Ｓ２５：ＮＯ）、送信制御部３１は、閾値未満の所定のキューのキューＩＤを、転送テーブル３７の対象要求データの振分キューに設定する（Ｓ２７）。例えば、送信制御部３１は、データ数が閾値未満のキューのうち、最もデータ数が少ないキューのキューＩＤを振分キューに設定することが考えられる。
【００４１】
一方、下位の優先度に対応する各キューにおいて、全てのキューに滞留しているデータ数が閾値を超える場合（Ｓ２５：ＹＥＳ）、送信制御部３１は、取得した優先度および当該優先度より低い優先度に割り当てられた所定のキューＩＤを、転送テーブル３７の対象要求データの振分キューに設定する（Ｓ２６）。例えば、送信制御部３１は、滞留しているデータ数が最も少ないキューのキューＩＤを設定することが考えられる。なお、下位の優先度が存在しない場合（Ｓ２４：ＮＯ）、送信制御部３１は、取得した優先度に割り当てられた所定のキューＩＤを、振分キューに設定する（Ｓ２６）。
【００４２】
以上説明したキューの決定処理により、送信制御部３１は、要求データの優先度に応じてキューを決定する。これにより、優先的に実行を開始したいデータと、そうでないデータとを振り分け、効率の良い処理を実現することができる。また、送信制御部３１は、各キューの状態を参照して動的にキューを決定する。これにより、適切にデータを負荷分散し、同時実行数を制御することができる。
【００４３】
次に、基盤サーバ３のキュー登録部３２の処理について説明する。
【００４４】
図６は、キュー登録部３２の処理のフローチャートである。キュー登録部３２は、所定のタイミングで定期的に（例えば、ｎ秒毎に）、転送テーブル３７の送信済みフラグを参照し、送信済みフラグに「ＯＮ」が設定された要求データが存在するか否かを判別する（Ｓ３１）。「ＯＮ」が設定された要求データが存在する場合（Ｓ３１：ＹＥＳ）、キュー登録部３２は、当該要求データの送信済みフラグを参照し、「未（未送信状態）」が設定されているか否かを、さらに判別する（Ｓ３２）。
【００４５】
送信済みフラグが「未」の場合（Ｓ３２：ＹＥＳ）、キュー登録部３２は、当該要求データの振分キューに設定されたキューＩＤを特定する。そして、キュー登録部３２は、当該要求データのシーケンス番号および転送データ（以下、「転送データ等」）を、特定したキューＩＤのキューに書き込む（Ｓ３３）。そして、キュー登録部３２は当該要求データの送信済みフラグを「未」から「済（送信済み状態）」に更新する（Ｓ３４）。そして、キュー登録部３２は、Ｓ３１に戻り、所定のタイミングで繰り返し図６に示す処理を行う。
【００４６】
送信制御フラグに「ＯＮ」が設定された要求データが存在しない場合（Ｓ３１：ＮＯ）、あるいは、送信済みフラグが「済」または「取消」の場合（Ｓ３２：ＮＯ）、Ｓ３１の処理に戻る。なお、「ＯＮ」が設定された要求データが複数存在する場合（Ｓ３１：ＹＥＳ）、キュー登録部３２は、Ｓ３２からＳ３４の処理を要求データ毎にそれぞれ実行する。
【００４７】
なお、キュー登録部３２は、所定のタイミングで、転送テーブル３７に登録された転送データ（送信済みフラグが「済」および「取消」の転送データ）を、削除するものとする。例えば、キュー登録部３２は、Ｓ３４において転送テーブル３７の送信済みフラグを「済」に更新した後、転送テーブル３７の各送信済みフラグを参照する。そして、キュー登録部３２は、送信済みフラグが「済」または「取消」となっている全ての転送データを削除し、Ｓ３１の処理に戻ることが考えられる。これにより、転送データをキューに書き込み、送信済みフラグを「済」に更新したタイミングで、送信済みの転送データと、取消となった転送データとを、併せて削除することができる。
【００４８】
以上説明した基盤サーバ３の処理により、転送テーブル３７に登録された転送データ等は、ユーザが指定した起動開始時刻に所定のキュー３６に書き込まれる。そして、キュー管理部（送信部）３３は、キューに書き込まれた転送データ等を、メッセージキューイングにより所定の業務サーバ４のキュー４３に送信する。そして、業務サーバ４のキュー管理部４２は、メッセージキューイングにより転送データ等を受信し、キュー４３に格納する。そして、業務処理部４１は、キュー４３から転送データ等を取り出し、転送データの処理を実行する。
【００４９】
本実施形態では、ユーザ端末１からオンラインで入力された処理の実行指示が、入力サーバ２を介して、基盤サーバ３の転送テーブル３７に登録される。そして、基盤サーバ３は、実行指示で指定された起動時刻に転送テーブルに登録された転送データ等を、キューに書き込む。これにより、転送データ等を業務サーバ４に送信する送信タイミングを制御することができる。すなわち、ユーザが指定した起動時刻に、業務システムで処理を実行することができる。
【００５０】
また、本実施形態では、入力サーバ２の取消部２２が、ユーザ端末１の取消指示を受け付けて、転送テーブル３７に登録された要求データを起動時刻および送信済みフラグを更新する。これにより、ユーザは、必要に応じて、指示した処理の実行を取り消すことができる。
【００５１】
また、本実実施形態では、転送データ等を書き込むキューを、優先度およびキューの状態に応じて動的に決定する（図５参照）。これにより、優先的に実行を開始したいデータと、そうでないデータとを振り分け、効率の良い処理を実現することができる。また、適切にデータを負荷分散し、同時実行数を制御することができる。
【００５２】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、上記実施形態の転送テーブル３７（図３参照）は、送信制御フラグ３７２と送信済みフラグ３７３の２つのフラグを有する。しかしながら、転送テーブル３７は、送信制御フラグ３７２と送信済みフラグ３７３とを統合した１つの統合フラグを有することとしてもよい。この場合、統合フラグは、少なくとも４つのステータスを有するものとする。例えば、初期状態、送信制御部３１が初期状態から更新する送信可能状態、キュー登録部３２が更新する送信済み状態、入力サーバ２の取消部が更新する取消状態の４つのステータスが考えられる。
【図面の簡単な説明】
【００５３】
【図１】本発明の一実施形態が適用された通信システムの全体構成図である。
【図２】各装置のハードウェア構成例を示す図である。
【図３】転送テーブルの一例を示す図である。
【図４】送信制御部の全体処理のフローチャートである。
【図５】送信制御部のキュー決定処理のフローチャートである。
【図６】キュー登録部の処理のフローチャートである。
【符号の説明】
【００５４】
１：ユーザ端末、２：入力サーバ、２１：転送テーブル登録部、２２：取消部、３：基盤サーバ、３１：送信制御部、３２：キュー登録部、３３：キュー管理部、３４：監視部、３６：キュー、３７：転送テーブル、４：業務サーバ、４１：業務処理部、４２：キュー管理部、４３：キュー、８：ネットワーク、９：ネットワーク
【図１】
2007166186.tif 000003
【図２】
2007166186.tif 000004
【図３】
2007166186.tif 000005
【図４】
2007166186.tif 000006
【図５】
2007166186.tif 000007
【図６】
2007166186.tif 000008