JP2003085060A - 分散処理システム、中継計算機、処理計算機、中継計算機プログラム、および処理計算機プログラム - Google Patents

分散処理システム、中継計算機、処理計算機、中継計算機プログラム、および処理計算機プログラム

Info

Publication number
JP2003085060A
JP2003085060A JP2001274205A JP2001274205A JP2003085060A JP 2003085060 A JP2003085060 A JP 2003085060A JP 2001274205 A JP2001274205 A JP 2001274205A JP 2001274205 A JP2001274205 A JP 2001274205A JP 2003085060 A JP2003085060 A JP 2003085060A
Authority
JP
Japan
Prior art keywords
processing
processing request
computer
request
response message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001274205A
Other languages
English (en)
Inventor
Koichi Hirata
功一 平田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2001274205A priority Critical patent/JP2003085060A/ja
Publication of JP2003085060A publication Critical patent/JP2003085060A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 【課題】 通信障害の発生に伴い、中継サーバが処理要
求を再送信した場合であっても、連携先サーバにおける
同一処理の重複を排除する。 【解決手段】 連携元サーバ1は、処理要求を中継サー
バ11に送信する。中継サーバ11の制御部12は、各
処理要求を一意に識別するための電文識別子を処理要求
に付加し、連携先サーバ21に送信する。連携先サーバ
21の制御部22は、処理要求に付加された電文識別子
に対応する応答電文がデータベース26に保持されてい
るか否かを確認する。応答電文が保持されていなけれ
ば、要求された処理を実行し、応答電文を中継サーバ1
1に送信する。また、応答電文を電文識別子に対応させ
て、データベース26に登録する。応答電文が保持され
ていれば、その応答電文を中継サーバ11に送信する。
中継サーバ11は、連携先サーバ21から正常な応答が
なければ、処理要求を再送信する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、分散処理システム
および分散処理システムに適用される中継計算機、処理
計算機、中継計算機プログラム、および処理計算機プロ
グラムに関する。
【0002】
【従来の技術】分散処理システムでは、複数のサーバが
通信を行うことにより連携して処理結果を得る場合があ
る。以下、通信によって連携するサーバのうち、他のサ
ーバに処理を要求するサーバを連携元サーバと記す。ま
た、連携するサーバのうち、連携元サーバから処理を要
求されるサーバを連携先サーバと記す。近年、連携元サ
ーバと連携先サーバとの間に、中継サーバを配置する形
態が増えつつある。このような形態の例としては、企業
に管理される複数のサーバの間にEAI(Enterprise A
pplication Integration)サーバを配置する形態があ
る。
【0003】各サーバが通信を行う際、連携元サーバ
は、中継サーバを介して処理要求(処理を要求する電
文)を送信する。また、連携先サーバは、処理要求に応
じた処理を完了すると、中継サーバを介して、処理要求
に対する応答電文を連携元サーバに送信する。連携元サ
ーバは、応答電文を受信することによって、要求した処
理が完了したことを確認する。
【0004】また、通信障害が発生すると、連携先サー
バが処理要求を受信できなくなったり、中継サーバが連
携先サーバからの応答電文を受信できなくなる場合が生
じる。この場合、中継サーバは、連携先サーバに同一の
処理を再度要求する。連携先サーバは、この要求に応じ
て処理を実行し、処理を完了したときに応答電文を中継
サーバに送信する。このように、中継サーバは、応答電
文を受信しなかった場合、連携先サーバに同じ処理を要
求することで応答電文を取得していた。この結果、連携
先サーバにおける処理が完了したのか否かが明らかにな
り、分散処理システムの信頼性を高めることができた。
【0005】
【発明が解決しようとする課題】しかし、従来の分散処
理システムでは、連携先サーバは、要求された処理を実
行して応答電文を送信したとしても、中継サーバがこの
応答電文を受信できなかった場合には、中継サーバから
同一の処理を再度要求される。この場合、連携先サーバ
は、同一処理を重複して実行することになる。処理時間
を短縮するためには、このような重複処理を排除するこ
とが好ましい。
【0006】本発明は、通信障害が発生した場合であっ
ても、連携先サーバにおける重複処理を排除することが
できる分散処理システム、および分散システムに適用さ
れる中継計算機、処理計算機、中継計算機プログラム、
処理計算機プログラムを提供することを目的とする。
【0007】
【課題を解決するための手段】本発明による分散処理シ
ステムは、処理要求を送信する処理要求計算機と、要求
された処理を実行する処理計算機と、処理要求計算機と
処理計算機とが授受する情報を中継する中継計算機とを
備えた分散処理システムであって、中継計算機は、処理
要求計算機から受信した処理要求を、通信ネットワーク
を介して処理計算機に送信する処理要求送信手段と、前
記処理要求に対する処理計算機からの正常な応答の有無
を判断する応答結果判断手段とを備え、処理要求送信手
段は、処理計算機からの正常な応答がないと判断された
場合に処理要求を再送信し、処理計算機は、中継計算機
から受信した処理要求に応じた処理が完了しているか否
かを判断する処理状況判断手段と、処理要求に応じた処
理を実行する処理実行手段とを備え、処理実行手段は、
処理要求に応じた処理が完了していないと判断された場
合に前記処理を実行することを特徴とする。
【0008】例えば、中継計算機は、処理要求計算機か
ら受信した処理要求に各処理要求を識別するための識別
情報を付加する識別情報付加手段を備え、処理要求送信
手段は、識別情報が付加された処理要求を、通信ネット
ワークを介して処理計算機に送信し、処理計算機は、処
理実行手段が処理を完了した場合に、処理要求に対する
応答電文を、前記処理要求に付加された識別情報に対応
させてデータベースに保持させる応答電文保持手段と、
処理実行手段が処理を完了した場合に、処理要求に対す
る応答電文を、通信ネットワークを介して中継計算機に
送信する応答電文送信手段とを備え、処理状況判断手段
は、中継計算機から受信した処理要求に付加された識別
情報に対応する応答電文がデータベースに保持されてい
るか否かに基づいて、処理が完了しているか否かを判断
し、応答電文送信手段は、処理状況判断手段が処理要求
に応じた処理が完了していると判断した場合に、処理要
求に対する応答電文をデータベースから抽出して中継計
算機に送信する。
【0009】また、処理要求送信手段は、同一の識別情
報が付加された処理要求の送信回数が上限回数に達した
場合に、前記識別情報が付加された処理要求の再送信を
停止してもよい。
【0010】また、本発明による中継計算機は、処理要
求を送信する処理要求計算機と要求された処理を実行す
る処理計算機とが授受する情報を中継する中継計算機で
あって、処理要求計算機から受信した処理要求に各処理
要求を識別するための識別情報を付加する識別情報付加
手段と、識別情報が付加された処理要求を、通信ネット
ワークを介して処理計算機に送信する処理要求送信手段
と、前記処理要求に対する処理計算機からの正常な応答
の有無を判断する応答結果判断手段とを備え、処理要求
送信手段は、処理計算機からの正常な応答がないと判断
された場合に処理要求を再送信することを特徴とする。
【0011】また、本発明による処理計算機は、処理要
求を送信する処理要求計算機からの処理要求を中継計算
機を介して受信する処理計算機であって、中継計算機か
ら受信した処理要求に応じた処理が完了しているか否か
を、前記処理要求に付加された識別情報に対応する応答
電文がデータベースに保持されているか否かに基づいて
判断する処理状況判断手段と、処理要求に応じた処理が
完了していないと判断された場合に前記処理を実行する
処理実行手段と、処理実行手段が処理を完了した場合
に、処理要求に対する応答電文を、前記処理要求に付加
された識別情報に対応させてデータベースに保持させる
応答電文保持手段と、処理実行手段が処理を完了した場
合に、処理要求に対する応答電文を、通信ネットワーク
を介して中継計算機に送信し、処理状況判断手段が処理
要求に応じた処理が完了していると判断した場合に、処
理要求に対する応答電文をデータベースから抽出して通
信ネットワークを介して中継計算機に送信する応答電文
送信手段とを備えたことを特徴とする。
【0012】また、本発明による中継計算機プログラム
は、処理要求を送信する処理要求計算機と要求された処
理を実行する処理計算機とが授受する情報を中継するコ
ンピュータを、処理要求計算機から受信した処理要求に
各処理要求を識別するための識別情報を付加する手段、
識別情報が付加された処理要求を、通信ネットワークを
介して処理計算機に送信する手段、前記処理要求に対す
る処理計算機からの正常な応答の有無を判断する手段、
および処理計算機からの正常な応答がないと判断された
場合に処理要求を再送信する手段として機能させること
を特徴とする。
【0013】また、本発明による処理計算機プログラム
は、処理要求を送信する処理要求計算機からの処理要求
を中継計算機を介して受信するコンピュータを、中継計
算機から受信した処理要求に応じた処理が完了している
か否かを、前記処理要求に付加された識別情報に対応す
る応答電文がデータベースに保持されているか否かに基
づいて判断する手段、処理要求に応じた処理が完了して
いないと判断された場合に前記処理を実行する手段、処
理要求に応じた処理が完了した場合に、処理要求に対す
る応答電文を、前記処理要求に付加された識別情報に対
応させてデータベースに保持させる手段、および処理要
求に応じた処理が完了した場合に、処理要求に対する応
答電文を、通信ネットワークを介して中継計算機に送信
し、処理要求を受信したときに処理要求に応じた処理が
完了していると判断された場合に、処理要求に対する応
答電文をデータベースから抽出して通信ネットワークを
介して中継計算機に送信する手段として機能させること
を特徴とする。
【0014】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。図1は、本発明による分散処理シ
ステムの実施の一形態を示すブロック図である。本例の
分散処理システムは、連携元サーバ(処理要求計算機)
1と、中継サーバ(中継計算機)11と、連携先サーバ
(処理計算機)21と、データベース26とを備える。
連携元サーバ1、中継サーバ11、連携先サーバ21、
およびデータベース26は、通信ネットワーク31を介
して接続される。また、連携元サーバ1等には、それぞ
れIPアドレスが割り当てられている。連携元サーバ1
と連携先サーバ21は、中継サーバ11を介して電文を
授受しながらオンライントランザクション処理(以下、
OLTPと記す。)を実現する。すなわち、OLTPに
おいて、連携元サーバ1は処理要求を中継サーバ11に
送信する。中継サーバ11は、処理要求を連携先サーバ
21に送信する。連携先サーバ21は処理要求に応じた
処理(要求された処理)を実行し、応答電文を中継サー
バ11に送信する。中継サーバ11は、この応答電文を
連携元サーバ1に送信する。
【0015】連携先サーバ21は、OLTPにおいて、
処理要求に応じた処理を完了したときに、その実行に伴
い更新される情報や応答電文をデータベース26に保持
させる。また、中継サーバ11は、処理要求を連携先サ
ーバ21に送信した後、連携先サーバ21から正常な応
答がない場合、連携先サーバ21に処理要求を再送信す
る。連携先サーバ21は、処理要求を受信した場合、そ
の処理要求に対する応答電文がデータベース26に保持
されているか否かによって、処理要求に応じた処理が既
に完了したか否かを判断する。要求された処理が既に完
了しているならば、重複して同一の処理を行わず、応答
電文を中継サーバ11に送信する。要求された処理が完
了していなければ、その処理を実行し、応答電文等をデ
ータベース26に保持させる。そして、応答電文を中継
サーバ11に送信する。このように、OLTPにおい
て、連携先サーバ21は、要求された処理が既に完了し
ているか否かを判断し、重複処理を排除する。
【0016】次に、連携元サーバ1、中継サーバ11、
および連携先サーバ21それぞれの構成の例について説
明する。連携元サーバ1において、制御部2は、記憶装
置3が記憶するプログラムに従って連携元サーバ1全体
を制御する。ネットワークインタフェース部5は、通信
ネットワーク31を介して中継サーバ11と情報を送受
信する。
【0017】記憶装置3は、クライアントアプリケーシ
ョンプログラム(以下、クライアントAPプログラムと
記す。)4を記憶する。クライアントAPプログラム4
は、制御部2に、処理の要求を実行させるプログラムで
ある。制御部2は、クライアントAPプログラム4に従
って、処理要求に連携元サーバ1のIPアドレスの情報
を付加する。そして、この処理要求を中継サーバ11に
送信する。続いて、中継サーバ11は、後述する中継プ
ログラムに従い処理を実行する。
【0018】中継サーバ11において、制御部12は、
記憶装置13が記憶するプログラムに従って中継サーバ
11全体を制御する。ネットワークインタフェース部1
6は、通信ネットワーク31を介して連携元サーバ1お
よび連携先サーバ21と情報を送受信する。
【0019】記憶装置13は、中継プログラム14と電
文識別子情報管理プログラム15とを記憶する。中継プ
ログラム14は、制御部12に、連携元サーバ1と連携
先サーバ21との間で授受される情報を中継させるプロ
グラムである。中継プログラム14は、連携元サーバ1
から処理要求を受信する処理、連携先サーバ21との間
で電文を授受する処理、応答電文を連携元サーバ1に応
答電文を送信する処理等を制御部12に実行させる。制
御部12は、連携元サーバ1から受信した処理要求を連
携先サーバに送信する場合、中継プログラム14に従っ
て、電文識別子を処理要求に付加して送信する。電文識
別子とは、各処理要求を一意に識別するための識別情報
である。電文識別子管理プログラム15は、制御部12
に電文識別子の情報を管理させる。
【0020】図2は、電文識別子の例を示す説明図であ
る。図2(a)は、電文識別子に含まれる情報の例を示
す。図2(a)に示すように、電文識別子は、連携元サ
ーバ1のIPアドレス、初期化時刻、順次番号の情報を
含む。順次番号は、中継サーバ11が処理要求を受信す
る毎に、1ずつ増加した値が設定される。初期化時刻
は、順次番号を初期値に設定した時刻である。
【0021】制御部12は、電文識別子管理プログラム
15に従って、初期化時刻や、設定した順次番号の情報
を記憶装置13に保持する。新たに電文識別子を付加す
る際、制御部12は、保持する初期化時刻および順次番
号を参照し、参照した順次番号を1増加させた値を新た
な順次番号として設定する。また、制御部12は、保持
している順次番号を新たな順次番号に更新する。この結
果、中継サーバ11が受信する各処理要求には、1ずつ
増加した順次番号が設定される。
【0022】なお、順次番号は、例えば64ビットのビ
ット長で表されるが、他のビット長で順次番号を表して
もよい。順次番号を1増加させた結果、所定のビット長
で表せなくなった場合(オーバフローが生じた場合)、
制御部12は、順次番号を初期値に設定し、その時刻を
初期化時刻とする。
【0023】初期化時刻は、例えば、時分秒によって表
す。図2(b)は、図2(a)に示す情報の具体例を示
す。ここでは、連携元サーバ1のIPアドレスが”1.
1.1.1”であり、このIPアドレスを”01010101”
と表した場合を示す。また、初期化時刻および順次番号
がそれぞれ”10時0分0秒”、”1”であり、この時
刻および番号をそれぞれ”00100000”、”000000000000
000001”と表した場合の例を示す。
【0024】制御部12は、処理要求を連携先サーバ2
1に送信した後、連携先サーバ21から正常な応答がな
い場合、中継プログラム14に従って、既に送信した処
理要求と同一の処理要求を送信する。ただし、同一の処
理要求を連携先サーバ21に再送信する回数には、上限
が設けられる。連携元サーバ1は、中継サーバ11に処
理要求を送信するときに、再送信回数の上限の情報も送
信する。再送信回数の上限は、連携元サーバ1が指定し
た回数に従って定められる。
【0025】連携先サーバ21において、制御部22
は、記憶装置23が記憶するプログラムに従って連携先
サーバ21全体を制御する。ネットワークインタフェー
ス部25は、通信ネットワーク31を介して中継サーバ
11およびデータベース26と情報を送受信する。
【0026】記憶装置23は、サーバアプリケーション
プログラム(以下、サーバAPプログラムと記す。)2
4を記憶する。サーバAPプログラム24は、制御部2
2に、要求された処理が既に完了しているか否かを判断
させる。さらに、サーバAPプログラム24は、要求さ
れた処理がまだ完了していない場合、制御部22にその
処理を実行させる。また、サーバAPプログラム24
は、データベース26への応答電文の登録や、中継サー
バ11への応答電文の送信等も制御部22に実行させ
る。
【0027】制御部22は、要求された処理を完了した
ときに、サーバAPプログラム24に従って応答電文を
データベース26に登録する。制御部22は、応答電文
と、処理要求に含まれる電文識別子とを対応させてデー
タベース26に登録する。図3は、データベース26に
登録される応答電文と電文識別子の例を示す。ここで
は、応答電文を”A”として示し、この応答電文”A”
が、図2(b)に示す電文識別子に対応づけられて登録
された場合の例を示す。通信障害によって中継サーバ1
1が応答電文を受信できず、再度、処理要求を送信した
とする。このとき制御部22は、処理要求に付加された
電文識別子に対応する応答電文がデータベース26に保
持されているか否かによって、要求された処理が既に完
了しているか否かを判断する。応答電文が保持されてい
れば、要求された処理は既に完了していると判断し、保
持されていなければ、要求された処理はまだ完了してい
ないと判断する。
【0028】データベース26は、要求された処理の対
象となる情報や、処理要求に対する応答電文を保持す
る。
【0029】上記の例において、処理要求送信手段は、
中継サーバ11の制御部12およびネットワークインタ
フェース部16によって実現される。応答結果判断手段
および識別情報付加手段は、中継サーバ11の制御部1
2によって実現される。また、処理状況判断手段、処理
実行手段、応答電文保持手段、応答電文送信手段は、連
携先サーバ21の制御部22およびネットワークインタ
フェース部25によって実現される。
【0030】また、中継サーバ11の記憶装置13は、
コンピュータを、処理要求計算機から受信した処理要求
に各処理要求を識別するための識別情報を付加する手
段、識別情報が付加された処理要求を、通信ネットワー
クを介して処理計算機に送信する手段、前記処理要求に
対する処理計算機からの正常な応答の有無を判断する手
段、および処理計算機からの正常な応答がないと判断さ
れた場合に処理要求を再送信する手段として機能させる
ための中継計算機プログラムを保持する。
【0031】連携先サーバ21の記憶装置23は、コン
ピュータを、中継計算機から受信した処理要求に応じた
処理が完了しているか否かを、前記処理要求に付加され
た識別情報に対応する応答電文がデータベースに保持さ
れているか否かに基づいて判断する手段、処理要求に応
じた処理が完了していないと判断された場合に前記処理
を実行する手段、処理要求に応じた処理が完了した場合
に、処理要求に対する応答電文を、前記処理要求に付加
された識別情報に対応させてデータベースに保持させる
手段、および処理要求に応じた処理が完了した場合に、
処理要求に対する応答電文を、通信ネットワークを介し
て中継計算機に送信し、処理要求を受信したときに処理
要求に応じた処理が完了していると判断された場合に、
処理要求に対する応答電文をデータベースから抽出して
通信ネットワークを介して中継計算機に送信する手段と
して機能させるための処理計算機プログラムを保持す
る。
【0032】次に、オンライントランザクション処理を
進める際の動作について説明する。OLTPにおいて、
連携元サーバ1の制御部2は、まず、処理要求を中継サ
ーバ11に送信する。このとき、制御部2は、処理要求
に連携元サーバ1のIPアドレスを付加してから送信す
る。また、処理要求の再送信回数の上限値も送信する。
【0033】図4は、処理要求を受信した中継サーバ1
1の動作の例を示す流れ図である。中継サーバ11の制
御部12は、連携元サーバ1が送信した処理要求を受信
する(ステップS61)。制御部12は、電文識別子を
生成し、受信した処理要求に付加する(ステップS6
2)。ステップS62において、制御部12は、処理要
求に付加されているIPアドレスを抽出する。また、記
憶装置13に保持している初期化時刻および順次番号を
参照し、参照した順次番号を1増加させる。制御部12
は、このIPアドレス、初期化時刻、順次番号を含む電
文識別子を生成し、電文識別子を処理要求に付加する。
なお、制御部12は、保持していた順次番号を新たな順
次番号(1増加した順次番号)に更新する。また、1増
加することによって、順次番号にオーバフローが生じた
ならば、順次番号を初期値に設定し、初期化時刻を更新
する。
【0034】続いて、制御部12は、連携先サーバ21
のサーバAPログラム24を呼び出す。このとき、制御
部12は、電文識別子を付加した処理要求を連携先サー
バ21に送信する(ステップS63)。
【0035】制御部12は、連携先サーバ21からの応
答を待つ(ステップS64)。ステップS64におい
て、連携先サーバ21は、中継サーバ11からの処理要
求を受信し、所定の処理を行う。図5は、ステップS6
4における連携先サーバ21の動作の例を示す流れ図で
ある。連携先サーバ21の制御部22は、まず、中継サ
ーバ11が送信した処理要求を受信する(ステップS8
1)。
【0036】続いて、制御部22は、処理要求に応じた
処理が既に完了しているか否かを判断する(ステップS
82)。制御部22は、処理要求に含まれる電文識別子
に対応する応答電文がデータベース26に保持されてい
れば、要求された処理は既に完了していると判断する。
また、応答電文がデータベース26に保持されていなけ
れば、要求された処理はまだ完了していないと判断す
る。
【0037】要求された処理がまだ完了していないと判
断した場合、制御部22は、要求された処理を実行する
(ステップS83)。制御部22は、この処理の実行に
伴ってデータベース26内の情報を更新する。ただし、
後述するコミット処理を実行するまでは、更新された情
報をデータベース26に書き込まない。要求された処理
を終了した後、制御部22は、応答電文を作成し、デー
タベース26に付与する。制御部22は、処理要求に付
加された電文識別子に対応させて応答電文をデータベー
ス26に付与する。制御部22は、コミット処理を行
い、ステップS83において更新された情報をデータベ
ース26に書き込む。また、電文識別子と応答電文とを
対応させてデータベース26に書き込む(ステップS8
4)。コミット処理によって、更新された情報や応答電
文が実際にデータベース26に書き込まれ、更新された
情報や応答電文が確定する。続いて、制御部22は、作
成した応答電文を中継サーバ11に送信する(ステップ
S85)。このとき、制御部22は、正常に応答電文を
送信したことを示す戻り値も中継サーバ11に返す。
【0038】ステップS82において、要求された処理
は既に完了していると判断した場合、制御部22は、デ
ータベース26から要求された処理に対応する応答電文
を抽出し、その応答電文を中継サーバ11に送信する
(ステップS86)。このとき、制御部22は、ステッ
プS85と同様に、正常に応答電文を送信したことを示
す戻り値を中継サーバ11に返す。ステップS86にお
いて、制御部22は要求された処理を再度実行する必要
はない。
【0039】一方、連携先サーバ21からの応答を待っ
ていた中継サーバ11は、連携先サーバ21から正常な
応答があったか否かを判断する(ステップS65)。正
常な応答とは、連携先サーバ21から正常を示す戻り値
を返されることである。また、正常な応答がない場合の
例としては、例えば、処理要求を送信してから所定時間
内に戻り値が返ってこない場合(タイムアウトとなる場
合)がある。
【0040】中継サーバ11の制御部12に、連携先サ
ーバ21から正常を示す戻り値が返されたならば、通信
障害が発生しておらず、正常な応答があったことにな
る。すなわち、制御部12が連携先サーバ21から応答
電文を正常に受信したことになる。この場合、制御部1
2は、応答電文を連携元サーバ1に送信する(ステップ
S66)。
【0041】連携先サーバ21から正常な応答がなかっ
た場合(例えば、タイムアウトとなる場合)、制御部1
2は、連携サーバ21へ同一の処理要求を再送信した回
数が、上限に達しているか否かを判断する(ステップS
67)。再送信回数が、上限に達していなければ、再
度、サーバAPプログラム24を呼び出す。このとき、
制御部12は、処理要求を連携先サーバ21に送信する
(ステップS63)。制御部12は、最初に送信した処
理要求と同一の電文識別子が付加された処理要求を送信
する。また、制御部12は、同一の処理要求を再送信す
るごとに、再送信回数を更新して管理する。再送信回数
の初期値は0である。制御部12は、再送信回数を電文
識別子ごとに管理する。例えば、図2(b)に例示する
電文識別子を付加した処理要求を一回再送信したときに
は、その電文識別子についての再送信回数を0から1に
更新する。ステップS63に続く中継サーバ11の動作
は、前述のステップS64以降の動作と同様である。ま
た、連携先サーバ21の動作は、前述のステップS81
以降の動作と同様である。
【0042】ステップS67において、再送信回数が上
限に達していると判断した場合、制御部12は、応答電
文を連携元サーバ1に送信せず、連携元サーバ1に処理
を進めさせる(ステップS68)。
【0043】本発明では、連携先サーバ21が、要求さ
れた処理が完了しているか否かを判断し、完了していれ
ば同一の処理をせずに、応答電文を中継サーバ11に送
信する。したがって、既に完了した処理を重複して実行
しなくても、信頼性を高めることができる。また、本発
明では、中継サーバ11が処理要求に電文識別子を付加
するので、連携元サーバ1は電文識別子を生成する必要
がない。このため、分散処理システムの構成をより簡易
にすることができる。例えば、連携元サーバ1が複数存
在する場合であっても、各連携元サーバ1が電文識別子
を生成する必要がないので、分散処理システムの構成が
より簡易になる。
【0044】次に、具体的な動作の態様として、通信障
害が発生しないときの動作の流れおよび通信障害が発生
したときの動作の流れを説明する。まず、第一の態様と
して、通信障害が発生しなかった場合の動作の流れを説
明する。
【0045】連携元サーバ1の制御部2は、まず、IP
アドレスを付加した処理要求を中継サーバ11に送信す
る。また、処理要求の再送信回数の上限値も送信する。
ここでは、”1.1.1.1”というIPアドレスの情
報が処理要求に付加され、再送信回数の上限値が1回で
ある場合を例に説明する。
【0046】中継サーバ11の制御部12は、連携元サ
ーバ1から処理要求を受信する(ステップS61)。制
御部12は、記憶装置13に保持する初期化時刻と順次
番号を参照し、参照した順次番号を1増加した値を順次
番号とする。本例では、初期化時刻を”10時0分0
秒”とし、予め保持していた順次番号が0(初期値)で
あったとする。制御部2は、処理要求に付加されたIP
アドレス、初期化時刻、順次番号を含む電文識別子を生
成する。この電文識別子は、図2(b)に示すようにな
る。制御部12は、この電文識別子を処理要求に付加し
(ステップS62)、処理要求を連携先サーバ21に送
信する(ステップS63)。
【0047】連携先サーバ21の制御部22は、この処
理要求を受信する(ステップS81)。この処理要求は
中継サーバ11から再送信された要求ではなく、初めて
送信された要求であるので、この処理要求の電文識別子
に対応する応答電文は、データベース26に保持されて
いない。したがって、制御部22は、要求された処理が
まだ完了していないと判断し(ステップS82)、要求
された処理を実行する(ステップS83)。処理が完了
すると、制御部22は、応答電文を作成し、図2(b)
に示す電文識別子と対応させてデータベース26に付与
する。ここでは”A”という応答電文を作成したものと
する。制御部22はコミット処理を行い、図3に示す電
文識別子および応答電文をデータベース26に書き込む
(ステップS84)。次に、制御部22は、正常を示す
戻り値とともに、応答電文”A”を中継サーバ11に送
信する(ステップS85)。
【0048】中継サーバ11の制御部12は、正常を示
す戻り値が返ったので、応答が正常であると判断し(ス
テップS65)、連携先サーバ21から受信した応答電
文”A”を連携元サーバ1に送信する(ステップS6
6)。
【0049】次に、第二の態様として、連携先サーバ2
1が中継サーバ11に応答電文を送信するときに通信障
害が発生した場合の動作の流れを説明する。ステップS
85までの動作は、第一の態様に示す場合と同様であ
る。連携先サーバ21が処理を完了したとしても、中継
サーバ11に応答電文を送信する際に通信障害が生じる
と、中継サーバ11の制御部12には、正常を示す戻り
値が返らず、例えば、タイムアウトとなる。制御部12
は、正常な応答がないと判断したならば(ステップS6
5)、処理要求の再送信回数が、上限に達しているか否
かを判断する(ステップS67)。制御部12は、まだ
処理要求の再送信を行っていないので、再送信回数は0
回である。また、上限は1回であるので、再送信回数が
上限に達していないと判断し、処理要求を再送信する
(ステップS63)。このとき、再送信回数の情報を0
回から1回に更新する。
【0050】連携先サーバ21の制御部22は、この処
理要求を受信する(ステップS81)。この処理要求は
再送信されたものであるので、この処理要求の電文識別
子に対応する応答電文は、データベース26に保持され
ている。したがって、制御部22は、要求された処理は
既に完了していると判断し(ステップS82)、データ
ベース26から処理要求の識別子に対応する応答電文”
A”を抽出する。そして、正常を示す戻り値とともに、
応答電文”A”を中継サーバ11に送信する(ステップ
S85)。以降の動作は、第一の態様におけるステップ
S65以降の動作と同様である。
【0051】次に、第三の態様として、中継サーバ11
が連携先サーバ21に処理要求を送信するときに通信障
害が発生した場合の動作の流れを説明する。ステップS
63までの動作は、第一の態様に示す場合と同様であ
る。中継サーバ11が、処理要求を送信したとしても、
通信障害が発生すると、連携サーバ21は処理要求を受
信せず、要求された処理を実行しない。すると、中継サ
ーバ11には正常を示す戻り値が返らず、制御部12
は、正常な応答がないと判断する(ステップS65)。
次に、制御部12は、処理要求の再送信回数が、上限に
達しているか否かを判断する(ステップS67)。制御
部12はまだ処理要求の再送信を行っていないので、再
送信回数は0回である。また、上限は1回であるので、
再送信回数が上限に達していないと判断し、処理要求を
再送信する(ステップS63)。このとき、再送信回数
の情報を0回から1回に更新する。
【0052】連携先サーバ21の制御部22は、この処
理要求を受信する(ステップS81)。この処理要求
は、連携先サーバ21に初めて届いたもであるので、こ
の処理要求の電文識別子に対応する応答電文は、データ
ベース26に保持されていない。したがって、制御部2
2は、要求された処理がまだ完了していないと判断し
(ステップS82)、要求された処理を実行する(ステ
ップS83)。以降の動作は、第一の態様に示すステッ
プS84以降の動作と同様である。
【0053】
【発明の効果】本発明の分散処理システムによれば、中
継計算機は、処理要求計算機から受信した処理要求を、
通信ネットワークを介して処理計算機に送信する処理要
求送信手段と、前記処理要求に対する処理計算機からの
正常な応答の有無を判断する応答結果判断手段とを備
え、処理要求送信手段は、処理計算機からの正常な応答
がないと判断された場合に処理要求を再送信し、処理計
算機は、中継計算機から受信した処理要求に応じた処理
が完了しているか否かを判断する処理状況判断手段と、
処理要求に応じた処理を実行する処理実行手段とを備
え、処理実行手段は、処理要求に応じた処理が完了して
いないと判断された場合に前記処理を実行するので、通
信障害の発生に伴い中継計算機が処理要求を複数回送信
したとしても、処理計算機における同一処理の重複を排
除することができる。
【0054】本発明の中継計算機によれば、処理要求計
算機から受信した処理要求に各処理要求を識別するため
の識別情報を付加する識別情報付加手段と、識別情報が
付加された処理要求を、通信ネットワークを介して処理
計算機に送信する処理要求送信手段と、前記処理要求に
対する処理計算機からの正常な応答の有無を判断する応
答結果判断手段とを備え、処理要求送信手段は、処理計
算機からの正常な応答がないと判断された場合に処理要
求を再送信するので、処理計算機に、要求された処理が
完了したのか否かを判断させることができる。
【0055】本発明の処理計算機によれば、中継計算機
から受信した処理要求に応じた処理が完了しているか否
かを、前記処理要求に付加された識別情報に対応する応
答電文がデータベースに保持されているか否かに基づい
て判断する処理状況判断手段と、処理要求に応じた処理
が完了していないと判断された場合に前記処理を実行す
る処理実行手段と、処理実行手段が処理を完了した場合
に、処理要求に対する応答電文を、前記処理要求に付加
された識別情報に対応させてデータベースに保持させる
応答電文保持手段と、処理実行手段が処理を完了した場
合に、処理要求に対する応答電文を、通信ネットワーク
を介して中継計算機に送信し、処理状況判断手段が処理
要求に応じた処理が完了していると判断した場合に、処
理要求に対する応答電文をデータベースから抽出して通
信ネットワークを介して中継計算機に送信する応答電文
送信手段とを備えているので、通信障害の発生に伴い中
継計算機が処理要求を複数回送信したとしても、同一処
理の重複を排除することができる。
【図面の簡単な説明】
【図1】 本発明の実施の一形態を示すブロック図であ
る。
【図2】 電文識別子の例を示す説明図である。
【図3】 データベースに登録される応答電文と電文識
別子の例を示す説明図である。
【図4】 中継サーバの動作の例を示す流れ図である。
【図5】 連携先サーバの動作の例を示す流れ図であ
る。
【符号の説明】
1 連携元サーバ 2 制御部 3 記憶装置 4 クライアントアプリケーションプログラム 11 中継サーバ 12 制御部 13 記憶装置 14 中継プログラム 15 電文識別子情報管理プログラム 21 連携先サーバ 22 制御部 23 記憶装置 24 サーバアプリケーションプログラム 26 データベース

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 処理要求を送信する処理要求計算機と、
    要求された処理を実行する処理計算機と、処理要求計算
    機と処理計算機とが授受する情報を中継する中継計算機
    とを備えた分散処理システムであって、 中継計算機は、処理要求計算機から受信した処理要求
    を、通信ネットワークを介して処理計算機に送信する処
    理要求送信手段と、 前記処理要求に対する処理計算機からの正常な応答の有
    無を判断する応答結果判断手段とを備え、 処理要求送信手段は、処理計算機からの正常な応答がな
    いと判断された場合に処理要求を再送信し、 処理計算機は、中継計算機から受信した処理要求に応じ
    た処理が完了しているか否かを判断する処理状況判断手
    段と、 処理要求に応じた処理を実行する処理実行手段とを備
    え、 処理実行手段は、処理要求に応じた処理が完了していな
    いと判断された場合に前記処理を実行することを特徴と
    する分散処理システム。
  2. 【請求項2】 中継計算機は、処理要求計算機から受信
    した処理要求に各処理要求を識別するための識別情報を
    付加する識別情報付加手段を備え、 処理要求送信手段は、識別情報が付加された処理要求
    を、通信ネットワークを介して処理計算機に送信し、 処理計算機は、処理実行手段が処理を完了した場合に、
    処理要求に対する応答電文を、前記処理要求に付加され
    た識別情報に対応させてデータベースに保持させる応答
    電文保持手段と、 処理実行手段が処理を完了した場合に、処理要求に対す
    る応答電文を、通信ネットワークを介して中継計算機に
    送信する応答電文送信手段とを備え、 処理状況判断手段は、中継計算機から受信した処理要求
    に付加された識別情報に対応する応答電文がデータベー
    スに保持されているか否かに基づいて、処理が完了して
    いるか否かを判断し、 応答電文送信手段は、処理状況判断手段が処理要求に応
    じた処理が完了していると判断した場合に、処理要求に
    対する応答電文をデータベースから抽出して中継計算機
    に送信することを特徴とする請求項1記載の分散処理シ
    ステム。
  3. 【請求項3】 処理要求送信手段は、同一の識別情報が
    付加された処理要求の送信回数が上限回数に達した場合
    に、前記識別情報が付加された処理要求の再送信を停止
    する請求項2記載の分散処理システム。
  4. 【請求項4】 処理要求を送信する処理要求計算機と要
    求された処理を実行する処理計算機とが授受する情報を
    中継する中継計算機であって、 処理要求計算機から受信した処理要求に各処理要求を識
    別するための識別情報を付加する識別情報付加手段と、 識別情報が付加された処理要求を、通信ネットワークを
    介して処理計算機に送信する処理要求送信手段と、 前記処理要求に対する処理計算機からの正常な応答の有
    無を判断する応答結果判断手段とを備え、 処理要求送信手段は、処理計算機からの正常な応答がな
    いと判断された場合に処理要求を再送信することを特徴
    とする中継計算機。
  5. 【請求項5】 処理要求を送信する処理要求計算機から
    の処理要求を中継計算機を介して受信する処理計算機で
    あって、 中継計算機から受信した処理要求に応じた処理が完了し
    ているか否かを、前記処理要求に付加された識別情報に
    対応する応答電文がデータベースに保持されているか否
    かに基づいて判断する処理状況判断手段と、 処理要求に応じた処理が完了していないと判断された場
    合に前記処理を実行する処理実行手段と、 処理実行手段が処理を完了した場合に、処理要求に対す
    る応答電文を、前記処理要求に付加された識別情報に対
    応させてデータベースに保持させる応答電文保持手段
    と、 処理実行手段が処理を完了した場合に、処理要求に対す
    る応答電文を、通信ネットワークを介して中継計算機に
    送信し、処理状況判断手段が処理要求に応じた処理が完
    了していると判断した場合に、処理要求に対する応答電
    文をデータベースから抽出して通信ネットワークを介し
    て中継計算機に送信する応答電文送信手段とを備えたこ
    とを特徴とする処理計算機。
  6. 【請求項6】 処理要求を送信する処理要求計算機と要
    求された処理を実行する処理計算機とが授受する情報を
    中継するコンピュータを、 処理要求計算機から受信した処理要求に各処理要求を識
    別するための識別情報を付加する手段、 識別情報が付加された処理要求を、通信ネットワークを
    介して処理計算機に送信する手段、 前記処理要求に対する処理計算機からの正常な応答の有
    無を判断する手段、および処理計算機からの正常な応答
    がないと判断された場合に処理要求を再送信する手段と
    して機能させるための中継計算機プログラム。
  7. 【請求項7】 処理要求を送信する処理要求計算機から
    の処理要求を中継計算機を介して受信するコンピュータ
    を、 中継計算機から受信した処理要求に応じた処理が完了し
    ているか否かを、前記処理要求に付加された識別情報に
    対応する応答電文がデータベースに保持されているか否
    かに基づいて判断する手段、 処理要求に応じた処理が完了していないと判断された場
    合に前記処理を実行する手段、 処理要求に応じた処理が完了した場合に、処理要求に対
    する応答電文を、前記処理要求に付加された識別情報に
    対応させてデータベースに保持させる手段、および処理
    要求に応じた処理が完了した場合に、処理要求に対する
    応答電文を、通信ネットワークを介して中継計算機に送
    信し、処理要求を受信したときに処理要求に応じた処理
    が完了していると判断された場合に、処理要求に対する
    応答電文をデータベースから抽出して通信ネットワーク
    を介して中継計算機に送信する手段として機能させるた
    めの処理計算機プログラム。
JP2001274205A 2001-09-10 2001-09-10 分散処理システム、中継計算機、処理計算機、中継計算機プログラム、および処理計算機プログラム Pending JP2003085060A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001274205A JP2003085060A (ja) 2001-09-10 2001-09-10 分散処理システム、中継計算機、処理計算機、中継計算機プログラム、および処理計算機プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001274205A JP2003085060A (ja) 2001-09-10 2001-09-10 分散処理システム、中継計算機、処理計算機、中継計算機プログラム、および処理計算機プログラム

Publications (1)

Publication Number Publication Date
JP2003085060A true JP2003085060A (ja) 2003-03-20

Family

ID=19099291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001274205A Pending JP2003085060A (ja) 2001-09-10 2001-09-10 分散処理システム、中継計算機、処理計算機、中継計算機プログラム、および処理計算機プログラム

Country Status (1)

Country Link
JP (1) JP2003085060A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007140822A (ja) * 2005-11-17 2007-06-07 Nippon Telegraph & Telephone West Corp 情報収集システム、情報収集装置及び情報一時保存装置
JP2014160451A (ja) * 2013-01-24 2014-09-04 Ricoh Co Ltd 情報処理システム及び情報処理方法
JP2014178987A (ja) * 2013-03-15 2014-09-25 Brother Ind Ltd 中継サーバ
JP2016136297A (ja) * 2015-01-23 2016-07-28 三菱電機ビルテクノサービス株式会社 中継装置、データ通信システム及びプログラム
JP2019168739A (ja) * 2018-03-22 2019-10-03 日本電気株式会社 並列計算システム
JP2019212149A (ja) * 2018-06-07 2019-12-12 富士ゼロックス株式会社 中継サーバ
JP2020101912A (ja) * 2018-12-20 2020-07-02 楽天株式会社 テスト支援装置、テスト支援方法、ならびに、プログラム

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007140822A (ja) * 2005-11-17 2007-06-07 Nippon Telegraph & Telephone West Corp 情報収集システム、情報収集装置及び情報一時保存装置
JP4579139B2 (ja) * 2005-11-17 2010-11-10 西日本電信電話株式会社 情報収集システム、情報収集装置及び情報一時保存装置
JP2014160451A (ja) * 2013-01-24 2014-09-04 Ricoh Co Ltd 情報処理システム及び情報処理方法
JP2014178987A (ja) * 2013-03-15 2014-09-25 Brother Ind Ltd 中継サーバ
CN105827300A (zh) * 2015-01-23 2016-08-03 三菱电机大楼技术服务株式会社 中继装置以及数据通信系统
KR20160091258A (ko) * 2015-01-23 2016-08-02 미쓰비시 덴키 빌딩 테크노 서비스 가부시키 가이샤 중계 장치 및 데이터 통신 시스템
JP2016136297A (ja) * 2015-01-23 2016-07-28 三菱電機ビルテクノサービス株式会社 中継装置、データ通信システム及びプログラム
KR102392154B1 (ko) * 2015-01-23 2022-04-28 미쓰비시 덴키 빌딩 테크노 서비스 가부시키 가이샤 중계 장치 및 데이터 통신 시스템
JP2019168739A (ja) * 2018-03-22 2019-10-03 日本電気株式会社 並列計算システム
JP7075043B2 (ja) 2018-03-22 2022-05-25 日本電気株式会社 並列計算システム
JP2019212149A (ja) * 2018-06-07 2019-12-12 富士ゼロックス株式会社 中継サーバ
JP7081313B2 (ja) 2018-06-07 2022-06-07 富士フイルムビジネスイノベーション株式会社 中継サーバ
JP2020101912A (ja) * 2018-12-20 2020-07-02 楽天株式会社 テスト支援装置、テスト支援方法、ならびに、プログラム

Similar Documents

Publication Publication Date Title
US6216151B1 (en) Saving connection time by obtaining result of request at later reconnection with server supplied associated key
US20020052938A1 (en) Network device management method, and network devices
JPH10198616A (ja) 分散ログ一括管理機能付きネットワークシステム
JPH06125347A (ja) メッセージ交換方法
JP2002202953A (ja) プロセス障害またはシステム障害後の回復
US20080140846A1 (en) Virtualization and high availability of network connections
US20100138544A1 (en) Method and system for data processing
US20100131465A1 (en) Method for duplicating a database in a network of machines, and system of machines comprising a duplicated database
KR100439238B1 (ko) 전송유니트간 송수신 데이터의 릴라이어블 프로토콜운용방법
JPH10112740A (ja) 情報処理装置、通信方法および記憶媒体
JP2003085060A (ja) 分散処理システム、中継計算機、処理計算機、中継計算機プログラム、および処理計算機プログラム
JP3608905B2 (ja) データ通信システム及びデータ通信方法
CN112954658B (zh) 适于通信协议层数据交换的名片系统及数据交换的方法
KR20050112912A (ko) 소켓 어플리케이션 프로그램을 이용한 데이터 중계 시스템및 데이터 중계 방법
JPH08249249A (ja) メッセージ中継装置及びメッセージ中継方法
JP2003140986A (ja) 遠隔監視システムおよび通信制御方法
KR20200059154A (ko) 기능적으로 안전한 접속 식별 방법
US20030172092A1 (en) System and method for client-server communication
JP2804876B2 (ja) 多重系装置を含むネットワークシステムの通信方法
JP3006469B2 (ja) メッセージ重送チェックシステム
JP2776274B2 (ja) 中継計算機における仮想バッファ制御システム
KR20010004954A (ko) 푸시시스템에서 멀티서버를 이용한 채널 연동 방법
KR0174603B1 (ko) 교환기의 데이타 베이스 복원방법
JP2000148563A (ja) 複数サーバ計算機システム
JPH10336242A (ja) データ通信システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051011

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20051115

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20051115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060221