JPH09160885A - クラスタ型計算機装置の負荷分散方法 - Google Patents

クラスタ型計算機装置の負荷分散方法

Info

Publication number
JPH09160885A
JPH09160885A JP31633995A JP31633995A JPH09160885A JP H09160885 A JPH09160885 A JP H09160885A JP 31633995 A JP31633995 A JP 31633995A JP 31633995 A JP31633995 A JP 31633995A JP H09160885 A JPH09160885 A JP H09160885A
Authority
JP
Japan
Prior art keywords
processor module
message
communication
file
transaction
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
JP31633995A
Other languages
English (en)
Inventor
Yuzuru Maya
譲 真矢
Atsushi Ugajin
敦 宇賀神
Toshiyuki Kinoshita
俊之 木下
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP31633995A priority Critical patent/JPH09160885A/ja
Publication of JPH09160885A publication Critical patent/JPH09160885A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】通信プロセッサモジュールは処理時間を算出
し、受信側プロセッサモジュールに電文を送信すること
により、処理能力を向上させ、障害時の回復時間を短縮
する。 【解決手段】プロセッサモジュールは、プロセッサ、メ
モリおよびIOPから構成し、プロセス間通信パスと制御
用通信パスにより接続する。電文処理は、端末との通信
を行う通信プロセス、トランザクションプロセスおよび
ファイルプロセスに分割する。トランザクションとファ
イルプロセッサモジュール(通信プロセッサモジュー
ル)は、制御用通信パスを介して、通信プロセッサモジ
ュールにシステム稼働情報を送信する。一方、通信プロ
セッサモジュールは、電文を送信する際、受信側プロセ
ッサモジュールの処理時間を計算し、処理時間より受信
側プロセッサモジュールとその予備のプロセッサモジュ
ールを選び、電文を送信する。

Description

【発明の詳細な説明】
【0001】
【発明に属する技術分野】本発明は、複数のプロセッサ
モジュールをプロセス間通信パスおよび制御用通信パス
により接続し、電文処理を複数のプロセスに分割し、分
割されたプロセスを複数のプロセッサモジュールに搭載
したクラスタ型計算機システムに係わり、プロセッサモ
ジュールの負荷を均一にすることにより、システム全体
の処理能力を向上させ、更に障害時におけるシステム回
復時間を短縮するクラスタ型計算機装置およびその負荷
分散方法に関する。
【0002】
【従来の技術】計算機システムはダウンサイジングによ
り、汎用大型機を中心としたシステムから多数のプロセ
ッサモジュールを高速バスにより接続する分散システム
に移行している。一方、計算機システムの処理形態はオ
ンライントランザクション処理が主流になり、年々トラ
ンザクション処理量が増大し、高い処理能力が要求され
ている。
【0003】ところで、従来の分散機では、日経エレク
トロニクス(1992.5.18、No.554、p.87〜p.96)に記載
されている。これは、現用系と待機系からなるホットス
タンバイ構成であり、これらの系間に制御用通信パスを
設け、障害を検出するためのaliveメッセージのみを送
信していた。しかし、このようなホットスタンバイシス
テムでは電文の処理時間やIO(入出力)待ち時間のよう
なシステム稼働情報を他系に送信していなかった。
【0004】一方、従来の負荷分散方法は、”マルチプ
ロセッサ時分割システムにおける負荷分散アルゴリズ
ム”(電子情報通信学会論文誌 D-I Vol.J72-D-I No.2
PP.75-82 1989年2月)に記載されているように、2つの
プロセッサモジュール間でCPU利用率あるいは応答時間
のようなシステム稼働情報により、プロセッサモジュー
ル間の負荷分散を行っていた。
【0005】最後に、並列計算機でも同様の技術が行わ
れており、「並列計算機構成論」、冨田真治著(p.195
〜p.200)では、以下のように記載されている。すなわ
ち、並列計算機では、フェールセーフシステムの適用に
より、1プロセッサに複数の機能を持たせない。プロセ
ッサ障害時には、処理を引き継ぐのではなく、障害プロ
セッサを閉塞させている。
【0006】SMS-201の場合、動作モードは制御、通信
および実行の各モードに分割されている。制御・通信モ
ードでは、マスタプロセッサ(メインプロセッサ)は各
プロセッサの結果が格納されている通信用メモリの出力
バッファの内容を読み出し、それをすべてのプロセッサ
の通信用メモリの入力バッファにブロードキャスト方式
により書き込む。従って、各プロセッサの通信用メモリ
の内容はすべて同一になる。実行モードでは、各プロセ
ッサは通信メモリを使用して、相互に全く独立に動作
し、結果を通信用メモリの出力バッファに格納し、処理
の終了を主プロセッサに報告し、制御・通信モードを待
つ。
【0007】
【発明が解決しようとする課題】クラスタ型計算機シス
テムにおいて、オンライントランザクション処理を実行
する場合には、複数のプロセッサモジュールをプロセス
間通信パスおよび制御用通信パスにより接続し、電文処
理を複数のプロセス(通信プロセス、トランザクション
プロセスおよびファイルプロセス)に分割する。そし
て、分割されたプロセスはそれぞれ多数のプロセッサモ
ジュールで実行される。
【0008】そして、通信プロセッサモジュールが端末
から電文を受信すると、トランザクションプロセッサモ
ジュールに電文を送信する。そして、トランザクション
プロセッサモジュールは電文を解析し、ファイルプロセ
ッサモジュールにディスクの読み出し処理や書き込み処
理を要求する。更に、ファイルプロセッサモジュールは
ディスクへの読み出し処理や書き込み処理を実行する。
その後、ファイルプロセッサモジュールは、これらの処
理が終了すると、ディスクのアクセス要求の送信元のト
ランザクションプロセッサモジュールにディスクへの書
き込み完了を通知する。そして、トランザクションプロ
セッサモジュールは、電文送信元の通信プロセッサモジ
ュールに処理結果を送信する。最後に、通信プロセッサ
モジュールは処理結果を端末に通知する。
【0009】このように、トランザクション処理では、
ディスクの参照および更新に関し、通信プロセッサモジ
ュールからファイルプロセッサモジュールまでの処理の
経路では、行きと帰りの経路は同一のプロセッサモジュ
ールでなければならない。
【0010】ところで、従来の分散機構では、現用系と
待機系からなるホットスタンバイ構成であり、これらの
系間に制御用通信パスを設け、障害を検出するためのal
iveメッセージのみを送信していた。しかし、このよう
なホットスタンバイシステムでは電文の処理時間やIO待
ち時間のようなシステム稼働情報を他系に送信していな
かった。その結果、負荷の分散は考慮されていなかっ
た。
【0011】次に、従来の負荷分散方法は、”マルチプ
ロセッサ時分割システムにおける負荷分散アルゴリズ
ム”(電子情報通信学会論文誌 D-I Vol.J72-D-I No.2
PP.75-82 1989年2月)に記載されているように、2つの
プロセッサモジュール間でCPU利用率あるいは応答時間
のようなシステム稼働情報により、プロセッサモジュー
ル間の負荷分散を行っていた。このシステムでは、マス
タプロセッサを設けていないため、2つのプロセッサモ
ジュール間で負荷分散は可能であるが、システム全体を
考慮した負荷分散は行えないという問題があった。
【0012】ところで、従来の負荷分散方法では、マス
タプロセッサを設けておらず、通信プロセッサとトラン
ザクションプロセッサ間、およびトランザクションプロ
セッサとファイルプロセッサ間でで負荷分散を行ってお
り、システム全体での負荷分散を行っていなかった。
【0013】最後に、並列計算機でも同様の技術が行わ
れており、「並列計算機構成論」、冨田真治著(p.195
〜p.200)では、以下のように記載されている。並列計
算機では、フェールセーフシステムの適用により、1プ
ロセッサに複数の機能を持たせない。プロセッサ障害時
には、処理を引き継ぐのではなく、障害プロセッサを閉
塞させている。SMS-201の場合には、マスタプロセッサ
を設けているが、負荷分散制御は行っていない。また、
各プロセッサモジュールは、単一の機能のみを実行して
いる。その結果、並列計算機では、プロセッサモジュー
ル障害が発生すると、特定のプロセスの処理能力が低下
し、システム全体の処理能力が低下する。更に、待機プ
ロセスを設けていないため、予備のルートを設定するこ
とができなくなり、障害時におけるシステム回復時間が
長くなるという問題がある。
【0014】また、プロセッサモジュールで障害が発生
すると、チェックポイントデータの取得により、実行中
の電文の引き継ぎは可能であるが、入力待ち行列に格納
されている電文は消滅する。このため、電文の再送処理
が必要となり、回復時間が長くなるという問題が残る。
【0015】本発明の目的は、クラスタ型計算機システ
ムにおいて、通信プロセッサモジュールが他のすべての
プロセッサモジュールを管理し、プロセッサモジュール
間の負荷を均一にし、システム全体の処理能力を向上さ
せることにある。また、本発明の他の目的は、受信側プ
ロセッサモジュールの処理時間により予備のプロセッサ
モジュールを選んで電文を送信させておき、受信側プロ
セッサモジュールで障害が発生しても、電文の再送処理
をなくし、回復時間を短縮させることにある。
【0016】
【課題を解決するための手段】上記のようにプロセスを
分割したシステムの処理能力は、プロセス毎に処理能力
を算出し、これらのうち最も低いプロセスの処理能力に
なる。このため、同一プロセスを実行しているプロセッ
サモジュール間に負荷のばらつきがあると、システム処
理能力の低下の要因となる。
【0017】本発明の目的を達成するために、すべての
プロセッサモジュールを制御用通信パスとプロセス間通
信パスにより接続し、受信側プロセッサモジュール(以
下、トランザクションプロセッサモジュールとファイル
プロセッサモジュール)は、電文の実行時間等のシステ
ム稼働情報を制御用通信パスを介して、通信プロセッサ
モジュールに送信する。一方、通信プロセッサモジュー
ルはトランザクションプロセッサモジュールとファイル
プロセッサモジュールの処理時間を算出し、処理時間が
最小となるトランザクションプロセッサモジュールとフ
ァイルプロセッサモジュールを選択する。これにより、
通信プロセッサモジュールはこれらの受信側プロセッサ
モジュールに電文を送信することにより、プロセッサモ
ジュールの負荷を均一にし、システム全体の処理能力を
向上させる。
【0018】本発明の他の目的を達成するために、上記
で算出した処理時間から、トランザクションプロセッサ
モジュールとファイルプロセッサモジュールはそれぞれ
予備のプロセッサモジュールを選び、予備のプロセッサ
モジュールにも電文を送信し、実際に電文処理を行って
いるプロセッサモジュールに障害が発生しても、回復時
間を短縮させることができる。
【0019】電文の受信側プロセッサモジュールは、制
御用通信パスを介して、一定間隔毎に通信プロセッサモ
ジュールにシステム稼働情報として、待ち行列に格納さ
れている電文のタイプとその個数を送信する。一方、受
信側プロセッサモジュールは、システム立ち上げ時に、
通信プロセッサモジュールに処理能力や送信する電文の
処理ステップ数の情報を送信しておく。そして、通信プ
ロセッサモジュールは、電文を送信する場合に受信側プ
ロセッサモジュールの処理時間を計算する。そして、処
理時間の最も短いトランザクションプロセッサモジュー
ルとファイルプロセッサモジュールとこれらの予備のプ
ロセッサモジュールを選び、これらのトランザクション
プロセッサモジュールとファイルプロセッサモジュール
に電文を送信する。障害が発生すると、予備のプロセッ
サモジュールが引き継ぎ処理を実行する。
【0020】本発明では、プロセッサモジュールは、プ
ロセッサ、メモリ、IOPおよびIO制御装置から構成す
る。複数のプロセッサモジュールは、プロセス間通信パ
スと制御用通信パスにより接続される。電文処理の機能
は、端末との通信を行う通信プロセス、トランザクショ
ンプロセスおよびディスクとのアクセスを制御するファ
イルプロセスに分割される。
【0021】まず、トランザクションプロセッサモジュ
ールおよびファイルプロセッサモジュールは、制御用通
信パスを介して、待ち行列に格納されている電文のタイ
プとその個数をシステム稼働情報として、通信プロセッ
サモジュールに送信する。
【0022】一方、通信プロセッサモジュールは、受信
した待ち行列に格納されている電文のタイプとその個
数、およびあらかじめ受信側プロセッサモジュールから
受信しておいた受信側プロセッサモジュールの処理能力
や電文の処理ステップ数の情報から処理時間を計算す
る。そして、通信プロセッサモジュールは処理時間が最
も短いプロセッサモジュールを選び、選んだ受信側プロ
セッサモジュールに電文を送信する。同様に、予備とな
るプロセッサモジュールを選び、これらのプロセッサモ
ジュールに電文を送信しておく。
【0023】このようにして、通信プロセッサモジュー
ルは、受信側プロセッサモジュ−ルから得た情報に基づ
いて、各受信側プロセッサモジュールの負荷を均一と
し、システム全体の処理能力を向上できる。また、プロ
セッサモジュールで障害が発生しても、予備のプロセッ
サモジュールが電文を受信しているため、回復時間を短
縮できる。
【0024】
【発明の実施の形態】以下、本発明の実施例を示す。図
1は、本発明によるシステム構成図である。本発明によ
るシステム構成は、9個のプロセッサモジュール(11
〜19)を前提とする。すべてのプロセッサモジュール
(11〜19)は、制御用通信パス(1)およびプロセ
ス間通信パス(3)により接続する。
【0025】制御用通信パス(1)は、システム稼働情
報、リセットメッセージおよびaliveメッセージを通信
する。リセットメッセージは障害の発生したプロセッサ
モジュール(11〜19)へ閉塞を要求するメッセージ
である。aliveメッセージはプロセッサモジュール(1
1〜19)が正常に動作しているかどうかチェックする
メッセージである。システム稼働情報は、本発明で使用
するメッセージであり、プロセッサモジュール(11〜
19)の実行中の情報を示すものである。
【0026】プロセス間通信パス(3)は、プロセス間
で電文を通信するために使用する。プロセッサモジュー
ル(11〜13)は、図5で説明するように通信プロセ
ス(30)を搭載する。このため、プロセッサモジュー
ル(11〜13)は業務用LAN(4)および回線切替装
置(5)と接続し、端末(6−1〜4)と通信できるよ
うにする。また、プロセッサモジュール(11〜13)
は受信電文の識別が必須であるため、電文に時刻印を付
与する。このために、プロセッサモジュール(11〜1
3)はタイマ(7)と接続されている。プロセッサモジ
ュール(11〜13)は、共有ディスク(2−0)を共
有し、障害発生時に、処理を引き継ぐために必須なチェ
ックポイント情報を格納する。
【0027】一方、他のプロセッサモジュール(14〜
19)は、通信プロセス(30)を搭載しないため、業
務用LAN(4)あるいは回線切替装置(5)と接続され
ていない。プロセッサモジュール(14〜16)は共有
ディスク(2−1)を共有し、プロセッサモジュール
(14〜16)の障害発生時に、処理を引き継ぐために
必須なチェックポイント情報を格納する。プロセッサモ
ジュール(17〜19)は共有ディスク(2−2)を共
有し、プロセッサモジュール(17〜19)の障害発生
時に、処理を引き継ぐために必須なチェックポイント情
報を格納する。また、共有ディスク(2−2)には、端
末(6)が参照あるいは更新するデータを格納する。
【0028】図2は本発明の処理概要を示す図である。
トランザクションプロセッサモジュール(14〜16)
は、一定間隔毎にシステム稼働情報を通信プロセッサモ
ジュール(11〜13)に送信する(処理 50)。同
様に、ファイルプロセッサモジュール(17〜19)
は、一定間隔毎にシステム稼働情報を通信プロセッサモ
ジュール(11〜13)に送信する(処理 51)。
【0029】一方、通信プロセッサモジュール(11〜
13)は、トランザクションプロセッサモジュール(1
4〜16)とファイルプロセッサモジュール(17〜1
9)のすべての組合せにおいて、処理時間を算出し、こ
れが最小となるように電文を送信するトランザクション
プロセッサモジュール(15)とファイルプロセッサモ
ジュール(19)を決定する。
【0030】次に、プロセッサモジュール(11〜1
9)の処理手順について説明する。通信プロセッサモジ
ュール(12)は端末(6)から電文を受信する(処理
60)。そして、通信プロセッサモジュール(12)
は、処理時間が最小となるトランザクションプロセッサ
モジュール(15)に電文を送信する。更に、トランザ
クションプロセッサモジュール(15)は、通信プロセ
ッサモジュール(12)から受信した処理時間が最小と
なるファイルプロセッサモジュール(19)に電文を送
信する(処理 62)。
【0031】そして、ファイルプロセッサモジュール
(19)はディスクの読み出し処理(処理 63)およ
び書き込み処理を実行する(処理 64)。そして、そ
の処理結果をトランザクションプロセッサモジュール
(15)に戻す(処理 65)。更に、トランザクショ
ンプロセッサモジュール(15)は、処理結果を通信プ
ロセッサモジュール(12)に戻す(処理 66)。最
後に、通信プロセッサモジュール(12)は処理結果を
端末(6)に戻す(処理 67)。
【0032】このように、通信プロセッサモジュール
(12)は、受信側プロセッサモジュール(14〜1
9)から常に電文のタイプとその個数を受信しておき、
通信プロセッサモジュール(11〜13)は、受信側プ
ロセッサモジュール(14〜19)の処理能力および電
文の処理ステップ数により、処理時間を計算し、処理時
間が最小となるプロセッサモジュール(14〜19)に
電文を送信する。これにより、通信プロセッサモジュー
ル(12)は受信側プロセッサモジュール(14〜1
9)の負荷を均一にし、システム全体の処理能力を向上
させることが可能となる。
【0033】更に、通信プロセッサモジュール(12)
は処理時間により、予備のプロセッサモジュール(1
6、17)を選び、予備のプロセッサモジュール(1
6、17)は電文受信処理(処理 70〜72)のみ実
行することにより、障害時に電文の再送処理をなくすこ
とが可能となり、回復時間を短縮できる。
【0034】図3は、プロセッサモジュールの構成図で
ある。プロセッサモジュール(11〜19)は業務用LA
N(4)あるいは回線切替装置(5)との接続を除い
て、同一構成であるため、プロセッサモジュール(1
1)を例にして説明する。プロセッサモジュール(1
1)はプロセッサ(11−1)、メモリ(11−2)、
IOP(11−3)、回線制御装置(11−4)、プロセ
ス間通信パス制御装置(11−5)、ディスク制御装置
(11−6)、制御用通信パス制御装置(11−7)、
業務用LAN制御装置(11−8)、およびシステム監視
装置(11−9)から構成される。プロセッサモジュー
ル(12、13)は、プロセッサモジュール(11)と
同様に通信プロセス(30)を搭載するため、同一の構
成である。なお、回線制御装置(11−4)、プロセス
間通信パス制御装置(11−5)、ディスク制御装置
(11−6)、制御用通信パス制御装置(11−7)、
および業務用LAN制御装置(11−8)を合わせて、IO
制御装置(11−10)という。
【0035】一方、プロセッサモジュール(14〜1
9)は、業務用LAN(4)あるいは回線切替装置(5)
とは接続されないため、これらの制御装置は不要とな
る。プロセッサモジュール(14〜19)は、プロセッ
サ(14−1〜19−1)、メモリ(14−2〜19−
2)、IOP(14−3〜19−3)、プロセス間通信パ
ス制御装置(14−5〜19−5)、ディスク制御装置
(14−6〜19−6)、制御用通信パス制御装置(1
4−7〜19−7)、およびシステム監視装置(14−
9〜19−9)から構成される。
【0036】図4は電文処理の概要を示す図である。電
文処理は、端末(6)から電文を受信する。そして、デ
ィスク装置(2−2)から必要なデータを読み出す。電
文処理を実行し、処理結果をディスク装置(2−2)に
書き込む。そして、端末(6)に応答を返す。このた
め、本実施例では、電文処理は、端末(6)との通信を
行う通信プロセス(30)、トランザクションプロセス
(31)、およびディスク装置(2−2)のアクセスを
制御するファイルプロセス(32)に分割される。
【0037】図5は、ソフトウェアの構成と電文処理の
分割を示す図である。プロセッサモジュール(11〜1
9)のソフトウェアは、それぞれモニタ(11−20〜
19−20)、OS(11−21〜19−21)、および
プロセス(30〜32)から構成される。モニタ(11
−20〜19−20)は、プロセッサモジュール間通信
情報を管理する。
【0038】電文処理の機能は、通信プロセス(3
0)、トランザクションプロセス(31)、およびファ
イルプロセス(32)に分割される。そして、通信プロ
セス(30)はプロセッサモジュール(11〜13)
に、トランザクションプロセス(31)はプロセッサモ
ジュール(14〜16)に、ファイルプロセス(32)
はプロセッサモジュール(17〜19)にそれぞれ搭載
される。
【0039】以下、トランザクションプロセッサモジュ
ール(14〜16)とファイルプロセッサモジュール
(17〜19)を合わせて、受信側プロセッサモジュー
ル(14〜19)という。
【0040】図6は、IO制御装置のシステム構成図であ
る。ここでは、回線制御装置(11−4)を例にして、
説明する。回線制御装置(11−4)は、プロセッサ
(11−4−1)、メモリ(11−4−2)、バッファ
(11−4−3)、ディスク制御部(11−4−4)で
構成される。バッファ(11−4−3)には、他のプロ
セッサモジュール(14〜16)から受信した電文を格
納する入力待ち行列として、入力待ち行列20(11−
4−5)と入力待ち行列21(11−4−7)を設け、
また他のプロセッサモジュール(14〜16)に送信す
る電文を格納する出力待ち行列として、出力待ち行列2
0(11−4−6)と出力待ち行列21(11−4−
8)を設ける。
【0041】ここで、端末(6)からディスク(2−
2)への情報の流れに対応して、上位のプロセッサモジ
ュールおよび下位のプロセッサモジュールを、以下のよ
うに定義する。
【0042】自身のプロセッサモジュールからディスク
(2−2)側のプロセッサモジュールを下位のプロセッ
サモジュールとする。自身のプロセッサモジュールから
端末(6)側のプロセッサモジュールを上位のプロセッ
サモジュールとする。例えば、トランザクションプロセ
ッサモジュール(14〜16)から見ると、下位のプロ
セッサモジュールはファイルプロセッサモジュール(1
7〜19)であり、上位のプロセッサモジュールは通信
プロセッサモジュール(11〜13)である。
【0043】IO制御装置(11−10)の待ち行列につ
いて、入力待ち行列20(11−4−5)と出力待ち行
列20(11−4−6)は上位のプロセッサモジュール
用であり、入力待ち行列21(11−4−7)と出力待
ち行列21(11−4−8)は下位のプロセッサモジュ
ール用である。
【0044】IO制御装置(11−10)では4つの待ち
行列があるが、システム稼働情報は、上位および下位の
プロセッサモジュールから受信している電文の情報であ
るため、入力待ち行列20(11−4−5)と入力待ち
行列21(11−4−7)を対象とする。
【0045】図7はプロセッサモジュールの状態遷移図
である。ここでは、現用状態(150)、輻輳状態(1
51)、およびオフライン状態(152)の3つの状態
を設ける。現用状態(150)とは、正常に電文処理を
実行している状態である。輻輳状態(151)は、一時
的に処理能力の以上の電文を受信し、他のプロセッサモ
ジュール(11〜19)からの電文受信を禁止している
状態である。オフライン状態(152)は障害が発生し
ている状態である。
【0046】現用状態(150)で処理を実行中に、処
理時間が一定値以上になると、輻輳状態(151)に遷
移する(154)。輻輳状態(151)の場合に、処理
時間が一定値以下になると、現用状態(150)に遷移
する(155)。現用状態(150)あるいは輻輳状態
(151)で障害が発生すると、オフライン状態(15
2)に遷移する(156、157)。その後、障害から
回復すると、オフライン状態(152)から現用状態
(150)に遷移する(158)。
【0047】図8は、16進コ−ドで表わしたプロセッ
サモジュールの状態コードを示す図である。現用状態
(150)は(01)16と、輻輳状態(151)は(0
2)16と、オフライン状態(152)は(03)16とす
る。
【0048】図9は制御用通信パスにおける電文フォー
マットを示す図である。電文フォーマットは、送信元ア
ドレス(80)、送信先アドレス(81)、制御用電文
種別(82)、システム稼働情報1(83)、およびシ
ステム稼働情報2(84)から構成される。
【0049】以下、制御用通信パス(1)における電文
情報について詳細に説明する。図10は、16進コ−ド
で表わした制御用電文種別コ−ドを示す図である。制御
用電文(82)には、リセットメッセージ、aliveメッ
セージ、およびシステム稼働情報がある。これらのコー
ドは図10に示すように、それぞれ(10)16、(01)
16および(02)16とする。
【0050】図11は、システム稼働情報1とシステム
稼働情報2の組合せと、対応する意味を示す図である。
システム稼働情報1(83)が(01)16の場合には、
入力待ち行列20と入力待ち行列21に格納されている
電文のタイプとその個数を示す。
【0051】システム稼働情報1(83)が(10)16
の場合には、プロセッサモジュール(11〜19)ある
いはコンソール(8)に転送するイベント情報を示す。
さらに、システム稼働情報2(84)が(01)16の場
合には1つのプロセッサモジュールで輻輳発生を、(0
2)16の場合には同一プロセスの全プロセッサモジュー
ルで輻輳発生を、(03)16の場合には障害発生を、
(10)16の場合には輻輳から回復したことを、(11)
16の場合には障害から回復したことをそれぞれ示す。
【0052】図12は電文のタイプとその個数を示す図
である。入力待ち行列20に格納されている電文は、電
文タイプ(84−1−0〜84−5−0)とその個数
(84−1−1〜84−1−5)であり、入力待ち行列
21に格納されている電文は、電文タイプ(84−1−
2〜84−5−2)とその個数(84−1−3〜84−
1−3)である。
【0053】図13は電文のタイプとそのコードの対応
を示す図である。ここでは、電文1は(01)16とし、
以下順にコ−ドを設定し、最後の電文5は(05)16と
する。通常のデ−タは、図13に示した電文の授受の後
に送受信される。従って、以下の説明では、プロセスの
中での通常のデ−タの送受信については省略する。
【0054】図14はプロセッサモジュールとコンソー
ルのそれぞれのアドレスを示す図である。このアドレス
は、プロセス間通信パス(3)と制御用通信パス(1)
ともに、同じアドレスを使用する。プロセッサモジュー
ル(11)のアドレスは(00)16とする。以下、プロ
セッサモジュール(12〜19)とコンソール(8)の
アドレスを図14に示す通りに設定する。
【0055】図15はプロセス間通信の電文フォーマッ
トを示す図である。電文フォーマットは、送信元アドレ
ス(90)、送信先アドレス(91)、電文本体(9
2)、下位のプロセッサモジュールのアドレス(9
3)、および識別子(94)から構成される。
【0056】図16はトランザクションプロセッサモジ
ュールの入力待ち行列に格納されている電文を示す図で
ある。3つのトランザクションプロセッサモジュール
(14〜16)の入力待ち行列20(14−4−5〜1
6−4−5)には、それぞれ5個、2個、3個の電文が
格納されており、入力待ち行列21(14−4−7〜1
6−4−7)にはそれぞれ1個、0個、0個の電文が格
納されてる。これらの電文のタイプは図16に示す通り
である。
【0057】図17はファイルプロセッサモジュールの
入力待ち行列に格納されている電文を示す図である。フ
ァイルプロセッサモジュール(17〜19)の入力待ち
行列20(17−4−5〜19−4−5)には、それぞ
れ3個、0個、2個の電文が格納されている。電文のタ
イプは図17に示す通りである。ファイルプロセッサモ
ジュールは最下位のプロセッサモジュールであるため、
入力待ち行列21(17−4−7〜19−4−7)は使
用しない。
【0058】図18は、トランザクションプロセッサモ
ジュールの電文毎の処理ステップ数と、ファイルプロセ
ッサモジュールとの通信回数を示す図である。ここで
は、電文1から電文5におけるトランザクションプロセ
ッサモジュール(14〜16)の実行ステップ数(上位
のプロセッサモジュ−ル用のST1(i)と下位のプロセッサ
モジュ−ル用のST2(i))と、ファイルプロセッサモジュ
ール(17〜19)および通信プロセッサモジュール
(11〜13)との通信回数(CT1(i)とCT2(i))を示
す。
【0059】これらの情報は、すべての通信プロセッサ
モジュール(11〜13)が所有し、処理時間を算出す
るために使用する。ここでは、通信プロセッサモジュー
ル(11〜13)およびファイルプロセッサモジュール
(17〜19)から受信した電文毎の処理ステップ数を
示す。
【0060】図19はファイルプロセッサモジュールの
電文毎の処理ステップ数とIO発行回数を示す図である。
ここでは、電文1〜電文5におけるファイルプロセッサ
モジュール(17〜19)の実行ステップ数(SF1
(i))、通信回数(CF(i))、およびIO回数(IF1(i))を示
す。これらの情報は、すべての通信プロセッサモジュー
ル(11〜13)が所有し、処理時間を算出するために
使用する。
【0061】図20は、各トランザクションプロセッサ
モジュールの処理能力と状態を示す図である。図21
は、各ファイルプロセッサモジュールの処理能力と状態
を示す図である。
【0062】図20と図21について、処理能力は1秒
当りの実行ステップ数を表わす。また、プロセッサモジ
ュールの状態は図7に示したものである。ここでは、プ
ロセッサモジュール(14)は輻輳状態(151)と
し、プロセッサモジュール(18)は障害が発生しオフ
ライン状態(152)とする。他のプロセッサモジュー
ル(15〜17、19)は正常に動作しており、現用状
態(150)とする。
【0063】これ以降、各プロセッサモジュール(11
〜19)の処理手順について説明する。最初に、図22
から図24より、システム稼働情報の送受信処理につい
て説明する。
【0064】図22はシステム稼働情報による処理手順
を示す図である。図23は通信プロセッサモジュールの
処理時間の算出式である。この算出式より、トランザク
ションプロセッサモジュール(14〜16)の処理時間
を算出する。トランザクションプロセッサモジュール
(14)は図20より輻輳状態(151)である。処理
時間は、トランザクションプロセッサモジュール(1
5)が最小となり、トランザクションプロセッサモジュ
ール(16)が2番目に小さい。トランザクションプロ
セッサモジュール(15)がトランザクションプロセス
の処理を実行し、トランザクションプロセッサモジュー
ル(16)を予備のプロセッサモジュールとする。
【0065】同様に、ファイルプロセッサモジュール
(17〜19)の処理時間を算出する。ファイルプロセ
ッサモジュール(18)は図21よりオフライン状態で
ある。処理時間は、ファイルプロセッサモジュール(1
9)が最小となり、ファイルプロセッサモジュール(1
7)が2番目に小さい。ファイルプロセッサモジュール
(19)がトランザクションプロセスの処理を実行し、
ファイルプロセッサモジュール(17)を予備のプロセ
ッサモジュールとする。
【0066】図24は制御用電文の一例を示す図であ
る。図24(1)は待ち行列に格納されている電文の情
報の転送を示す。図24(2)は、上位のプロセッサモ
ジュールへの電文送信禁止の通知を示す。図24
(3)、(4)、(5)は、それぞれケース1からケー
ス3のコンソール(8)への表示を示す。
【0067】ここでは、ファイルプロセッサモジュール
(19)が通信プロセッサモジュール(12)にシステ
ム稼働情報を送信する場合を示す。まず、ファイルプロ
セッサモジュール(19)は、通信プロセッサモジュー
ル(12)に対して、システム稼働情報として、入力待
ち行列20(19−4−7)に格納されている電文のタ
イプとその個数を送信する(処理 400)。
【0068】この電文を図24(1)に示す。ここで
は、ファイルプロセッサモジュールはプロセッサモジュ
ール(19)とする。送信元アドレス(80)はプロセ
ッサモジュール(19)であるため(22)16を、送信
先アドレス(81)はプロセッサモジュール(12)で
あるため(01)16を、制御用電文種別(82)はシス
テム稼働情報であるため(02)16を、システム稼働情
報1(83)は電文のタイプと個数であるため(01)
16を、それぞれ設定する。また、システム稼働情報2
(84)は電文のタイプ毎にその個数を格納するため、
図17に示している通り、ファイルプロセッサモジュー
ル(19)には電文5が1個と電文2が1個格納されて
いるため、電文のタイプ毎に、電文のタイプの順に、電
文のタイプとその個数を、電文1では0個であるため、
(0100)16、電文2では、(0201)16、電文3
では(0300)16、電文4では(0400)16を、電
文5では(0501)16を設定する。ファイルプロセッ
サモジュール(19)は入力待ち行列21(19)を使
用しないため、入力待ち行列21用(84−1−2〜8
4−5−3)には(FF)16を格納する。
【0069】通信プロセッサモジュール(12)は、フ
ァイルプロセッサモジュール(19)の入力待ち行列2
0(19−4−5)と入力待ち行列21(19−4−
7)に格納されている電文タイプとその個数を受信する
(処理 401)。そして、通信プロセッサモジュール
(12)は、ファイルプロセッサモジュール(19)の
処理時間を算出する(処理 402)。通信プロセッサ
モジュールの処理時間の算出式を図23に示す。
【0070】ここで、通信プロセッサモジュール(1
2)は、受信側プロセッサモジュール(14〜19)の
電文の実行ステップ数、通信回数、およびIO待ち時間を
事前に格納しておく。この例を図18と図19に示す。
さらに、受信側プロセッサモジュール(14〜19)の
処理能力とプロセッサモジュールの状態を事前に格納し
ておく。この例を図20と図21に示す。
【0071】図23は処理時間の算出式である。トラン
ザクションプロセッサモジュール(14〜16)の処理
時間(RT(j))は、電文タイプ毎の実行ステップ数(ST1
(i)とST2(i))と電文数(NT1(i)とNT2(i))、およびプ
ロセス間通信回数(CT1(i)とCT2(i))とプロセス間通信
のステップ数(PS)から算出する。
【0072】ファイルプロセッサモジュール(17〜1
9)の処理時間(RF(j))は、電文タイプ毎の実行ステ
ップ数(SF1(i))と電文数(NF1(i))、プロセス間通信
回数(CF1(i))とプロセス間通信のステップ数(PS)、
およびIO発行回数(IF1(i))とIO待ち時間(IT)から算
出する。このように、通信プロセッサモジュール(1
2)は図23の算出式を用いて、受信側プロセッサモジ
ュール(14〜19)の処理時間(RT(j),RF(j))を計
算する。
【0073】そして、通信プロセッサモジュール(1
2)は、すべての受信側プロセッサモジュール(14〜
19)の処理時間が一定値(L1)以上かどうかチェッ
クする(処理 403)。そして、これが一定値以上
(L1)ならば、このプロセッサモジュールは輻輳状態
(151)と判定し、このプロセッサモジュールへの電
文送信を禁止する(処理 404)。
【0074】さらに、すべてのファイルプロセッサモジ
ュール(17〜19)が輻輳状態(151)かどうか判
定する(処理 405)。すべてのファイルプロセッサ
モジュール(17〜19)が輻輳状態(151)なら
ば、トランザクションプロセッサモジュール(11〜1
3)に対して電文送信禁止を通知する(処理 40
6)。ここで、この通知する電文を図24(2)に示
す。ここでは通信プロセッサモジュール(12)に送信
する場合を示す。送信元アドレス(80)はプロセッサ
モジュール(15)であるため(11)16を、送信先ア
ドレス(81)はプロセッサモジュール(11)である
ため(00)16を、制御用電文種別(82)はシステム
稼働情報であるため(02)16を、システム稼働情報1
(83)はイベント情報であるため(10)16を、シス
テム稼働情報2(84)は輻輳発生であるため(01)
16をそれぞれ設定する。
【0075】また、受信側プロセッサモジュール(14
〜19)が輻輳状態(151)であるかを判定し(処理
407)、輻輳状態(151)のプロセッサモジュー
ルの処理時間が一定値(L2)以下になっている(処理
408)と、下位プロセッサモジュールへの電文送信
を再開し、上位のプロセッサモジュールに対して電文送
信再開を通知する(処理 409)。
【0076】そして、ケース1〜3の場合には、コンソ
ール(8)に通知する(処理 410)。ここで、ケー
ス1の通知する電文を図24(3)に示す。送信元アド
レス(80)はプロセッサモジュール(12)であるた
め(01)16を、送信先アドレス(81)はコンソール
(8)であるため(30)16を、制御用電文種別(8
2)はシステム稼働情報であるため(02)16を、シス
テム稼働情報1(83)はイベント情報であるため(1
0)16を、システム稼働情報2(84)は1つのプロセ
ッサモジュールで輻輳発生であるため(01)16をそれ
ぞれ設定する。
【0077】ここで、ケース2の通知する電文を図24
(4)に示す。送信元アドレス(80)、送信先アドレ
ス(81)、制御用電文種別(82)、システム稼働情
報1(83)はケース1と同一である。システム稼働情
報2(84)は、すべてのファイルプロセッサモジュー
ル(17〜19)で輻輳発生であるため、(02)16を
設定する。
【0078】ここで、ケース3の通知する電文を図24
(5)に示す。送信元アドレス(80)、送信先アドレ
ス(81)、制御用電文種別(82)、システム稼働情
報1(83)はケース1と同一であり、システム稼働情
報2(84)は、ファイルプロセッサモジュール(17
〜19)は輻輳解除であるため、(10)16を設定す
る。このようにして、受信側プロセッサモジュール(1
4〜19)は、通信プロセッサモジュール(12)ある
いはコンソール(8)に輻輳発生および輻輳解除を通知
できる。
【0079】次に、図25から図27より、障害時およ
び障害回復時の処理手順について説明する。図25は障
害時の処理手順を示す図である。図27に障害時の制御
用電文を示す。
【0080】ファイルプロセッサモジュール(19)
は、一定間隔毎に常にファイルプロセッサモジュール
(17)にaliveメッセージを送信している(処理 5
00)。ファイルプロセッサモジュール(17)は、al
iveメッセ−ジの受信によりファイルプロセッサモジュ
ール(19)が正常に動作していると認識している。フ
ァイルプロセッサモジュール(19)で障害が発生する
と(処理 501)、ファイルプロセッサモジュール
(17)はaliveメッセージの途絶により、ファイルプ
ロセッサモジュール(19)の障害を検出する(処理
502)。
【0081】ここで、正常動作を通知する電文を図27
(1)に示す。ファイルプロセッサモジュール(19)
がファイルプロセッサモジュール(17)にリセットメ
ッセージを送信する場合を示す。送信元アドレス(8
0)はファイルプロセッサモジュール(19)であるた
め(22)16を、送信先アドレス(81)はファイルプ
ロセッサモジュール(17)であるため(20)16を、
制御用電文種別(82)はaliveメッセージであるため
(01)16を、システム稼働情報1(83)とシステム
稼働情報2(84)は使用しないため(FF)16を、それ
ぞれ設定する。
【0082】更に、ファイルプロセッサモジュール(1
7)は障害の発生したファイルプロセッサモジュール
(19)にリセットを要求する(処理 503)。そし
て、ファイルプロセッサモジュール(19)はモニタ
(19−20)がIO制御装置(19−10)をリセット
する処理を実行する(処理 504)。
【0083】ここで、リセット要求を通知する電文を図
27(2)に示す。ファイルプロセッサモジュール(1
8)がファイルプロセッサモジュール(19)にリセッ
トメッセージを送信する場合を示す。送信元アドレス
(80)はファイルプロセッサモジュール(17)であ
るため(20)16を、送信先アドレス(81)はファイ
ルプロセッサモジュール(19)であるため(22)16
を、制御用電文種別(82)はリセットメッセージであ
るため(10)16を、システム稼働情報1(83)とシ
ステム稼働情報2(84)は使用しないため(FF)16を
それぞれ設定する。
【0084】更に、ファイルプロセッサモジュール(1
7)は障害発生をコンソール(8)に通知し(処理 5
05)、通信プロセッサモジュール(12)に通知する
(処理 506)。そして、通信プロセッサモジュール
(12)はこれを受信する(処理 507)。
【0085】ここで、コンソ−ルに障害発生を通知する
電文を図27(3)に示す。プロセッサモジュール(1
7)がコンソール(8)に障害発生を送信する場合を示
す。送信元アドレス(80)はファイルプロセッサモジ
ュール(17)であるため(20)16を、送信先アドレ
ス(81)はコンソール(8)であるため(30)16
を、制御用電文種別(82)はシステム稼働情報である
ため(02)16を、システム稼働情報1(83)はイ
ベント情報であるため(10)16、システム稼働情報2
(84)は障害発生通知であるため(03)16をそれぞ
れ設定する。
【0086】次に、通信プロセッサモジュ−ルに障害発
生を通知する電文を図27(4)に示す。ファイルプロ
セッサモジュール(17)が通信プロセッサモジュール
(12)に障害発生を送信する場合を示す。送信元アド
レス(80)はファイルプロセッサモジュール(17)
であるため(20)16を、送信先アドレス(81)は通
信プロセッサモジュール(12)であるため(01)16
を、制御用電文種別(82)はシステム稼働情報である
ため(02)16を、システム稼働情報1(83)はプロ
セッサモジュール情報であるため(10)16、システム
稼働情報2(84)は障害発生通知であるため(03)
16をそれぞれ設定する。
【0087】図26は障害回復時の処理手順を示す図で
ある。図27(5)は障害回復時の制御用電文を示す図
である。障害の発生したファイルプロセッサモジュール
(19)は障害から回復したことを通信プロセッサモジ
ュール(12)に通知する(処理 550)。そして、
通信プロセッサモジュール(12)は障害回復の通知を
受信する(処理 551)。
【0088】図27(5)は通信プロセッサモジュール
に障害回復を通知する電文である。ファイルプロセッサ
モジュール(19)が通信プロセッサモジュール(1
2)に障害回復を送信する場合を示す。送信元アドレス
(80)はプロセッサモジュール(19)であるため
(22)16を、送信先アドレス(81)は通信プロセッ
サモジュール(12)であるため(01)16を、制御用
電文種別(82)はシステム稼働情報であるため(0
2)16を、システム稼働情報1(83)はイベント情報
であるため(10)16、システム稼働情報2(84)は
障害回復通知であるため(11)16をそれぞれ設定す
る。
【0089】最後に、障害回復の通知をコンソール
(8)に表示する(処理 552)。次に、コンソ−ル
に障害回復を通知する電文を図27(6)に示す。通信
プロセッサモジュール(12)がコンソール(8)に障
害回復を送信する場合を示す。送信元アドレス(80)
は通信プロセッサモジュール(12)であるため(0
1)16を、送信先アドレス(81)はコンソール(8)
であるため(30)16を、制御用電文種別(82)はシ
ステム稼働情報であるため(02)16を、システム稼働
情報1(83)はイベント情報であるため(10)16、
システム稼働情報2(84)は障害回復通知であるため
(11)16をそれぞれ設定する。
【0090】このようにして、プロセッサモジュール
(11〜19)間あるいはプロセッサモジュール(11
〜19)とコンソール(8)間で制御用通信パス(1)
を介して通信を行うことが可能となる。
【0091】まず、図28と図31を用いて、3つのプ
ロセッサモジュール(11〜19)間での電文処理手順
について説明する。図28は電文処理手順を示す図であ
る。図29はプロセス間通信の電文を示す図である。通
信プロセッサモジュール(12)は、端末(6)から電
文を受信すると(処理 600)、各トランザクション
プロセッサモジュール(14〜16)の処理時間を算出
し、このうち最も処理時間の短いプロセッサモジュール
を選ぶ(処理 601)。図28では、トランザクショ
ンプロセッサモジュール(15)とファイルプロセッサ
モジュール(19)とが選択されたとする。通信プロセ
ッサモジュール(12)はトランザクションプロセッサ
モジュール(15)に電文を送信する。
【0092】図29(1)は、通信プロセッサモジュー
ル(12)がトランザクションプロセッサモジュール
(15)に送信する電文を示す。送信元アドレス(9
0)は通信プロセッサモジュール(12)であるため
(01)16を、送信先アドレス(91)はトランザクシ
ョンプロセッサモジュール(15)であるため(11)
16を、電文本体(92)は(010203)16を、下位
のプロセッサモジュールのアドレス(93)はファイル
プロセッサモジュール(19)であるため(22)1
6、電文の識別子(94)は(0001)16をそれぞ
れ設定する。
【0093】トランザクションプロセッサモジュール
(15)はファイルプロセッサモジュール(19)にデ
ィスク(2−2)からの読み出しを要求する(処理 6
05)。図29(2)に読み出し要求の電文を示す。送
信元アドレス(90)はプロセッサモジュール(15)
であるため(11)16を、送信先アドレス(91)はフ
ァイルプロセッサモジュール(19)であるため(2
2)16を、電文本体(92)は(020301)16を、
下位のプロセッサモジュールのアドレス(93)はない
ため(FF)16、電文の識別子(94)は(0001)16
をそれぞれ設定する。
【0094】ファイルプロセッサモジュール(19)は
読み出し要求を受信すると(処理606)、ディスク
(2−2)の読み出し処理を実行する(処理 60
7)。そして、読み出し結果をトランザクションプロセ
ッサモジュール(15)に送信する(処理 608)。
図29(3)に読み出し結果送信の電文を示す。送信元
アドレス(90)はプロセッサモジュール(19)であ
るため(22)16を、送信先アドレス(91)はプロセ
ッサモジュール(15)であるため(11)16を、電文
本体(92)は(040203)16を、下位のプロセッ
サモジュールのアドレス(93)はないため(FF)16
を、電文の識別子(94)は(0001)16を、それぞ
れ設定する。
【0095】さらに、トランザクションプロセッサモジ
ュール(15)はファイルプロセッサモジュール(1
9)にディスク(2−2)への書き込みを要求する(処
理 609)。図29(4)に書き込み要求の電文を示
す。送信元アドレス(90)はプロセッサモジュール
(15)であるため(11)16を、送信先アドレス(9
1)はプロセッサモジュール(19)であるため(1
1)16を、電文本体(92)は(050403)16を、
下位のプロセッサモジュールのアドレス(93)はない
ため(FF)16、電文の識別子(94)は(0001)16
を、それぞれ設定する。
【0096】ファイルプロセッサモジュール(19)は
書き込み要求を受信すると(処理610)、ディスク
(2−2)の書き込み処理を実行し(処理 611)、
書き込み完了を送信する(処理 612)。図29
(5)に書き込み完了の電文を示す。送信元アドレス
(90)はプロセッサモジュール(19)であるため
(22)16を、送信先アドレス(91)はプロセッサモ
ジュール(15)であるため(11)16を、電文本体
(92)は(070203)16を、下位のプロセッサモ
ジュールのアドレス(93)はないため(FF)16を、電
文の識別子(94)は(0001)16を、それぞれ設定
する。
【0097】トランザクションプロセッサモジュール
(15)は通信プロセッサモジュール(12)に処理結
果を送信する(処理 613)。図29(6)に処理結
果送信の電文を示す。送信元アドレス(90)はプロセ
ッサモジュール(15)であるため(11)16を、送信
先アドレス(91)はプロセッサモジュール(12)で
あるため(01)16を、電文本体(92)は(0105
03)16を、下位のプロセッサモジュールのアドレス
(93)はないため(FF)16を、電文の識別子(94)
は(0001)16を、それぞれ設定する。
【0098】最後に、通信プロセッサモジュール(1
2)は、端末(6)に処理結果を送信する(処理 61
4)。このように、プロセッサモジュール(14〜1
6、17〜19)間の負荷分散が可能となる。
【0099】図30はトランザクションプロセッサモジ
ュールで障害が発生した場合の処理を示す図である。図
31はファイルプロセッサモジュールで障害が発生した
場合の処理を示す図である。図32はプロセス間通信の
電文を示す図である。まず、図30と図32を用いて、
トランザクションプロセッサモジュール(15)で障害
が発生した場合について説明する。
【0100】トランザクションプロセッサモジュール
(15)で障害が発生とすると(処理650)、トラン
ザクションプロセッサモジュール(16)はaliveメッ
セージの途絶により、障害を検出する(処理 65
1)。そして、トランザクションプロセッサモジュール
(15)に対し、リセットを要求し(処理 652)、
トランザクションプロセッサモジュール(15)はリセ
ット処理を実行する(処理653)。
【0101】リセット要求の制御用電文を図32(1)
に示す。送信元アドレス(80)はプロセッサモジュー
ル(16)であるため(12)16を、送信先アドレス
(81)はプロセッサモジュール(15)であるため
(11)16を、制御用電文種別(82)はリセットメッ
セージであるため(10)16を、システム稼働情報1
(83)とシステム稼働情報2(84)は使用しないた
め、(FF)16を格納する。そして、トランザクションプ
ロセッサモジュール(16)は、通信プロセッサモジュ
ール(12)に、障害発生を通知する(処理 65
4)。
【0102】障害通知の制御用電文を図32(2)に示
す。送信元アドレス(80)はプロセッサモジュール
(16)であるため(12)16を、送信先アドレス(8
1)はプロセッサモジュール(12)であるため(0
1)16を、制御用電文種別(82)はシステム稼働情報
であるため(02)16を、システム稼働情報1(83)
はイベント情報であるため(10)16を、システム稼働
情報2(84)は障害通知であるため(03)16を、そ
れぞれ格納する。
【0103】通信プロセッサモジュール(12)はトラ
ンザクションプロセッサモジュール(15)の処理時間
を算出し、別のトランザクションプロセッサモジュール
(16)に電文を送信する(処理 655)。そして、
トランザクションプロセッサモジュール(16)は、電
文を実行しているファイルプロセッサモジュールに通知
する(処理 656)。そして、トランザクションプロ
セッサモジュール(16)は、ファイルプロセッサモジ
ュール(19)に電文を送信する(処理 657)。
【0104】プロセス間通信の電文を図32(3)に示
す。送信元アドレス(90)はプロセッサモジュール
(12)であるため(01)16を、送信先アドレス(9
1)はプロセッサモジュール(15)であるため(1
1)16を、電文本体(92)は(010203)16を、
下位のプロセッサモジュールのアドレス(93)はプロ
セッサモジュール(19)であるため(22)16、電文
の識別子(94)は(0001)16をそれぞれ設定す
る。
【0105】トランザクションプロセッサモジュール
(15)は電文を受信すると(処理658)、ファイル
プロセッサモジュール(19)に読み出し要求を送信す
る(処理 659)。
【0106】一方、ファイルプロセッサモジュール(1
9)は、電文を受信すると、チェックポイント情報に基
づいて、回復処理を行う。書き込み処理が完了していれ
ば、処理結果をトランザクションプロセッサモジュール
に戻し、書き込み処理が完了していなければ、最初から
電文処理を再実行する。
【0107】次に、図31と図32を用いて、ファイル
プロセッサモジュール(19)で障害が発生した場合に
ついて説明する。ファイルプロセッサモジュール(1
9)で障害が発生とすると(処理 670)、ファイル
プロセッサモジュール(17)はaliveメッセージの途
絶により、障害を検出する(処理 671)。そして、
ファイルプロセッサモジュール(19)に対し、リセッ
トを要求し(処理 672)、ファイルプロセッサモジ
ュール(19)はリセット処理を実行する(処理 67
3)。
【0108】リセット要求の制御用電文を図32(4)
に示す。送信元アドレス(80)はプロセッサモジュー
ル(17)であるため(20)16を、送信先アドレス
(81)はプロセッサモジュール(19)であるため
(22)16を、制御用電文種別(82)はリセットメッ
セージであるため(10)16を、システム稼働情報1
(83)とシステム稼働情報2(84)は使用しないた
め、(FF)16を格納する。
【0109】そして、ファイルプロセッサモジュール
(17)は、通信プロセッサモジュール(12)に、障
害発生を通知する(処理 674)。
【0110】障害通知の制御用電文を図32(5)に示
す。送信元アドレス(80)はプロセッサモジュール
(17)であるため(20)16を、送信先アドレス(8
1)はプロセッサモジュール(12)であるため(0
1)16を、制御用電文種別(82)はシステム稼働情報
であるため(02)16を、システム稼働情報1(83)
はイベント情報であるため(10)16を、システム稼働
情報2(84)は障害通知であるため(03)16を、そ
れぞれ格納する。
【0111】通信プロセッサモジュ−ル(12)は、フ
ァイルプロセッサモジュ−ル(17)を介してファイル
プロセッサモジュ−ル(19)の障害発生を受信する
(処理675)。通信プロセッサモジュール(12)は
トランザクションモジュ−ル(14〜16)の処理時間
を算出し、処理時間の最も短いプロセッサモジュ−ル
(15)を選択する(処理 676)。そして、通信プ
ロセッサモジュール(12)は、トランザクションプロ
セッサモジュール(15)に送信済みの電文を再送する
(処理 677)。
【0112】プロセス間通信の電文を図32(6)に示
す。送信元アドレス(90)はプロセッサモジュール
(12)であるため(01)16を、送信先アドレス(9
1)はプロセッサモジュール(15)であるため(1
1)16を、電文本体(92)は(010203)16を、
下位のプロセッサモジュールのアドレス(93)はプロ
セッサモジュール(19)であるため(22)16、電文
の識別子(94)は(0001)16をそれぞれ設定す
る。トランザクションプロセッサモジュール(15)は
電文を受信すると(処理678)、ファイルプロセッサ
モジュール(19)に読み出し要求を送信する(処理
679)。
【0113】一方、ファイルプロセッサモジュール(1
9)は、電文を受信すると、ジャーナルに基づいて、回
復処理を行う。書き込み処理が完了していれば、処理結
果をトランザクションプロセッサモジュール(15)に
戻し、書き込み処理が完了していなければ、最初から電
文処理を再実行する。
【0114】通信プロセッサモジュール(12)で障害
が発生すると、一定時間経過しても、応答を戻らないこ
とにより、端末(6)が通信プロセッサモジュール(1
2)の障害を検出し、別の通信プロセッサモジュール
(13)に通知する。この結果、プロセッサモジュール
(15、19)で障害が発生すると、電文の再送処理が
必須となり、回復時間が長くなるという問題が残る。
【0115】最後に、予備のプロセッサモジュール(1
6、17、13)を考慮し、電文を予備のプロセッサモ
ジュール(16、17、13)にも送信し、障害時の回
復時間を短縮させる手順を示す。
【0116】図33は予備のプロセッサモジュールを考
慮した場合の処理を示す図である。図34は予備のプロ
セッサモジュールを考慮した場合のプロセス間通信の電
文を示す図である。
【0117】端末(6)は、業務用LAN(4)経由の場
合には通信プロセッサモジュール(12、13)に電文
を送信する。回線切替装置(5)経由の場合には、回線
切替装置(5)は、2つの通信プロセッサモジュール
(12、13)が電文を受信できるように制御を行い、
端末(6)からの電文を通信プロセッサモジュール(1
2、13)が受信する(処理 700、701)。本実
施例では、プロセッサモジュール(13)を予備の通信
プロセッサモジュールとする。実際に通信処理を実行す
る通信プロセッサモジュール(12)は、下位のプロセ
ッサモジュール(14〜19)の処理時間を計算し、処
理時間の最も短いプロセッサモジュールと、予備のプロ
セッサモジュールを決める(処理 702)。そして、
処理時間が最小となるプロセッサモジュールはトランザ
クションプロセッサモジュール(15)とファイルプロ
セッサモジュール(19)とする。更に、それぞれの予
備のプロセッサモジュールをトランザクションプロセッ
サモジュール(16)とファイルプロセッサモジュール
(17)とする。
【0118】通信プロセッサモジュール(12)は、電
文をトランザクションプロセッサモジュール(15、1
6)に送信する(処理 703)。このプロセス間通信
の電文を図34(1)に示す。送信元アドレス(90)
はプロセッサモジュール(12)であるため(01)16
を、送信先アドレス(91)はプロセッサモジュール
(15、16)であるため(1112)16を、電文本体
(92)は(010203)16を、下位のプロセッサモ
ジュールのアドレス(93)はプロセッサモジュール
(19、17)であるため(22、20)16を、電文の
識別子(94)は(0001)16をそれぞれ設定する。
【0119】トランザクションプロセッサモジュール
(15)は電文を受信すると(処理704)、読み出し
要求をファイルプロセッサモジュール(19、17)に
送信する(処理 706)。このプロセス間通信の電文
を図34(2)に示す。送信元アドレス(90)はプロ
セッサモジュール(15)であるため(11)16を、送
信先アドレス(91)はプロセッサモジュール(19、
17)であるため(2220)16を、電文本体(92)
は(020301)16を、下位のプロセッサモジュール
のアドレス(93)はないため(FF)16を、電文の識別
子(94)は(0001)16を、それぞれ設定する。一
方、トランザクションプロセッサモジュール(16)は
電文を受信するだけである(処理 705)。
【0120】ファイルプロセッサモジュール(19)
は、読み出し要求を受信すると(処理707)、ディス
ク(2−2)からの読み出し処理を実行する(処理 7
09)。ファイルプロセッサモジュール(17)は電文
を受信するだけである(処理708)。そして、ファイ
ルプロセッサモジュ−ル(19)は、トランザクション
プロセッサモジュール(15、16)に読み出し結果を
送信する(処理 710)。このプロセス間通信の電文
を図34(3)に示す。送信元アドレス(90)はプロ
セッサモジュール(19)であるため(22)16を、送
信先アドレス(91)はプロセッサモジュール(15、
16)であるため(1112)16を、電文本体(92)
は(040203)16を、下位のプロセッサモジュール
のアドレス(93)はないため(FF)16を、電文の識別
子(94)は(0001)16をそれぞれ設定する。
【0121】トランザクションプロセッサモジュール
(15)は、読み出し結果を受信すると(処理 71
1)、更に処理を継続させ、書き込み要求をファイルプ
ロセッサモジュール(19、17)に送信する(処理
713)。このプロセス間通信の電文を図34(4)に
示す。送信元アドレス(90)はプロセッサモジュール
(15)であるため(11)16を、送信先アドレス(9
1)はプロセッサモジュール(19、17)であるため
(2220)16を、電文本体(92)は(05040
3)16を、下位のプロセッサモジュールのアドレス(9
3)はないため(FF)16を、電文の識別子(94)は
(0001)16をそれぞれ設定する。一方、トランザク
ションプロセッサモジュール(16)は読み出し結果を
受信するだけである(処理 712)。
【0122】ファイルプロセッサモジュール(19)は
書き込み処理を受信すると(処理714)、ディスク
(2−2)への書き込み処理を実行する(処理 71
6)。そして、ファイルプロセッサモジュール(19)
は、書き込み完了をトランザクションプロセッサモジュ
ール(15、16)に送信する(処理 717)。この
プロセス間通信の電文を図34(5)に示す。送信元ア
ドレス(90)はプロセッサモジュール(19)である
ため(22)16を、送信先アドレス(91)はプロセッ
サモジュール(15、16)であるため(1112)16
を、電文本体(92)は(070203)16を、下位の
プロセッサモジュールのアドレス(93)はないため
(FF)16を、電文の識別子(94)は(0001)16を
それぞれ設定する。一方、ファイルプロセッサモジュー
ル(17)は書き込み要求を受信するだけである(処理
715)。
【0123】トランザクションプロセッサモジュール
(15)は処理結果を受信する(処理719)と、通信
プロセッサモジュール(12、13)に処理結果を送信
する(処理 721)。このプロセス間通信の電文を図
34(6)に示す。送信元アドレス(90)はプロセッ
サモジュール(15)であるため(11)16を、送信先
アドレス(91)はプロセッサモジュール(11、1
2)であるため(0102)16を、電文本体(92)は
(010503)16を、下位のプロセッサモジュールの
アドレス(93)はないため、(FF)16を、電文の識別
子(94)は(0001)16をそれぞれ設定する。トラ
ンザクションプロセッサモジュール(16)は処理結果
を受信するだけである(処理 720)。
【0124】最後に、通信プロセッサモジュール(1
2)は、処理結果を受信すると(処理722)、端末
(6)に送信する(処理 724)。通信プロセッサモ
ジュール(12)は処理結果を受信するだけである(処
理 723)。
【0125】次に、各プロセッサモジュール(15、1
9)で障害が発生した場合について、図35から図37
を用いて説明する。図35は、トランザクションプロセ
ッサモジュールで障害が発生した場合の処理を示す図で
ある。図37はプロセス間通信の電文を示す図である。
【0126】まず、トランザクションプロセッサモジュ
ール(15)で障害が発生した場合について、図35と
図37を用いて説明する。図35はトランザクションプ
ロセッサモジュールで障害が発生した場合の処理を示す
図である。
【0127】トランザクションプロセッサモジュール
(15、16)は、通信プロセッサモジュール(12)
から同時に電文を受信している(処理 703〜70
5)。トランザクションプロセッサモジュール(15)
で障害が発生すると(処理 730)、トランザクショ
ンプロセッサモジュール(16)は、aliveメッセージ
の途絶により、トランザクションプロセッサモジュール
(15)の障害を検出する(処理 731)。
【0128】更に、トランザクションプロセッサモジュ
ール(16)は、障害の発生したトランザクションプロ
セッサモジュール(15)にリセットを要求する(処理
732)。そして、トランザクションプロセッサモジ
ュール(15)は、モニタ(15−20)がIO制御装置
(15−10)をリセットする処理を実行する(処理7
33)。
【0129】ここで、リセット要求を通知する電文を図
37(1)に示す。トランザクションプロセッサモジュ
ール(16)がトランザクションプロセッサモジュール
(15)にリセットメッセージを送信する場合を示す。
送信元アドレス(80)はファイルプロセッサモジュー
ル(16)であるため(12)16を、送信先アドレス
(81)はファイルプロセッサモジュール(15)であ
るため(11)16を、制御用電文種別(82)はリセッ
トメッセージであるため(10)16を、システム稼働情
報1(83)とシステム稼働情報2(84)は使用しな
いため(FF)16を、それぞれ設定する。
【0130】更に、トランザクションプロセッサモジュ
ール(16)は、障害発生を通信プロセッサモジュール
(12)に通知する(処理 734)。そして、通信プ
ロセッサモジュール(12)は障害発生の通知を受信す
る(処理 735)。障害発生を通知する電文を図37
(2)に示す。トランザクションプロセッサモジュール
(16)が通信プロセッサモジュール(12)に障害発
生を送信する場合を示す。送信元アドレス(80)はト
ランザクションプロセッサモジュール(16)であるた
め(12)16を、送信先アドレス(81)は通信プロセ
ッサモジュール(12)であるため(01)16を、制御
用電文種別(82)はシステム稼働情報であるため(0
2)16を、システム稼働情報1(83)はイベント情報
であるため(10)16、システム稼働情報2(84)は
障害発生通知であるため(03)16をそれぞれ設定す
る。
【0131】そして、トランザクションプロセッサモジ
ュール(16)は、再度読み出し要求をファイルプロセ
ッサモジュール(19、17)に送信する(処理 73
6)。読み出し要求を通知する電文を図37(3)に示
す。送信元アドレス(90)はトランザクションプロセ
ッサモジュール(16)であるため(12)16を、送信
先アドレス(91)はトランザクションプロセッサモジ
ュール(19、17)であるため(2220)16を、電
文本体(92)は(010203)16を、下位のプロセ
ッサモジュールのアドレス(93)はないため、(FF)
16、電文の識別子(94)は(0001)16をそれぞれ
設定する。
【0132】次に、ファイルプロセッサモジュール(1
5)で障害が発生した場合について、図36と図37を
用いて説明する。図36はファイルプロセッサモジュー
ルで障害が発生した場合の処理を示す図である。
【0133】ファイルプロセッサモジュール(19、1
7)は、トランザクションプロセッサモジュール(1
5)から同時に電文を受信している(処理 706〜7
08)。ファイルプロセッサモジュール(19)で障害
が発生すると(処理 760)、ファイルプロセッサモ
ジュール(17)はaliveメッセージの途絶により、フ
ァイルプロセッサモジュール(19)の障害を検出する
(処理 761)。
【0134】更に、ファイルプロセッサモジュール(1
7)は、障害の発生したファイルプロセッサモジュール
(19)にリセットを要求する(処理 762)。そし
て、ファイルプロセッサモジュール(19)はモニタ
(19−20)がIO制御装置(19−10)をリセット
する処理を実行する(処理 763)。
【0135】ここで、リセット要求を通知する電文を図
37(4)に示す。ファイルプロセッサモジュール(1
7)がファイルプロセッサモジュール(19)にリセッ
トメッセージを送信する場合を示す。送信元アドレス
(80)はファイルプロセッサモジュール(17)であ
るため(20)16を、送信先アドレス(81)はファイ
ルプロセッサモジュール(19)であるため(21)16
を、制御用電文種別(82)はリセットメッセージであ
るため(10)16を、システム稼働情報1(83)とシ
ステム稼働情報2(84)は使用しないため(FF)16
を、それぞれ設定する。
【0136】更に、ファイルプロセッサモジュール(1
7)は障害発生を通信プロセッサモジュール(12)に
通知する(処理 764)。そして、通信プロセッサモ
ジュール(12)はこれを受信する(処理 765)。
障害発生を通知する電文を図37(5)に示す。ファイ
ルプロセッサモジュール(17)が通信プロセッサモジ
ュール(12)に障害発生を送信する場合を示す。送信
元アドレス(80)はファイルプロセッサモジュール
(17)であるため(20)16を、送信先アドレス(8
1)は通信プロセッサモジュール(12)であるため
(01)16を、制御用電文種別(82)はシステム稼働
情報であるため(02)16を、システム稼働情報1(8
3)はイベント情報であるため(10)16、システム稼
働情報2(84)は障害発生通知であるため(03)16
をそれぞれ設定する。
【0137】そして、ファイルプロセッサモジュール
(17)は、再度読み出し処理を実行する(処理 76
6)。そして、ファイルプロセッサモジュール(17)
は、読み出し結果をトランザクションプロセッサモジュ
ール(15、16)に送信する(処理 767)。読み
出し結果の送信を通知する電文を図37(6)に示す。
送信元アドレス(90)はファイルプロセッサモジュー
ル(17)であるため(12)16を、送信先アドレス
(91)はトランザクションプロセッサモジュール(1
5、16)であるため(1112)16を、電文本体(9
2)は(010203)16を、下位のプロセッサモジュ
ールのアドレス(93)はないため、(FF)16、電文の
識別子(94)は(0001)16をそれぞれ設定する。
【0138】通信プロセッサモジュール(12)で障害
が発生すると、端末(6)は両方の通信プロセッサモジ
ュール(12、13)に電文を送信することにより、端
末(6)への電文の再送要求をなくし、回復時間を短縮
できる。本実施例では、電文処理を3つに分割し、3階
層の場合について説明した。同様にして、電文処理をn
個に分割したn階層のクラスタ型計算機システムにも本
方式を適用できる。
【0139】通信プロセッサモジュール(11〜13)
(最上位のプロセッサモジュール)が、受信側プロセッ
サモジュールの入力待ち行列に格納されている電文情報
から、受信した電文の処理時間を計算し、これが最小と
なるプロセッサモジュールを見つけ、これらのプロセッ
サモジュールで電文処理を実行することにより、各プロ
セスのプロセッサモジュールの負荷を均一にし、システ
ム全体の処理能力を向上させることが可能となる。
【0140】更に、処理時間が2番目に短いプロセッサ
モジュールを予備のプロセッサモジュールとし、予備の
プロセッサモジュールにも電文を送信することにより、
回復時間を短縮させることが可能となる。
【0141】図38は本発明によるシステム構成図
(2)である。ここでは、本発明によるシステム構成
は、図1のシステム構成と同様に9個のプロセッサモジ
ュール(11〜19)を前提とする。すべてのプロセッ
サモジュール(11〜19)は、制御用通信パス(1)
およびプロセス間通信パス(3)により接続される。図
38では、プロセッサモジュールに2つの異なるプロセ
スを搭載させ、相互にバックアップさせるものである。
【0142】プロセッサモジュール(11〜13)は、
図5で説明した通信プロセス(30)を搭載する。プロ
セッサモジュール(11〜13)は、共有ディスク(2
−0)を共有し、障害発生時に、処理を引き継ぐために
必須なチェックポイント情報を格納する。
【0143】プロセッサモジュール(14〜16)のそ
れぞれは、トランザクションプロセス(31)とファイ
ルプロセス(32)を搭載する。トランザクションプロ
セス(31)は現用プロセスとして稼働し、また、ファ
イルプロセス(32−1)は待機プロセスとして稼働さ
れる。
【0144】プロセッサモジュール(17〜19)のそ
れぞれは、トランザクションプロセス(31)とファイ
ルプロセス(32)を搭載する。ファイルプロセス(3
2)は現用プロセスとして稼働し、また、トランザクシ
ョンプロセス(31−1)は待機プロセスとして稼働さ
れる。
【0145】プロセッサモジュール(14〜19)の障
害を検出した際に、プロセス(31,32)の個数に応
じて、システムの処理能力が最高になるように、プロセ
ス毎のプロセッサモジュールを決め、プロセス間での処
理を継続することにより、システム全体の処理能力を向
上させる。
【0146】トランザクションプロセッサモジュール
(15)で障害が発生した場合を想定する。ここで、ト
ランザクションプロセッサモジュール(14〜16)と
ファイルプロセッサモジュール(17〜19)はそれぞ
れ2台と3台で稼働すべきか、あるいは3台と2台で稼
働すべきかを判定する。そして、システム処理能力の大
きな方を選ぶ。
【0147】そして、前者の場合には、障害の発生した
トランザクションプロセッサモジュールを閉塞する。後
者の場合には、1つのファイルプロセッサモジュール
(19)がトランザクションプロセス(31)を引き継
ぐ。このように、各プロセッサモジュール(11〜1
9)に複数のプロセス(30〜32)を搭載させる構成
も可能となる。
【0148】これにより、1つのトランザクションプロ
セス(31)で障害が発生しても、プロセス単位のホッ
トスタンバイ機能により、3つのトランザクションプロ
セス(31)と2つのファイルプロセス(32)といっ
たシステムを柔軟に再構築することが可能となり、障害
が発生しても、システム処理能力の低下を最小限にする
ことが可能となる。
【0149】
【発明の効果】本発明では、複数のプロセッサモジュー
ルからなるシステムにおいて、受信側プロセッサモジュ
ールが通信プロセッサモジュールにシステム稼働情報を
送信し、通信プロセッサモジュールが処理時間の最小と
なる受信側プロセッサモジュールに電文を送信すること
により、また、予備のプロセッサモジュールにも電文を
送信することにより、プロセッサモジュールの負荷を均
一にし、システム全体の処理能力が向上でき、更に、プ
ロセッサモジュール障害時の回復時間を短縮できる。
【図面の簡単な説明】
【図1】本発明によるシステム構成図である。
【図2】本発明の処理概要を示す図である。
【図3】プロセッサモジュールの構成図である。
【図4】電文処理の概要を示す図である。
【図5】ソフトウェアの構成と電文処理の分割を示す図
である。
【図6】IO制御装置のシステム構成図である。
【図7】プロセッサモジュールの状態遷移図である。
【図8】プロセッサモジュールの状態コードを示す図で
ある。
【図9】制御用通信パスにおける電文フォーマットを示
す図である。
【図10】制御用電文種別を示す図である。
【図11】システム稼働情報1とシステム稼働情報2を
示す図である。
【図12】電文のタイプとその個数を示す図である。
【図13】電文のタイプとそのコードを示す図である。
【図14】プロセッサモジュールとコンソールのアドレ
スを示す図である。
【図15】プロセス間通信の電文フォーマットを示す図
である。
【図16】トランザクションプロセッサモジュールの入
力待ち行列に格納されている電文を示す図である。
【図17】ファイルプロセッサモジュールの入力待ち行
列に格納されている電文を示す図である。
【図18】トランザクションプロセッサモジュールの電
文毎の処理ステップ数とファイルプロセッサモジュール
との通信回数を示す図である。
【図19】ファイルプロセッサモジュールの電文毎の処
理ステップ数とIO発行回数を示す図である。
【図20】トランザクションプロセッサモジュールの処
理能力と状態を示す図である。
【図21】ファイルプロセッサモジュールの処理能力と
状態を示す図である。
【図22】システム稼働情報による処理手順を示す図で
ある。
【図23】通信プロセッサモジュールの処理時間の算出
式である。
【図24】制御用電文の一例を示す図である。
【図25】障害時の処理手順を示す図である。
【図26】障害回復時の処理手順を示す図である。
【図27】障害時の制御用電文を示す図である。
【図28】電文処理手順を示す図である。
【図29】プロセス間通信用電文を示す図である。
【図30】トランザクションプロセッサモジュールで障
害が発生した場合の処理を示す図である。
【図31】ファイルプロセッサモジュールで障害が発生
した場合の処理を示す図である。
【図32】プロセス間通信の電文を示す図である。
【図33】予備のプロセッサモジュールを考慮した場合
の処理を示す図である。
【図34】予備のプロセッサモジュールを考慮した場合
のプロセス間通信の電文を示す図である。
【図35】トランザクションプロセッサモジュールで障
害が発生した場合の処理を示す図である。
【図36】ファイルプロセッサモジュールで障害が発生
した場合の処理を示す図である。
【図37】プロセス間通信の電文を示す図である。
【図38】本発明によるシステム構成図(2)である。
【符号の説明】
1…制御用通信パス、2−0〜2−2…共有ディスク、
3…プロセス間通信パス、4…業務用LAN 、5…回線切
替装置、6…端末、7…タイマ、11〜19…プロセッ
サモジュール、30…通信プロセス、31…トランザク
ションプロセス、32…ファイルプロセス

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】それぞれがプロセッサ、メモリ、及びIOを
    制御するIOPからなる複数のプロセッサモジュールをプ
    ロセス間通信パスおよび制御用通信パスにより接続した
    システムにおいて、 電文処理は、通信プロセス、トランザクションプロセス
    およびファイルプロセスに分割してそれぞれを各プロセ
    ッサモジュールに搭載することによって通信プロセッサ
    モジュ−ル、トランザクションプロセッサモジュ−ル、
    及びファイルプロセッサモジュ−ルを構成し、前記トラ
    ンザクションプロセッサモジュールおよび前記ファイル
    プロセッサモジュールは前記制御用通信パスを介して前
    記通信プロセッサモジュールにシステム稼働情報を送信
    し、通信プロセッサモジュールがシステム稼働情報を管
    理することを特徴とするクラスタ型計算機装置の負荷分
    散方法。
  2. 【請求項2】上記システムにおいて、前記トランザクシ
    ョンプロセッサモジュールと前記ファイルプロセッサモ
    ジュールは、システム立ち上げ時、あるいはプロセッサ
    モジュール追加時に、自身のCPU処理能力、IO待ち時間
    およびプロセス間通信の実行ステップ数を前記通信プロ
    セッサモジュールに送信することを特徴とする請求項1
    記載のクラスタ型計算機装置の負荷分散方法。
  3. 【請求項3】上記システムにおいて、前記プロセッサモ
    ジュールは多数の電文をいくつかのタイプに分け、電文
    のタイプ毎にシステム稼働情報として使用することを特
    徴とする請求項1記載のクラスタ型計算機装置の負荷分
    散方法。
  4. 【請求項4】上記システムにおいて、前記トランザクシ
    ョンプロセッサモジュールと前記ファイルプロセッサモ
    ジュールは、一定間隔毎に、システム稼働情報として、
    待ち行列に格納されている電文のタイプとその個数を、
    前記通信プロセッサモジュールに送信することを特徴と
    する請求項1記載のクラスタ型計算機装置の負荷分散方
    法。
  5. 【請求項5】上記システムにおいて、前記通信プロセッ
    サモジュールは、受信した待ち行列に格納されている電
    文のタイプとその個数、CPU処理能力、IO待ち時間、プ
    ロセス間通信の実行ステップ数から、トランザクション
    プロセッサモジュールとファイルプロセッサモジュール
    からなる受信側プロセッサモジュールのすべてについて
    処理時間を算出し、処理時間が最小となるトランザクシ
    ョンプロセッサモジュールとファイルプロセッサモジュ
    ールを選び、前記通信プロセッサモジュールは、トラン
    ザクションプロセッサモジュールに電文と送信すべき前
    記ファイルプロセッサモジュールのアドレスを送信する
    ことを特徴とする請求項1記載のクラスタ型計算機装置
    の負荷分散方法。
  6. 【請求項6】上記システムにおいて、前記トランザクシ
    ョンプロセッサモジュールは、前記通信プロセッサモジ
    ュールからの電文と前記ファイルプロセッサモジュール
    のアドレスを受信し、前記アドレスを参照して、前記フ
    ァイルプロセッサモジュールに電文を送信することを特
    徴とする請求項1記載のクラスタ型計算機装置の負荷分
    散方法。
  7. 【請求項7】上記システムにおいて、前記通信プロセッ
    サモジュールはすべての前記トランザクションプロセッ
    サモジュールと前記ファイルプロセッサモジュールの処
    理時間を算出し、前記処理時間の値が一定値以上なら
    ば、輻輳状態と判定し、前記通信プロセッサモジュール
    は輻輳状態のプロセッサモジュールへの電文送信を禁止
    することを特徴とする請求項1記載のクラスタ型計算機
    装置の負荷分散方法。
  8. 【請求項8】上記システムにおいて、前記通信プロセッ
    サモジュールが算出した処理時間が一定値以上のトラン
    ザクションプロセッサモジュールあるいはファイルプロ
    セッサモジュールが輻輳状態に遷移した場合に、前記ト
    ランザクションプロセッサモジュールあるいは前記ファ
    イルプロセッサモジュールは、前記通信プロセッサモジ
    ュールに対して電文の送信禁止を通知することを特徴と
    する請求項1記載のクラスタ型計算機装置の負荷分散方
    法。
  9. 【請求項9】上記システムにおいて、前記通信プロセッ
    サモジュールはすべての前記トランザクションプロセッ
    サモジュールと前記ファイルプロセッサモジュールの処
    理時間を算出し、前記処理時間の値が一定値以下なら
    ば、輻輳状態から解除したと判定し、前記通信プロセッ
    サモジュールは輻輳状態から解除した前記トランザクシ
    ョンプロセッサモジュールあるいは前記ファイルプロセ
    ッサモジュールへの電文送信を再開することを特徴とす
    る請求項1記載のクラスタ型計算機装置の負荷分散方
    法。
  10. 【請求項10】上記システムにおいて、前記通信プロセ
    ッサモジュールは、輻輳状態の前記トランザクションプ
    ロセッサモジュールあるいは前記ファイルプロセッサモ
    ジュールの処理時間が一定値以下になった場合に、前記
    トランザクションプロセッサモジュールあるいは前記フ
    ァイルプロセッサモジュールは、前記通信プロセッサモ
    ジュールに対して電文の送信禁止を解除することを特徴
    とする請求項1記載のクラスタ型計算機装置の負荷分散
    方法。
  11. 【請求項11】上記システムにおいて、前記プロセッサ
    モジュールが輻輳状態に遷移、あるいは輻輳状態から解
    除されたことを、前記制御用通信パスに接続されたコン
    ソールに表示することを特徴とする請求項1記載のクラ
    スタ型計算機装置の負荷分散方法。
  12. 【請求項12】上記システムにおいて、前記トランザク
    ションプロセッサモジュールあるいは前記ファイルプロ
    セッサモジュールで障害あるいは輻輳が発生した場合
    に、前記通信プロセッサモジュールは再度処理時間を計
    算し、電文を再送することを特徴とする請求項1記載の
    クラスタ型計算機装置の負荷分散方法。
  13. 【請求項13】上記システムにおいて、前記トランザク
    ションプロセッサモジュールあるいは前記ファイルプロ
    セッサモジュールで障害あるいは輻輳状態から回復する
    と、前記通信プロセッサモジュールは再度処理時間を計
    算し、電文を送信することを特徴とする請求項1記載の
    クラスタ型計算機装置の負荷分散方法。
  14. 【請求項14】上記システムにおいて、前記通信プロセ
    ッサモジュールは、処理時間が最小であって、電文を送
    信すべきトランザクションプロセッサモジュールとファ
    イルプロセッサモジュールの次に処理時間の小さいトラ
    ンザクションプロセッサモジュールとファイルプロセッ
    サモジュールを予備のプロセッサモジュールとして稼働
    させて電文を送信し、障害が発生すると、前記予備のプ
    ロセッサモジュールが処理を引き継ぐことを特徴とする
    請求項1記載のクラスタ型計算機装置の負荷分散方法。
  15. 【請求項15】上記システムにおいて、前記トランザク
    ションプロセッサモジュールあるいはファイルプロセッ
    サモジュールで障害が発生した場合に、前記予備のトラ
    ンザクションプロセッサモジュールあるいはファイルプ
    ロセッサモジュールは、自身が受信している電文を参照
    することにより、前記通信プロセッサモジュールからの
    電文の再送を要求しないで引き継ぎ処理を実行すること
    を特徴とする請求項14記載のクラスタ型計算機装置の
    負荷分散方法。
  16. 【請求項16】上記システムにおいて、障害から回復す
    ると、前記トランザクションプロセッサモジュールある
    いは前記ファイルプロセッサモジュールは前記通信プロ
    セッサモジュールに障害回復を通知し、処理時間を算出
    することを特徴とする請求項14記載のクラスタ型計算
    機装置の負荷分散方法。
  17. 【請求項17】上記システムにおいて、前記プロセッサ
    モジュールのそれぞれは複数のプロセスを搭載し、1つ
    のプロセスを現用プロセスとして稼働させ、他のプロセ
    スを予備プロセスとして待機させ、あるプロセッサモジ
    ュールで障害が発生した場合に、障害プロセッサモジュ
    ールを閉塞し、さらに更にシステム処理能力が最高にな
    るように、前記障害プロセスを他の機能のプロセッサモ
    ジュールが引き継ぐことを特徴とする請求項1記載のク
    ラスタ型計算機装置の負荷分散方法。
  18. 【請求項18】上記システムにおいて、電文をn個のプ
    ロセスに分割したn階層のクラスタ型計算機を構成し、
    最上位プロセッサモジュールが下位のプロセッサモジュ
    ールの処理時間を算出し、これが最小となるプロセッサ
    モジュールで電文処理を実行させることを特徴とする請
    求項1記載のクラスタ型計算機装置の負荷分散方法。
  19. 【請求項19】上記システムにおいて、前記最上位プロ
    セッサモジュールが下位のプロセッサモジュールの処理
    時間を算出し、前記処理時間が2番目に小さいプロセッ
    サモジュールを予備のプロセッサモジュールとして稼働
    させ、前記予備のプロセッサモジュールにも電文を送信
    し、障害時および輻輳時に前記予備のプロセッサモジュ
    ールが処理を引き継ぐことを特徴とする請求項16記載
    のクラスタ型計算機装置の負荷分散方法。
  20. 【請求項20】上記システムにおいて、前記最上位プロ
    セッサモジュールが前記通信プロセッサモジュールの機
    能を実行することを特徴とする請求項17記載のクラス
    タ型計算機装置の負荷分散方法。
JP31633995A 1995-12-05 1995-12-05 クラスタ型計算機装置の負荷分散方法 Pending JPH09160885A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31633995A JPH09160885A (ja) 1995-12-05 1995-12-05 クラスタ型計算機装置の負荷分散方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31633995A JPH09160885A (ja) 1995-12-05 1995-12-05 クラスタ型計算機装置の負荷分散方法

Publications (1)

Publication Number Publication Date
JPH09160885A true JPH09160885A (ja) 1997-06-20

Family

ID=18076025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31633995A Pending JPH09160885A (ja) 1995-12-05 1995-12-05 クラスタ型計算機装置の負荷分散方法

Country Status (1)

Country Link
JP (1) JPH09160885A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259539A (ja) * 1999-03-12 2000-09-22 Hitachi Information Technology Co Ltd トランザクション分配方法及び装置
US7519968B2 (en) 1999-03-10 2009-04-14 Hitachi, Ltd. Decentralized control system for network connection
JP2009251732A (ja) * 2008-04-02 2009-10-29 Mitsubishi Electric Corp プロセッサ間通信制御装置
JP4864210B2 (ja) * 1999-05-20 2012-02-01 イヴァン, チョン−ション ホワン, 作業グループサーバー実施の方法と装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519968B2 (en) 1999-03-10 2009-04-14 Hitachi, Ltd. Decentralized control system for network connection
JP2000259539A (ja) * 1999-03-12 2000-09-22 Hitachi Information Technology Co Ltd トランザクション分配方法及び装置
JP4864210B2 (ja) * 1999-05-20 2012-02-01 イヴァン, チョン−ション ホワン, 作業グループサーバー実施の方法と装置
JP2009251732A (ja) * 2008-04-02 2009-10-29 Mitsubishi Electric Corp プロセッサ間通信制御装置

Similar Documents

Publication Publication Date Title
US6970972B2 (en) High-availability disk control device and failure processing method thereof and high-availability disk subsystem
US9134913B2 (en) Methods and structure for improved processing of I/O requests in fast path circuits of a storage controller in a clustered storage system
US20190303255A1 (en) Cluster availability management
US7676616B2 (en) Method, apparatus and program storage device for providing asynchronous status messaging in a data storage system
US7584377B2 (en) System, machine, and method for maintenance of mirrored datasets through surrogate writes during storage-area networks transients
US5784617A (en) Resource-capability-based method and system for handling service processor requests
US7853767B2 (en) Dual writing device and its control method
CN101207408A (zh) 一种用于主备倒换的综合故障检测装置和方法
JPH086910A (ja) クラスタ型計算機システム
US7774638B1 (en) Uncorrectable data error containment systems and methods
JPH09171441A (ja) 二重化記憶装置の記憶一致方法および装置
WO2021012169A1 (zh) 一种提高存储系统可靠性的方法和相关装置
WO1997049034A1 (fr) Systeme de prise en charge de taches
US5377322A (en) Information handling method and system utilizing multiple interconnected processors and controllers
JPH09160885A (ja) クラスタ型計算機装置の負荷分散方法
JP6134720B2 (ja) 接続方法
US20050165974A1 (en) Computer apparatus and computer system
JP2009015425A (ja) ログ収集システム、ログ収集方法、および、ノード
JP2007334668A (ja) メモリダンプ方法、クラスタシステム、それを構成するノードおよびプログラム
JPH06325008A (ja) リセット機能を備えるコンピュータシステム
JP2004013723A (ja) 共有メモリを使ったクラスタ構成を採用した情報処理システムの障害処理装置と方法
JP2002373084A (ja) 二重化システムの状態交換・障害検出兼用方法
US11853175B2 (en) Cluster system and restoration method that performs failover control
US20040202105A1 (en) Minimizing data loss chances during controller switching
JPH04281535A (ja) 情報処理装置、待機冗長型システムおよび待機冗長型システムの主系と待機系との間でチェックポイントをとる方法