説明

タイムアウト監視システム及びタイムアウト監視プログラム

【課題】複数のプロセスを連携して依頼処理を実行する場合に、タイムアウトを早期に検知するためのタイムアウト監視システム及びタイムアウト監視プログラムを提供する。
【解決手段】プロセス装置Aのタイマ監視部10は、取引要求を特定し、取引要求に応じてタイマ値を特定する。プロセス装置Aは、タイマ値を含めた電文を後続の各プロセス装置B〜Dに送信するとともに、タイマ監視部10は、イベント監視処理を実行する。タイマ監視部10は、正常完了又はタイムアウトを判定し、タイムアウトと判定した場合には、タイムアウト報告処理を実行する。また、プロセス装置B〜Dにおけるタイマ監視部20〜40は先行プロセスからタイマ値を取得する。そして、タイマ監視部20〜40は、タイマ値から減算値を差し引いた新たなタイマ値を算出し、このタイマ値を含めた電文送信処理を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プロセスの進捗を管理して、各プロセスのタイムアウトを検知するためのタイムアウト監視システム及びタイムアウト監視プログラムに関する。
【背景技術】
【0002】
コンピュータシステムにおいて、複数のプロセスを連携させて、一つの業務処理を行なうことがある(例えば、特許文献1参照。)。この文献に記載された技術では、クライアント端末からのデータをホストシステムに転送する。この場合、複数の通信中継装置や、業務管理サーバから構成されたシステムが用いられる。このようなシステム環境下において、特定の依頼処理に時間を要している場合や、障害発生により処理を進めることができない場合には、他の依頼を処理するためのリソースを確保することができない。そこで、各依頼処理を完結するための制限時間が設けられていることが多い。この制限時間を途過する場合には、タイムアウトとして判定して、リソースを解放し、並行して行なわれる他の依頼処理に用いられるリソース量を確保する。
【0003】
このため、多数の処理依頼が滞留した場合にも障害回復を速やかに行なうために、処理打ち切り時限の設定方法も検討されている(例えば、特許文献2参照。)。この文献に記載された技術においては、コール元からのRPC発行時に応答監視タイムアウト時刻をコール先への処理依頼データに付加しておく。そして、応答監視タイムアウト時刻を各サーバ間で引き継ぐ。途中以降のサーバでは、更に他のサーバに処理を依頼するとき、コール元タイムアウト時刻と現在時刻の差分を応答監視時間として設定する。また、コール元タイムアウト時刻を過ぎた場合や応答監視時間を過ぎてもコール先からの応答がなかった場合には処理を打ち切る。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−237789号公報(第1頁、図2)
【特許文献2】特開2000−40020号公報(第1頁、図5)
【発明の概要】
【発明が解決しようとする課題】
【0005】
このような処理については、できるだけ早期にタイムアウトを検知できることが望ましい。一方、一つの取引処理のために複数のプロセスを連携させて処理する場合もある。この場合には、各プロセスの処理に要する時間を考慮しておく必要がある。従って、特許文献2のように、応答監視タイムアウト時刻に対する残り時間のみを監視したのでは、この応答監視タイムアウト時刻に至るまでタイムアウトを検知することができず、迅速に対応することができない。
【0006】
更に、各依頼を処理するために必要なプロセス(連携処理)は、依頼内容によって異なる。そこで、それぞれのプロセスに応じて、個別に制限時間を設けた場合には、各プロセスにおいて設定された制限時間の合計時間が、最初の処理装置において設定した制限時間よりも長くなるという不整合が生じる場合もある。特に、連携数が多い場合には、合計時間が長くなり、早期対応という目的を果たすことができず、更に初期設定の制限時間との間で不整合が生じやすい。
【0007】
また、連携処理においては、処理毎の所要時間を想定した予測時間を考慮してタイムアウト時刻を設定する。連携数が多い場合、連携途中において実際の所要時間と予測時間と
の間にずれも大きくなる可能性が高い。従って、連携処理途中において、より正確な残り時間を算出できることが望ましい。
【0008】
また、取引(サービス)についての依頼を処理する場合、店舗販売やネット販売等の多様なチャネルを利用することがある。このように、チャネルが異なる場合であっても、共通した取引については、同じ時間でタイムアウトを管理することが望ましい。
【0009】
本発明は、上述した問題に鑑みてなされたものであり、その目的は、複数のプロセスを連携して依頼処理を実行する場合に、タイムアウトを早期に検知するためのタイムアウト監視システム及びタイムアウト監視プログラムを提供することにある。
【課題を解決するための手段】
【0010】
上記問題点を解決するために、請求項1に記載の発明は、先行プロセスから受信した第1電文に応じて、後続プロセスに処理を依頼するための第2電文を送信する引継処理を実行するとともに、前記後続プロセスからの戻り電文を受信するプロセス実行部と、タイマ値の経過を通知するタイマとに接続され、前記プロセス実行部とタイマとからイベント情報を取得するタイマ監視部とを備えたタイムアウト監視システムであって、前記タイマ監視部が、前記プロセス実行部において受信した第1電文から第1タイマ値を取得し、前記第1タイマ値から、引継処理に必要な想定時間を減算した第2タイマ値を算出し、前記プロセス実行部において後続プロセスに引き継ぐ第2電文に、前記第2タイマ値を設定するタイマ値設定手段と、前記タイマにおける前記第2タイマ値の経過と、前記プロセス実行部における前記後続プロセスからの戻り電文とを待機する監視手段と、前記戻り電文を受信する前に、前記第2タイマ値のタイムアウトを検知した場合には、タイムアウト報告を出力し、前記第2タイマ値のタイムアウト前に、前記戻り電文を受信した場合には、前記プロセス実行部において前記戻り電文に基づく処理を許容するタイムアウト報告手段とを備えたことを要旨とする。
【0011】
請求項2に記載の発明は、請求項1に記載のタイムアウト監視システムにおいて、前記タイマ監視部は、引継処理に必要な想定時間として、既定値を予め保持していることを要旨とする。
【0012】
請求項3に記載の発明は、請求項1又は2に記載のタイムアウト監視システムにおいて、前記タイマ監視部は、前記プロセス実行部において受信した戻り電文に基づいて、後続する連携プロセスの要否を判断し、新たな連携プロセスを行なう場合には、前記第1タイマ値から、前記戻り電文を受信するまでの経過時間を差し引いた残り時間を第2タイマ値として算出し、プロセス実行部において、新たな連携プロセスに引き継ぐ第2電文に前記第2タイマ値を設定することを要旨とする。
【0013】
請求項4に記載の発明は、請求項3に記載のタイムアウト監視システムにおいて、前記タイマ監視部は、後続する連携プロセスが残っている場合には、後続する連携プロセスを行なうための残り時間と基準値とを比較し、前記残り時間が基準値以下の場合には、タイムアウト報告を出力することを要旨とする。
【0014】
請求項5に記載の発明は、請求項1〜4のいずれか一つに記載のタイムアウト監視システムにおいて、前記タイマ監視部は、最初に取引要求を受け付けた場合に、取引要求の内容に基づいて、タイマ値の初期値を設定することを要旨とする。
【0015】
請求項6に記載の発明は、先行プロセスから受信した第1電文に応じて、後続プロセスに処理を依頼するための第2電文を送信する引継処理を実行するとともに、前記後続プロセスからの戻り電文を受信するプロセス実行部と、タイマ値の経過を通知するタイマとに
接続され、前記プロセス実行部とタイマとからイベント情報を取得するタイマ監視部とを備えたタイムアウト監視システムを用いて、タイムアウトを監視するためのプログラムであって、前記タイマ監視部を、前記プロセス実行部において受信した第1電文から第1タイマ値を取得し、前記第1タイマ値から、引継処理に必要な想定時間を減算した第2タイマ値を算出し、前記プロセス実行部において後続プロセスに引き継ぐ第2電文に、前記第2タイマ値を設定するタイマ値設定手段、前記タイマにおける前記第2タイマ値の経過と、前記プロセス実行部における前記後続プロセスからの戻り電文とを待機する監視手段、前記戻り電文を受信する前に、前記第2タイマ値のタイムアウトを検知した場合には、タイムアウト報告を出力し、前記第2タイマ値のタイムアウト前に、前記戻り電文を受信した場合には、前記プロセス実行部において前記戻り電文に基づく処理を許容するタイムアウト報告手段として機能させることを要旨とする。
【0016】
(作用)
請求項1又は6に記載の発明によれば、タイマ監視部が、プロセス実行部において受信した第1電文から第1タイマ値を取得し、第1タイマ値から、引継処理に必要な想定時間を減算した第2タイマ値を算出し、プロセス実行部において後続プロセスに引き継ぐ第2電文に、第2タイマ値を設定する。そして、タイマにおける前記第2タイマ値の経過と、プロセス実行部における後続プロセスからの戻り電文とを待機する。戻り電文を受信する前に、第2タイマ値のタイムアウトを検知した場合には、タイムアウト報告を出力する。一方、第2タイマ値のタイムアウト前に、戻り電文を受信した場合には、プロセス実行部において戻り電文に基づく処理を許容する。これにより、引継処理に必要な想定時間を考慮して、後続のプロセスにおいてタイムアウトを検知するためのタイマ値を引き継ぐことができる。従って、複数のプロセスを連携する場合においても、迅速にタイムアウトを検知することができる。
【0017】
請求項2に記載の発明によれば、タイマ監視部は、引継処理に必要な想定時間として、既定値を予め保持していることにより、後続のプロセスに用いるタイマ値を設定することができる。
【0018】
請求項3に記載の発明によれば、タイマ監視部は、プロセス実行部において受信した戻り電文に基づいて、後続する連携プロセスの要否を判断する。そして、新たな連携プロセスを行なう場合には、第1タイマ値から、戻り電文を受信するまでの経過時間を差し引いた残り時間を第2タイマ値として算出し、プロセス実行部において、新たな連携プロセスに引き継ぐ第2電文に第2タイマ値を設定する。これにより、後続の連携プロセスの要否に応じて、タイマ値を設定することにより、タイムアウトを迅速に検知することができる。
【0019】
請求項4に記載の発明によれば、タイマ監視部は、後続する連携プロセスが残っている場合には、後続する連携プロセスを行なうための残り時間と基準値とを比較する。そして、残り時間が基準値以下の場合には、タイムアウト報告を出力する。これにより、タイムアウトまでの残り時間に対して、残っている連携プロセスの数が多い場合には、タイムアウトを予測して迅速に対応することができる。
【0020】
請求項5に記載の発明によれば、タイマ監視部は、最初に取引要求を受け付けた場合に、取引要求の内容に基づいて、タイマ値の初期値を設定する。これにより、取引内容に応じて適切なタイマ値の初期値を設定することができる。
【発明の効果】
【0021】
本発明によれば、複数のプロセスを連携して依頼処理を実行する場合に、タイムアウトを早期に検知するためのタイムアウト監視システム及びタイムアウト監視プログラムを提
供することができる。
【図面の簡単な説明】
【0022】
【図1】本発明の実施形態のシステム概略図。
【図2】本発明の実施形態のタイマ監視部の機能ブロックの説明図。
【図3】本実施形態の処理手順の説明図であって、(a)はプロセス装置Aにおける処理手順、(b)はプロセス装置(B、D)における処理手順の説明図。
【図4】本実施形態のプロセス装置Cにおける処理手順の説明図。
【図5】本実施形態の連携処理の説明図であって、(a)はプロセス装置間で送受信される電文の説明図、(b)は各プロセス装置におけるタイマ値の説明図。
【図6】他の実施形態の処理手順の説明図。
【図7】他の実施形態の処理手順の説明図。
【発明を実施するための形態】
【0023】
以下、本発明を具体化した一実施形態を図1〜図5に基づいて説明する。本実施形態では、取引要求について、図1に示すように、プロセス装置A〜Eにおいて、複数のプロセスからなる処理を行なう場合を想定する。プロセス装置A〜Eには、プロセス実行部A1〜E1を備えている。ここで、プロセス実行部A1〜D1は、受信した電文(第1電文)に基づいて、後続プロセスを実行するプロセス装置に処理を依頼する電文(第2電文)を送信する。そして、プロセス実行部B1〜E1は、先行するプロセス実行部A1〜D1に対して戻り電文を返信する。
【0024】
プロセス装置Aは、担当者や顧客において入力された取引要求電文を特定するコンピュータプロセス装置である。このプロセス装置Aのプロセス実行部A1は、銀行の各拠点に設置されている現金自動預払機(ATM)や店頭に設置されたフロント端末等から取引要求電文を取得する。そして、プロセス実行部A1は、取引要求電文に対して取引種別識別子を付与するとともに、取引種別識別子に関連づけて取引要求電文に含まれる顧客識別子や取引内容を取引情報記憶部(図示せず)に記録する。そして、プロセス実行部A1は、この取引要求電文をプロセス装置Bに転送する。また、プロセス実行部A1は、取引要求電文に対応する取引応答電文をプロセス装置Bから受信した場合には、取引要求電文を送信した端末に出力する。
【0025】
プロセス装置Bは、プロセス装置Aとプロセス装置Cとの間で電文を中継するコンピュータ装置(ハブ装置)である。このプロセス装置Bのプロセス実行部B1は、プロセス装置Aから受信した取引要求電文をプロセス装置Cに転送する。また、プロセス実行部B1は、プロセス装置Cから受信した取引応答電文をプロセス装置Aに転送する。
【0026】
プロセス装置Cは、取引要求電文の内容に基づいて必要な連携プロセス(連携処理)を特定し、このプロセスを実行する業務コンポーネントに処理依頼電文を送信するコンピュータ装置である。このプロセス装置Cのプロセス実行部C1は、送信先テーブルを保持している。そして、この送信先テーブルを用いて、受信した取引要求電文の内容に応じて、業務ロジックに基づいて送信先の業務コンポーネントや処理依頼内容を決定する。プロセス実行部C1は、プロセス装置Dを経由して、業務コンポーネントを備えたプロセス装置Eに処理依頼電文を送信し、プロセス装置Eからの処理結果電文を受信する。
【0027】
また、プロセス実行部C1は、取引要求電文の内容に応じて後続の連携プロセス(連携処理)が必要な場合には、新たに処理依頼電文を生成し、業務コンポーネントに処理依頼電文を送信する。ここで、連携処理とは、複数の個別取引(例えば、残高チェック、口座存在チェック、入金処理等)を連続して一連の取引として扱う処理である。そして、取引要求電文に対応するすべての連携処理を終了した場合には、取引要求電文に対応する取引
応答電文を、プロセス装置Bを介してプロセス装置Aに返信する。
【0028】
プロセス装置Dは、プロセス装置Cとプロセス装置Eとの間で電文を中継するコンピュータ装置(ハブ装置)である。このプロセス装置Dのプロセス実行部D1は、プロセス装置Cから受信した処理依頼電文をプロセス装置Eに転送する。また、プロセス実行部D1は、プロセス装置Eから受信した処理結果電文をプロセス装置Cに転送する。
【0029】
プロセス装置Eは、処理依頼電文に対応するために必要な各プロセスを実行するコンピュータ装置(例えば、ホストコンピュータ)である。例えば、プロセス装置Eのプロセス実行部E1は、口座存在チェック処理、残高チェック処理、支払い処理、入金処理、勘定計上処理等の各処理を実行するための業務コンポーネントから構成されている。
【0030】
また、プロセス装置A〜Dは、図2に示すように、タイマTMやタイマ監視部10〜40を備えている。タイマ監視部10〜40は、各プロセス装置A〜Dにおいてタイムアウトを監視する。
【0031】
タイマ監視部10は、取引要求についてのタイムアウトを監視する処理を実行する。このタイマ監視部10は、制御手段(CPU、RAM及びROM等)を備えており、後述する処理(タイマ値設定段階、イベント監視段階、タイムアウト報告段階を含む処理)を行なう。このため、プロセス管理プログラムを実行することにより、タイマ監視部10は、タイマ値設定手段111、イベント監視手段112、タイムアウト報告手段113として機能する。
【0032】
タイマ値設定手段111は、取引要求電文に応じて、タイムアウトまでの残り時間(タイマ値)を設定する処理を実行する。タイマ値設定手段111は、タイマ初期値テーブルを保持している。このタイマ初期値テーブルには、顧客識別子、取引種別識別子に関連づけて、タイマ値の初期値が記憶されている。顧客識別子、取引種別識別子は、それぞれ取引相手の顧客、取引種別を特定するための識別子である。タイマ初期値は、この取引要求を完了させるための制限時間である。
【0033】
イベント監視手段112は、タイマTM又はプロセス実行部A1の進捗状況の監視処理を実行する。このイベント監視手段112は、プロセス実行部A1における戻り電文受信又はタイマTMにおけるタイムアップについてのイベント情報を取得する。
【0034】
タイムアウト報告手段113は、タイムアウトした場合にタイムアウトを、取引要求電文により特定される送信元であるプロセス実行部A1に通知する処理を実行する。そして、このタイムアウト通知に基づいて、各プロセス装置に対して、取引要求の取引取消電文が送信され、取引要求に対応するために使用していたリソースが解放される。
【0035】
タイマ監視部(20、40)は、受信電文に基づいてタイムアウトを監視する処理を実行する。このタイマ監視部(20、40)は、制御手段(CPU、RAM及びROM等)を備えており、後述する処理(タイマ値設定段階、イベント監視段階、タイムアウト報告段階を含む処理)を行なう。このため、プロセス管理プログラムを実行することにより、タイマ監視部(20、40)は、タイマ値設定手段(211、411)、イベント監視手段(212、412)、タイムアウト報告手段(213、413)として機能する。
【0036】
タイマ値設定手段(211、411)は、取引要求電文や処理依頼電文に応じて、タイムアウトまでの残り時間(タイマ値)を設定する処理を実行する。タイマ値設定手段211は、減算値テーブルを保持している。この減算値テーブルには、タイマ値を短縮する減算値が記憶されている。減算値は、先行プロセスとしてのプロセス装置(B、D)のプロ
セス実行部(B1、D1)が後続プロセスに処理を依頼するための引継処理に要する想定時間(既定時間)である。
【0037】
イベント監視手段(212、412)は、イベント監視手段112と同様に、タイマTM又はプロセス実行部(B1、D1)の進捗状況の監視処理を実行する。
タイムアウト報告手段(213、413)は、タイムアウト報告手段113と同様に、タイムアウトした場合には、タイムアウトを通知する処理を実行する。
【0038】
タイマ監視部30は、受信電文についてのタイムアウトを監視する処理を実行する。このタイマ監視部30は、制御手段(CPU、RAM及びROM等)を備えており、後述する処理(タイマ値設定段階、イベント監視段階、タイムアウト報告段階を含む処理)を行なう。このため、プロセス管理プログラムを実行することにより、タイマ監視部30は、タイマ値設定手段311、イベント監視手段312、タイムアウト報告手段313として機能する。
【0039】
タイマ値設定手段311は、処理依頼電文に応じて、タイムアウトまでの残り時間(タイマ値)を設定する処理を実行する。タイマ値設定手段311は、タイマ値設定手段(211、411)と同様に、減算値テーブルを保持している。また、タイマ値設定手段311は、取得したタイマ値を記録するための仮記憶メモリを備えている。そして、後続の連携処理が必要な場合には、タイマ値設定手段311は、仮記憶メモリに記録されたタイマ値から戻り電文を受信するまでに要した時間を差し引いた時間を、新たなタイマ値として設定する。
【0040】
イベント監視手段312は、イベント監視手段112と同様に、タイマTM又はプロセス実行部C1の進捗状況の監視処理を実行する。
タイムアウト報告手段313は、タイムアウト報告手段113と同様に、タイムアウトした場合には、タイムアウトを通知する処理を実行する。
【0041】
次に、以上のように構成されたシステムにおいて、プロセス管理を行なう場合についての手順を図3〜図5に基づいて説明する。ここでは、図5(a)に示すように、プロセス装置Aの取引要求は、プロセス装置Bを介してプロセス装置Cに転送される。そして、プロセス装置Cは、プロセス装置Dを介して、プロセス装置Eに3連携によって処理し、取引応答電文を、プロセス装置Bを介してプロセス装置Aに返信する場合を想定する。この場合、プロセス装置A〜Dにおいて、タイマ監視処理が行われる。
【0042】
(プロセス装置Aにおけるタイマ監視処理)
まず、図3(a)を用いて、プロセス装置Aにおけるタイマ監視処理を説明する。
ここでは、プロセス装置Aのタイマ監視部10は、取引要求の特定処理を実行する(ステップS1−1)。具体的には、タイマ監視部10のタイマ値設定手段111は、プロセス実行部A1において取得した取引要求についての取引種類、顧客識別子に関する情報を取得する。
【0043】
次に、プロセス装置Aのタイマ監視部10は、取引要求に応じてタイマ値の特定処理を実行する(ステップS1−2)。具体的には、タイマ監視部10のタイマ値設定手段111は、取得した取引種類、顧客識別子に関連付けられたタイマ値を、タイマ初期値テーブルから抽出する。本実施形態では、図5(b)に示すように、初期のタイマ値として「118秒」を用いる。
【0044】
次に、プロセス装置Aは、タイマ値を含めた電文送信処理を実行する(ステップS1−3)。具体的には、プロセス装置Aのプロセス実行部A1は、プロセス装置Bに送信する
取引要求電文を作成する。この場合、タイマ監視部20のタイマ値設定手段211は、抽出したタイマ値「118秒」を、プロセス装置Bに送信する取引要求電文のタイマ値領域に格納する。そして、この取引要求電文は、プロセス実行部A1により、プロセス装置Bに送信される。また、タイマ値設定手段111は、プロセス装置AのタイマTMにタイマ値「118秒」を供給する。この場合、タイマTMは、このタイマ値「118秒」からのカウントダウンを開始する。
【0045】
そして、プロセス装置Aのタイマ監視部10は、イベント監視処理を実行する(ステップS1−4)。具体的には、タイマTMは、タイマ値「118秒」のカウントダウンを終了した場合には、タイムアップ通知をタイマ監視部10のイベント監視手段112に供給する。また、プロセス実行部A1が、プロセス装置Bからの戻り電文(取引応答電文)を受信した場合には、戻り電文受信通知をタイマ監視部10のイベント監視手段112に供給する。このようなイベント情報を取得するため、タイマ監視部10のイベント監視手段112は、タイマTMにおけるタイムアップ通知又は戻り電文受信通知を待機する。
【0046】
そして、プロセス装置Aのタイマ監視部10は、正常完了又はタイムアウトの判定処理を実行する(ステップS1−5)。具体的には、タイマ監視部10のイベント監視手段112は、タイマTMからのタイムアップ通知又はプロセス実行部A1からの戻り電文受信通知の先後関係によりタイムアウトを判定する。ここで、戻り電文受信通知の前にタイムアップ通知を取得した場合には、タイムアウトと判定する。一方、タイムアップ通知の前に戻り電文通知を取得した場合には、正常完了と判定する。
【0047】
タイムアウトと判定した場合(ステップS1−5において「タイムアウト」の場合)には、プロセス装置Aのタイマ監視部10は、タイムアウト報告処理を実行する(ステップS1−6)。具体的には、タイマ監視部10のイベント監視手段112は、タイムアウト報告手段113にタイムアウトを通知する。この場合、タイムアウト報告手段113は、取引要求電文の送信元に対してタイムアウトを通知する。
一方、正常完了と判定した場合(ステップS1−5において「正常完了」の場合)には、プロセス装置Aのタイマ監視部10は、タイマ監視処理を終了する。
【0048】
(プロセス装置Bにおけるタイマ監視処理)
次に、図3(b)を用いて、プロセス装置Bにおけるタイマ監視処理を説明する。このプロセス装置Bにおいては、プロセス装置Aから受信した取引要求電文をプロセス装置Cに送信し、取引応答電文をプロセス装置Cから受信するまでのタイマ監視を行なう。
【0049】
プロセス装置Bのタイマ監視部20は、先行プロセスからタイマ値の取得処理を実行する(ステップS2−1)。具体的には、タイマ監視部20のタイマ値設定手段211は、先行のプロセス装置Aから取得した取引要求電文のタイマ値領域からタイマ値(第1タイマ値)を取得する。本実施形態では、図5(b)に示すように、タイマ値として「118秒」を取得する。
【0050】
次に、プロセス装置Bのタイマ監視部20は、タイマ値から減算値の減算処理を実行する(ステップS2−2)。具体的には、タイマ監視部20のタイマ値設定手段211は、取得したタイマ値から、減算値テーブルに記憶されている減算値を差し引く。本実施形態では、減算値として「3秒」を取得する。そして、タイマ値設定手段211は、「118秒」から「3秒」を差し引いた「115秒」を新たなタイマ値(第2タイマ値)として算出する。
【0051】
次に、プロセス装置Bは、タイマ値を含めた電文送信処理を実行する(ステップS2−3)。具体的には、プロセス装置Bのプロセス実行部B1は、プロセス装置Cに転送する
取引要求電文を準備する。この場合、タイマ監視部20のタイマ値設定手段211は、算出したタイマ値「115秒」を、プロセス装置Cに転送する取引要求電文のタイマ値領域に格納する。この取引要求電文は、プロセス実行部B1により、後続のプロセス装置Cに転送される。また、タイマ値設定手段211は、プロセス装置BのタイマTMにタイマ値「115秒」を供給する。この場合、タイマTMは、このタイマ値「115秒」からのカウントダウンを開始する。
【0052】
そして、プロセス装置Bのタイマ監視部20は、イベント監視処理を実行する(ステップS2−4)。具体的には、タイマTMは、タイマ値「115秒」のカウントダウンを終了した場合には、タイムアップ通知をタイマ監視部20のイベント監視手段212に供給する。また、プロセス実行部B1が、プロセス装置Cからの戻り電文(取引応答電文)を受信した場合には、戻り電文受信通知をタイマ監視部20のイベント監視手段212に供給する。このようなイベント情報を取得するため、タイマ監視部20のイベント監視手段212は、タイマTMにおけるタイムアップ通知又は戻り電文受信通知を待機する。
【0053】
そして、プロセス装置Bのタイマ監視部20は、正常完了又はタイムアウトの判定処理を実行する(ステップS2−5)。具体的には、タイマ監視部20のイベント監視手段212は、タイマTMからのタイムアップ通知又はプロセス実行部B1からの戻り電文受信通知の先後関係によりタイムアウトを判定する。ここで、戻り電文受信通知の前にタイムアップ通知を取得した場合には、タイムアウトと判定する。一方、タイムアップ通知の前に戻り電文通知を取得した場合には、正常完了と判定する。
【0054】
タイムアウトと判定した場合(ステップS2−5において「タイムアウト」の場合)には、プロセス装置Bのタイマ監視部20は、タイムアウト報告処理を実行する(ステップS2−6)。具体的には、タイマ監視部20のイベント監視手段212は、タイムアウト報告手段213にタイムアウトを通知する。この場合、タイムアウト報告手段213は、取引要求の送信元に対してタイムアウトを通知する。
一方、正常完了と判定した場合(ステップS2−5において「正常完了」の場合)には、プロセス装置Bのタイマ監視部20は、タイマ監視処理を終了する。
【0055】
なお、プロセス装置Dにおいても、プロセス装置Bと同様のタイマ監視処理が行なわれる。このプロセス装置Dにおいては、プロセス装置Cから受信した処理依頼電文についての処理結果電文を、プロセス装置Eから受信するまでのタイマ監視を行なう。図5(b)に示すように、このプロセス装置Cにおいては、減算値として「2秒」が設定されているため、プロセス装置Cから取得したタイマ値から、この「2秒」を差し引いてタイマ監視を行なう。
【0056】
(プロセス装置Cにおけるタイマ監視処理)
次に、図4を用いて、プロセス装置Cにおけるタイマ監視処理を説明する。
プロセス装置Cのタイマ監視部30は、先行プロセスからタイマ値の取得処理を実行する(ステップS3−1)。具体的には、タイマ監視部30のタイマ値設定手段311は、先行のプロセス装置Bから取得した取引要求電文のタイマ値領域からタイマ値(第1タイマ値)を取得する。本実施形態では、図5(b)に示すように、タイマ値として「115秒」を取得する。この場合、タイマ値設定手段311は、取得したタイマ値を仮記憶メモリに記録する。この仮記憶メモリに記録されたタイマ値は、後述するように、2回目以降の連携処理のタイマ値を算出する場合に用いられる。
【0057】
次に、プロセス装置Cのタイマ監視部30は、タイマ値から減算値の減算処理を実行する(ステップS3−2)。具体的には、タイマ監視部30のタイマ値設定手段311は、取得したタイマ値から、減算値テーブルに記憶されている減算値を差し引く。本実施形態
では、減算値として「2秒」を取得する。そして、タイマ値設定手段211は、「115秒」から「2秒」を差し引いた「113秒」を新たなタイマ値(第2タイマ値)として算出する。
【0058】
次に、プロセス装置Cは、タイマ値を含めた電文送信処理を実行する(ステップS3−3)。具体的には、プロセス装置Cのプロセス実行部C1は、取引要求電文の内容に応じて、送信先テーブルを用いて後続のプロセスに送信する処理依頼電文を生成する。そして、タイマ監視部30のタイマ値設定手段311は、算出したタイマ値「113秒」を、プロセス装置Dに送信する処理依頼電文のタイマ値領域に格納する。この処理依頼電文は、プロセス実行部C1により、後続のプロセス装置Dに送信される。また、タイマ値設定手段311は、タイマTMにタイマ値「113秒」を供給する。この場合、タイマTMは、このタイマ値「113秒」からのカウントダウンを開始する。
【0059】
そして、プロセス装置Cのタイマ監視部30は、イベント監視処理を実行する(ステップS3−4)。具体的には、タイマTMは、タイマ値「113秒」のカウントダウンを終了した場合には、タイムアップ通知をタイマ監視部30のイベント監視手段312に供給する。また、プロセス実行部C1が、プロセス装置Dからの戻り電文(処理結果電文)を受信した場合には、戻り電文受信通知をタイマ監視部30のイベント監視手段312に供給する。このようなイベント情報を取得するため、タイマ監視部30のイベント監視手段312は、タイマTMにおけるタイムアップ通知又は戻り電文受信通知を待機する。
【0060】
そして、プロセス装置Cのタイマ監視部30は、正常完了又はタイムアウトの判定処理を実行する(ステップS3−5)。具体的には、タイマ監視部30のイベント監視手段312は、タイマTMからのタイムアップ通知又はプロセス実行部C1からの戻り電文受信通知の先後関係によりタイムアウトを判定する。ここで、戻り電文受信通知の前にタイムアップ通知を取得した場合には、タイムアウトと判定する。一方、タイムアップ通知の前に戻り電文通知を取得した場合には、正常完了と判定する。
【0061】
タイムアウトと判定した場合(ステップS3−5において「タイムアウト」の場合)には、プロセス装置Cのタイマ監視部30は、タイムアウト報告処理を実行する(ステップS3−6)。具体的には、タイマ監視部30のイベント監視手段312は、タイムアウト報告手段313にタイムアウトを通知する。この場合、タイムアウト報告手段313は、取引要求の送信元に対してタイムアウトを通知する。
【0062】
一方、正常完了と判定した場合(ステップS3−5において「正常完了」の場合)には、プロセス装置Cのタイマ監視部30は、後続の連携処理が必要かどうかについての判定処理を実行する(ステップS3−7)。具体的には、プロセス装置Cのプロセス実行部C1は、送信先テーブルを用いて、受信した処理結果電文に基づいて後続の連携処理が必要かどうかを判定する。そして、タイマ監視部30のタイマ値設定手段311は、プロセス実行部C1から、新たな連携処理の要否情報を取得する。
【0063】
プロセス実行部C1から取得した連携処理の要否情報に基づいて、後続の連携処理が必要と判定した場合(ステップS3−7において「YES」の場合)、プロセス装置Cのタイマ監視部30は、新たなタイマ値の算出処理を実行する(ステップS3−8)。具体的には、タイマ監視部30のタイマ値設定手段311は、処理依頼電文の送信時のタイマ値(仮記憶メモリに記録されたタイマ値)から、処理結果電文が戻ってくるまでの所要時間を差し引いた新たなタイマ値を算出する。この場合、タイマ値設定手段311は、取得したタイマ値を用いて、仮記憶メモリのタイマ値を更新する。本実施形態では、図5(b)において、最初の連携処理においては、3秒後に戻り電文を受信した場合を想定する。この場合には、先行のプロセス(連携処理)から取得したタイマ値として、最初にプロセス
装置Cが取得したタイマ値「113秒」から戻り所要時間「3秒」を差し引いた値「110秒」を用いる。また、2回目の連携処理においては、10秒後に戻り電文を受信した場合を想定する。この場合には、先行のプロセス(連携処理)のタイマ値「110秒」から戻り所要時間「10秒」を差し引いた値「100秒」を用いる。そして、プロセス装置Cのタイマ監視部30は、算出した新たなタイマ値を用いて、ステップS3−3以降の処理を繰り返す。
【0064】
なお、図5(b)では、1回目〜3回目の連携処理において、プロセス装置Dは、プロセス装置Cからタイマ値「113秒」、「110秒」、「100秒」(第1タイマ値)を取得するので、減算値「2秒」を差し引いた「111秒」、「108秒」、「98秒」(第2タイマ値)を用いてタイマ監視を行なうことになる。
【0065】
一方、プロセス実行部C1から取得した連携処理の要否情報に基づいて、後続の連携処理がないと判定した場合(ステップS3−7において「NO」の場合)、プロセス装置Cのタイマ監視部30は、タイマ監視処理を終了する。
【0066】
以上、本実施形態によれば、以下のような効果を得ることができる。
(1)本実施形態によれば、取引要求について、プロセス装置A〜Eにおいて、複数のプロセスからなる処理を行なう。プロセス装置A〜Dには、タイマTMやタイマ監視部10〜40を備え、各プロセス装置A〜Dにおいてタイムアウトを監視する。これにより、連続して行われる各プロセスにおいて、迅速にタイムアウトを検知することができる。そして、このタイムアウトに応じた対応(リソースの解放等)を速やかに行なうことができる。
【0067】
(2)本実施形態によれば、先行のプロセス装置から、タイマ値を引き継ぐ。これにより、最初に設定された初期タイマ値に基づいたタイマ値が、順次、引き継がれるので、一つの取引要求についての制限時間を考慮して、各プロセスにおいてタイムアウトを検知することができる。また、タイマ値設定手段111は、タイマ初期値テーブルを保持している。このタイマ初期値テーブルには、顧客識別子、取引種別識別子に関連づけて、タイマ値の初期値が記憶されている。顧客や取引種別によっては、取引要求に応答するための連携数が異なる場合がある。また、取引によっては、制限時間を長くして、取引要求を完結させた方がよい場合もある。タイマ初期値テーブルを用いることにより、顧客や取引種別に応じた制限時間を設定することができる。
【0068】
(3)本実施形態によれば、プロセス装置B〜Dのタイマ監視部20〜40は、タイマ値から減算値の減算処理を実行する(ステップS2−2、S3−2)。これにより、各プロセスにおいて必要な所要時間を考慮して、タイマ値を次のプロセスに引き継ぐことができる。
【0069】
(4)本実施形態によれば、プロセス実行部C1から取得した連携処理の要否情報に基づいて、後続の連携処理が必要と判定した場合(ステップS3−7において「YES」の場合)、プロセス装置Cのタイマ監視部30は、新たなタイマ値の算出処理を実行する(ステップS3−8)。これにより、新たな連携プロセスが必要な場合、戻り電文を受信したときの残り時間を考慮して、タイマ値を次のプロセスに引き継ぐことができる。
【0070】
なお、上記実施形態は以下のように変更してもよい。
・上記実施形態では、プロセス実行部C1から取得した連携処理の要否情報に基づいて、後続の連携処理が必要と判定した場合(ステップS3−7において「YES」の場合)、プロセス装置Cのタイマ監視部30は、新たなタイマ値の算出処理を実行する(ステップS3−8)。ここで、残りの連携数に応じて、タイムアウトを判定するようにしてもよ
い。この処理を、図6を用いて説明する。この場合、タイマ値設定手段311には、一つの連携処理において必要と想定される所要時間(想定所要時間)を記憶させておく。
【0071】
ここで、図4と同様に、先行プロセスからタイマ値の取得処理(ステップS3−1)〜後続の連携処理が必要かどうかについての判定処理(ステップS3−7)を実行する。
そして、プロセス実行部C1から取得した連携処理の要否情報に基づいて、後続の連携処理が必要と判定した場合(ステップS3−7において「YES」の場合)、プロセス装置Cのタイマ監視部30は、残りの連携数の特定処理を実行する(ステップS4−1)。具体的には、タイマ監視部30のタイマ値設定手段311は、プロセス実行部C1から、取引要求を完了するために必要な連携処理であって、未処理の連携数を取得する。
【0072】
次に、プロセス装置Cのタイマ監視部30は、残りの連携数に対して残りタイマ値は十分かどうかについての判定処理を実行する(ステップS4−2)。具体的には、タイマ監視部30のタイマ値設定手段311は、想定所要時間に残りの連携数を乗算して必要時間を算出する。次に、タイマ値設定手段311は、現在のタイマ値と、算出した必要時間とを比較する。ここで、現在のタイマ値が必要時間より短い場合には、タイマ値が十分でないと判定する。
【0073】
残りの連携数に対して残りタイマ値は十分でないと判定した場合(ステップS4−2において「NO」の場合)、プロセス装置Cのタイマ監視部30は、タイムアウト報告処理を実行する(ステップS3−6)。
【0074】
一方、残りの連携数に対して残りタイマ値は十分と判定した場合(ステップS4−2において「YES」の場合)、プロセス装置Cのタイマ監視部30は、新たなタイマ値の算出処理を実行する(ステップS3−8)。
【0075】
これにより、タイマ値が小さくなり、残り時間が少ない状況下において、多くの連携処理が残っている場合には、タイムアウトと判定することができる。従って、タイムアウトの発生を早期に予測して、迅速に対応することができる。
【0076】
なお、残りの連携数に対して残りタイマ値は十分かどうかについての判定方法は、上述の想定所要時間を用いる方法に限定されるものではない。例えば、タイマ値設定手段311に、連携数に対して、タイムアウトと判定するタイマ基準値を記憶させたタイムアウト判定テーブルを保持させておいてもよい。この場合には、タイマ値設定手段311が、残りの連携数を取得した場合に、タイムアウト判定テーブルを用いて、タイマ基準値を取得し、現在のタイマ値と比較して、タイムアウトを判定する。
【0077】
・上記実施形態では、タイマ値設定手段111は、タイマ値の初期値が記憶されているタイマ初期値テーブルを保持している。また、タイマ値設定手段(211、311、411)は、タイマ値を短縮する減算値が記憶されている減算値テーブルを保持している。このようなタイマ値の初期値や減算値を、実績に基づいて調整できるようにしてもよい。この場合、図7に示すように、各プロセス装置にネットワークを介して接続されたログ管理サーバ50を設ける。このログ管理サーバ50には、ログ取得手段51、ログ記憶部52、ログを解析するログ評価部53を設ける。
【0078】
ログ取得手段51は、ネットワークを介して、各プロセス装置からジョブ実行についてのログ情報を取得し、ログ記憶部52に蓄積する。このログ情報には、取引識別子、プロセス装置識別子、プロセス識別子、タイマ値、実績時間、タイムアウト情報を含める。
【0079】
取引識別子は、各取引要求を特定するための識別子である。プロセス装置識別子は、こ
の各取引要求に対応して処理を実行したプロセス装置を特定するための識別子である。プロセス識別子は、この各取引要求に対応して、このプロセス装置において実行されたプロセスを特定するための識別子である。タイマ値は、取引要求や処理依頼に設定されたタイマ値である。実績時間は、取引要求や処理依頼の対応に要した時間である。タイムアウト情報は、タイムアウトしたかどうかを判定するための情報である。取引識別子、装置識別子により、一つの取引要求に対して、各プロセス装置によって実行された連携処理を特定することができる。
【0080】
ログ評価部53は、ログ記憶部52に記憶されたログ情報を解析する。このログ評価部53は、注意喚起すべき連携処理情報を仮記憶する評価対象メモリを備えている。
このログ管理サーバ50において実行されるログ評価処理を、図7を用いて説明する。このログ評価処理は、ログ管理サーバ50に接続された管理者端末からの指示に基づいて実行される。
【0081】
まず、ログ管理サーバ50は、タイムアウト状況の検索処理を実行する(ステップS5−1)。具体的には、ログ管理サーバ50のログ評価部53は、ログ記憶部52において、タイムアウト情報が記録されたログ情報を検索する。
【0082】
ここで、ログ記憶部52からタイムアウト情報が記録されたログを抽出した場合、ログ管理サーバ50は、タイムアウトまでの連携情報の取得処理を実行する(ステップS5−2)。具体的には、ログ管理サーバ50のログ評価部53は、タイムアウトが記録されたログ情報の取引識別子が記録されたログ情報をログ記憶部52から抽出する。このログ情報に記憶されたプロセス識別子を用いて、タイムアウトまでに実行された連携処理を特定する。そして、ログ評価部53は、抽出した連携処理情報を評価対象メモリに仮記録する。なお、タイムアウト情報が記録されたログを抽出しない場合には、ログ管理サーバ50は、タイムアウトまでの連携情報の取得処理(ステップS5−2)をスキップする。
【0083】
次に、ログ管理サーバ50は、タイムアウトまで時間的余裕が少なかった取引要求の検索処理を実行する(ステップS5−3)。具体的には、ログ管理サーバ50のログ評価部53は、ログ記憶部52に記録されたログ情報の中で、取引応答電文の受信時から初期タイマ値までの残り時間を算出する。そして、ログ評価部53は、この残り時間が予め定められた基準時間よりも短いログ情報がある場合、時間的余裕が少なかった取引要求があったと判定する。
【0084】
ここで、タイムアウトまで時間的余裕が少なかった取引要求を抽出した場合、ログ管理サーバ50は、取引要求に関する連携情報の取得処理を実行する(ステップS5−4)。具体的には、ログ管理サーバ50のログ評価部53は、時間的余裕が少なかった取引要求の取引識別子が記録されたログ情報をログ記憶部52から抽出する。このログ情報に記憶されたプロセス識別子を用いて、取引応答電文の受信までに実行された連携処理を特定する。そして、ログ評価部53は、抽出した連携処理情報を評価対象メモリに仮記録する。なお、タイムアウトまで時間的余裕が少なかった取引要求を抽出しない場合には、ログ管理サーバ50は、取引要求に関する連携情報の取得処理(ステップS5−4)をスキップする。
【0085】
次に、ログ管理サーバ50は、注意喚起が必要かどうかについての判定処理を実行する(ステップS5−5)。具体的には、ログ管理サーバ50のログ評価部53は、評価対象メモリに連携処理情報が記憶されている場合には、注意喚起が必要と判定する。
【0086】
注意喚起が必要でないと判定した場合(ステップS5−5において「NO」の場合)、ログ管理サーバ50は、ログ評価処理を終了する。
一方、注意喚起が必要と判定した場合(ステップS5−5において「YES」の場合)、ログ管理サーバ50は、各プロセスの所要時間の算出処理を実行する(ステップS5−6)。具体的には、ログ管理サーバ50のログ評価部53は、評価対象メモリに記憶されたログ情報において、プロセス識別子毎に実績時間を算出する。そして、ログ評価部53は、プロセス毎に実績時間の統計値(例えば、平均値)を算出する。
【0087】
次に、ログ管理サーバ50は、処理時間が長いプロセスの特定処理を実行する(ステップS5−7)。具体的には、ログ管理サーバ50のログ評価部53は、算出したプロセス毎に実績時間の統計値が大きい順番に並び替える。
【0088】
次に、ログ管理サーバ50は、連携状況情報の出力処理を実行する(ステップS5−8)。具体的には、ログ管理サーバ50のログ評価部53は、処理時間が長いプロセスが含まれる取引要求における連携処理を特定する。そして、ログ評価部53は、この連携処理における顧客識別子や取引種別識別子を取引情報記憶部から取得し、管理者端末に出力する。
【0089】
これにより、管理者は、処理時間が長くなっているプロセスの装置能力を補強したり、タイムアウトを抑制するためのタイマ値の初期値や減算値を再検討したりすることができる。
【符号の説明】
【0090】
A〜E…プロセス装置、A1〜E1…プロセス実行部、10〜40…タイマ監視部、TM…タイマ、111〜411…タイマ値設定手段、112〜412…イベント監視手段、113〜413…タイムアウト報告手段。

【特許請求の範囲】
【請求項1】
先行プロセスから受信した第1電文に応じて、後続プロセスに処理を依頼するための第2電文を送信する引継処理を実行するとともに、前記後続プロセスからの戻り電文を受信するプロセス実行部と、
タイマ値の経過を通知するタイマとに接続され、
前記プロセス実行部と前記タイマとからイベント情報を取得するタイマ監視部を備えたタイムアウト監視システムであって、
前記タイマ監視部が、
前記プロセス実行部において受信した第1電文から第1タイマ値を取得し、
前記第1タイマ値から、引継処理に必要な想定時間を減算した第2タイマ値を算出し、
前記プロセス実行部において後続プロセスに引き継ぐ第2電文に、前記第2タイマ値を設定するタイマ値設定手段と、
前記タイマにおける前記第2タイマ値の経過と、前記プロセス実行部における前記後続プロセスからの戻り電文とを待機する監視手段と、
前記戻り電文を受信する前に、前記第2タイマ値のタイムアウトを検知した場合には、タイムアウト報告を出力し、
前記第2タイマ値のタイムアウト前に、前記戻り電文を受信した場合には、前記プロセス実行部において前記戻り電文に基づく処理を許容するタイムアウト報告手段と
を備えたことを特徴とするタイムアウト監視システム。
【請求項2】
前記タイマ監視部は、引継処理に必要な想定時間として、既定値を予め保持していることを特徴とする請求項1に記載のタイムアウト監視システム。
【請求項3】
前記タイマ監視部は、
前記プロセス実行部において受信した戻り電文に基づいて、後続する連携プロセスの要否を判断し、
新たな連携プロセスを行なう場合には、前記第1タイマ値から、前記戻り電文を受信するまでの経過時間を差し引いた残り時間を第2タイマ値として算出し、
前記プロセス実行部において、新たな連携プロセスに引き継ぐ第2電文に前記第2タイマ値を設定することを特徴とする請求項1又は2に記載のタイムアウト監視システム。
【請求項4】
前記タイマ監視部は、
後続する連携プロセスが残っている場合には、後続する連携プロセスを行なうための残り時間と基準値とを比較し、
前記残り時間が基準値以下の場合には、タイムアウト報告を出力することを特徴とする請求項3に記載のタイムアウト監視システム。
【請求項5】
前記タイマ監視部は、最初に取引要求を受け付けた場合に、取引要求の内容に基づいて、タイマ値の初期値を設定することを特徴とする請求項1〜4のいずれか一つに記載のタイムアウト監視システム。
【請求項6】
先行プロセスから受信した第1電文に応じて、後続プロセスに処理を依頼するための第2電文を送信する引継処理を実行するとともに、前記後続プロセスからの戻り電文を受信するプロセス実行部と、
タイマ値の経過を通知するタイマとに接続され、
前記プロセス実行部とタイマとからイベント情報を取得するタイマ監視部を備えたタイムアウト監視システムを用いて、タイムアウトを監視するためのプログラムであって、
前記タイマ監視部を、
前記プロセス実行部において受信した第1電文から第1タイマ値を取得し、
前記第1タイマ値から、引継処理に必要な想定時間を減算した第2タイマ値を算出し、
前記プロセス実行部において後続プロセスに引き継ぐ第2電文に、前記第2タイマ値を設定するタイマ値設定手段、
前記タイマにおける前記第2タイマ値の経過と、前記プロセス実行部における前記後続プロセスからの戻り電文とを待機する監視手段、
前記戻り電文を受信する前に、前記第2タイマ値のタイムアウトを検知した場合には、タイムアウト報告を出力し、
前記第2タイマ値のタイムアウト前に、前記戻り電文を受信した場合には、前記プロセス実行部において前記戻り電文に基づく処理を許容するタイムアウト報告手段
として機能させることを特徴とするタイムアウト監視プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−138015(P2012−138015A)
【公開日】平成24年7月19日(2012.7.19)
【国際特許分類】
【出願番号】特願2010−291146(P2010−291146)
【出願日】平成22年12月27日(2010.12.27)
【出願人】(592131906)みずほ情報総研株式会社 (187)
【出願人】(592259978)株式会社みずほ銀行 (117)
【Fターム(参考)】