JP3139884B2 - 多重要素処理システム - Google Patents
多重要素処理システムInfo
- Publication number
- JP3139884B2 JP3139884B2 JP05141876A JP14187693A JP3139884B2 JP 3139884 B2 JP3139884 B2 JP 3139884B2 JP 05141876 A JP05141876 A JP 05141876A JP 14187693 A JP14187693 A JP 14187693A JP 3139884 B2 JP3139884 B2 JP 3139884B2
- Authority
- JP
- Japan
- Prior art keywords
- elements
- standby
- operating
- computer
- active
- 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.)
- Expired - Lifetime
Links
Landscapes
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
Description
うなシステム要素を信頼性向上等の目的のために多重化
した多重要素処理システムに関する。
要求の多様化および技術の高度化に伴って、システムが
大規模化かつ複雑化する傾向にあり、このため、システ
ムの信頼性の向上を図ることが重要になっている。
として、従来より同一の処理を複数のシステム要素で並
行に実行する並列多重処理方式と、処理は単一のシステ
ム要素で実行し、実行中のシステム要素(稼働系要素)
が故障した段階で待機系要素が処理を継続する待機冗長
処理方式とがある。
待機系要素の立ち上げ等の操作がいらず、システムを停
止することなく処理を継続できる。しかしながら、正常
時においても同一の処理を複数の多重化された要素で並
行に処理するため、各計算機の処理負荷は大きい。
系要素と待機系要素の内部状態を同一に保つための操作
をしなければならないが、正常時においては待機系要素
は実際の処理を行わないので各計算機の処理負荷は小さ
く、計算機資源を有効に利用することができる。
式を混在させた方式、すなわち多重化された要素内の複
数個を稼働系として並行に動作させ、さらに1つ以上の
待機系要素も用意しておく方式も提案されている。この
方式は、並列多重処理方式と待機冗長処理方式のそれぞ
れの特徴を合せ持つ方式であり、要求される信頼度や応
答性に応じて、稼働系要素数と待機系要素数を任意の数
に設定できる特徴がある。
た並列多重処理方式と待機冗長処理方式を混在させた従
来の多重要素処理システムでは、多重化の単位がハード
ウェア単位(例えば、計算機、ディスク等)であるた
め、一部の要素が故障した場合、その故障要素が復旧す
るまで初期に設定した多重度を維持することができない
という問題があった。
系要素の故障時に待機系要素が稼働系要素になる多重要
素処理システムでは、故障した稼働系要素の数以上の待
機系要素が存在しない場合、全ての待機系要素が稼働系
要素になったとしても初期に設定された稼働系要素の多
重度を維持することができず、待機系要素も存在しなく
なってしまうという問題、さらに、待機系要素が稼働系
要素になることによって稼働系要素数を維持したとして
も、待機系要素が稼働系要素に切り替わった後の待機系
要素の補充が行われないため、待機系要素が存在しなく
なった時は、さらなる稼働系要素の故障に対応すること
ができないといった問題があった。
なされたもので、各システム要素の信頼性、応答性に応
じて多重化された多重要素処理システムにおいて、稼働
系要素数と待機系要素数をそれぞれ設定された数に維持
することができ、要求される信頼度および応答性を維持
することのできる多重要素処理システムを提供しようと
するものである。
素処理システムは、システムを構成するシステム要素の
うちの少なくとも一部が、稼働系要素群と待機系要素群
とに多重化され、通常時は前記稼働系要素群が作業を実
行し、前記稼働系要素の故障時に、対応する待機系要素
が稼働系として処理を継続する多重要素処理システムに
おいて、前記システム要素は、前記稼働系要素の故障を
検出する故障検出手段と、前記故障検出手段によって前
記稼働系要素の故障が検出された時に、前記待機系要素
を前記稼働系要素に切り替えて、前記稼働系要素の数を
予め設定された必要稼働要素数に維持する稼働系要素数
調整手段と、故障した前記稼働系要素の数が前記待機系
要素の数以上の時、前記稼働系要素を前記必要稼働要素
数に維持するよう新たに前記稼働系要素を生成する稼働
要素生成手段と、前記稼働系要素の数を前記必要稼働要
素数に維持できた時、前記待機系要素の数を予め設定さ
れた必要待機要素数に維持するよう新たに前記待機系要
素を生成する待機要素生成手段とを具備したことを特徴
とする。 また、請求項2記載の多重要素処理システム
は、システムを構成するシステム要素のうちの少なくと
も一部が、稼働系要素群と待機系要素群とに多重化さ
れ、通常時は前記稼働系要素群が作業を実行し、前記稼
働系要素の故障時に、対応する待機系要素が稼働系とし
て処理を継続する多重要素処理システムにおいて、前記
システム要素は、前記稼働系要素の故障を検出する故障
検出手段と、前記故障検出手段によって前記稼働系要素
の故障が検出された時に、作業を実行している前記稼働
系要素がない場合は、前記待機系要素内の少なくとも1
要素を前記稼働系要素に切り替える稼働系要素数調整手
段と、前記稼働系要素数調整手段によって、作業を実行
している前記稼働系要素が1つ以上確認できた時、前記
待機系要素の数を予め設定された必要待機要素数に維持
するよう新たに前記待機系要素を生成する待機要素生成
手段と、前記待機系要素の数を前記必要待機要素数に維
持できた時、前記稼働系要素の数を予め設定された必要
稼働要素数に維持するよう新たに前記稼働系要素を生成
する稼働要素生成手段とを具備したことを特徴とする。
は、各システム要素の信頼性、応答性に応じて多重化さ
れた多重要素処理システムにおいて、稼働要素生成手段
および待機要素生成手段によって、稼働系要素および待
機系要素を新たに生成することにより、稼働系要素と待
機系要素の数をそれぞれ予め設定された必要数に維持す
ることが可能となる。
答性を維持することができる。
を、一実施例について図面を参照して説明する。
システムの概略構成を示すもので、本実施例ではプログ
ラムモジュールがシステム要素となっており、このよう
なシステム要素が登録され実行されるシステム要素実行
手段2a、2b…と、これらのシステム要素実行手段2
a、2b…にそれぞれ接続されたメッセージ交換手段3
a、3b…とからなる計算機1a、1b…を、通信路4
によって一列に接続した構成となっている。
構成を示すもので、同図に示すように、計算機1a、1
b…は、CPU5、クロック6、ROM7、RAM8、
SCU9、ラインレシーバ10、ラインドライバ11、
システムバス12等から構成されている。図1に示され
たシステム要素実行手段2a、2b…およびメッセージ
交換手段3a、3b…はこのように構成された計算機1
a、1b…上に実現される。そして、システム要素実行
手段2a、2b…により、システム要素の機能が実行さ
れ、メッセージ交換手段3a、3b…によりシステム要
素間の通信が制御される。
等の理由により、図3に示すように個々のシステム要素
は多重化され、各計算機1a、1b…に分散されて配置
されている。なお、同図において、通常の円で示されて
いるシステム要素が稼働系要素であり、2重の円で示さ
れているシステム要素が待機系要素である。
化され、計算機1a、1bおよび1eに登録されている
が、計算機1aに登録されているシステム要素A1と計
算機1eに登録されたシステム要素A3が、通常時動作
する稼働系要素であり、計算機1bに登録されているシ
ステム要素A2は、通常時は実際の処理をせず、計算機
1aないし1eが故障した時に稼働系要素になるために
待機している待機系要素である。
機1b、1c、1d、1eに登録されており、計算機1
bのシステム要素B1と計算機1cのシステム要素B2
が稼働系、計算機1dのシステム要素B3と計算機1e
のシステム要素B4が待機系である。同様にシステム要
素Cは2重化され、計算機1cと1dに登録されてお
り、計算機1cのシステム要素C1が稼働系、計算機1
dのシステム要素C2が待機系である。また、システム
要素D、Eは多重化されず、稼働系としてそれぞれ計算
機1a、1fに登録されている。
は、各システム要素は互いにメッセージを交換しあいな
がら処理を行う。図3に示す例では、システム要素Dが
システム要素B宛にメッセージを送っている様子を示し
ている。このような多重化要素に対して送信されたメッ
セージは、図4にも示すように、その宛先システム要素
の動作モード(稼働系か待機系か)に関係なく等しく受
信される。メッセージを受信した稼働系要素は、受信メ
ッセージの内容に従った処理を並行して行い、その結果
をさらに次のシステム要素に対してそれぞれ通知する。
一方、待機系要素は、受信メッセージを保存しておくだ
けで実際の処理を行わない。
セージのフォーマットを示す。あて先システム要素名エ
リアには、送信先システムの要素名が入り、あて先手続
き名エリアには、あて先システム要素内の手続き名がセ
ットされる。さらにメッセージ本体エリアにはシステム
要素間で交換される情報がセットされる。
は、図3のシステム要素の配置時に例えば計算機1cが
故障した場合、図6に示すように、稼働系要素B2の代
わりに待機系要素B3が稼働状態となり、また稼働系要
素C1の代わりに待機系要素C2が稼働状態となること
によって、稼働要素数を維持する。この場合、それぞれ
の待機系要素数が1つずつ減ってしまっており、引き続
き稼働系要素が故障を続けるとその処理を引き継ぐ要素
が存在しなくなってしまう。また、図7に示すように計
算機1aと1eが同時に故障した場合は、稼働系要素A
1とA3が同時に故障してしまい、待機系要素A2が稼
働状態になったとしてもシステム要素Aの稼働系要素数
2を維持することができない。
ようにして、稼働系要素数と待機系要素数を必要数に維
持することができる。
8に示すように、個々のシステム要素固有の処理を行う
本処理手段20、稼働系要素の故障を検出する故障検出
手段21、稼働系要素の多重度数を設定数に調整する稼
働系要素数調整手段22、待機要素を稼働系に切り換え
ても稼働要素数が不足する場合に稼働系を生成する稼働
要素生成手段23と、待機系を稼働系に切り換えたこと
によって不足した待機系要素を生成する待機要素生成手
段24とから構成されている。
理手段20の具体的な構成例を図9に示す。
ステム要素固有の処理を実際に行う本処理実行部30
と、システム要素の実行手順や状態が保存されている処
理及び状態記憶部31と、当該システム要素が登録され
た計算機の負荷を監視し負荷値を求める負荷監視部32
とから構成されている。
自身の動作モード(稼働系か待機系か)を記憶している
動作モード記憶部40と、この動作モード記憶部40に
記憶された動作モードを変更する動作モード切り換え部
41と、システム内に自要素と等しい稼働している要素
がいくつ存在するかを問い合わせるための稼働要素数問
い合わせ部42と、この稼働要素数問い合わせ部42の
要求に応えて自要素の状態を返信する応答部43と、こ
の応答部43からの応答を受信し稼働要素数を求める稼
働要素数カウント部44と、必要稼働要素数と必要待機
要素数を記憶しておく要素数記憶部45と、稼働要素数
カウント部44で求めた稼働要素数と要素数記憶部45
で記憶された設定数を比較し、稼働要素数カウント部4
4で求めた稼働要素数の方が多い場合起動され、自要素
が稼働要素であるべきか否かを決定する稼働要素決定部
46とから構成されている。
要素A1、A2、A3のそれぞれの要素数記憶部45に
は、必要稼働要素数として2、必要待機要素数として1
が記憶されており、同様にシステム要素B1、B2、B
3、B4の要素数記憶部45には必要稼働要素数として
2、必要待機要素数として2が記憶されており、システ
ム要素C1、C2の要素数記憶部45には、必要稼働要
素数として1、必要待機要素数として1が記憶されてお
り、システム要素DとEの要素数記憶部45には必要稼
働要素数として1、必要待機要素数として0が記憶され
ている。
1、A3、B1、B2、C1、D、Eの動作モード記憶
部40には、動作モードとして“稼働”が記憶されてお
り、待機系要素であるシステム要素A2、B3、B4、
C2の動作モード記憶部40には、“待機”が記憶され
ている。
方法としては、実行待ちイベント数を負荷とする方法
や、最低プライオリティの要素の実行時間を用いて負荷
とする方法等があるが、以下の説明では、実行待ちイベ
ント数を負荷とし、実行待ちイベント数が多いほど負荷
が高いとする。
は、稼働系が定期的に“alive”信号を送信し、待
機系がそのメッセージを受信しなくなった時稼働系故障
と判断する方法や、待機系から稼働系の状態を問い合わ
せ、その応答がない時稼働系故障と判断する方法等があ
るが、以下では、“alive”信号を用いて稼働系要
素の故障を検出する場合について説明する。
に、計算機1cが故障した場合を例に稼働系要素数と待
機系要素数が必要数に維持される処理について図10の
フローチャートを参照して説明する。なお、以下では、
計算機が故障した時の各計算機の負荷が、計算機1a=
20、計算機1b=10、計算機1c=17、計算機1
d=3、計算機1e=15、計算機1f=13であった
として説明を行う。
1、D、Eは、正常に動作している時その“aliv
e”信号の送信回数を付加した“alive”信号を周
期的に放送している。待機系要素A2、B3、B4、C
2は、故障検出手段21が同一送信回数の付加された
“alive”信号を要素数記憶部45にて記憶してい
る稼働系要素数だけ周期的に受信している時は全稼働系
が正常に動作していると判断するが、“alive”信
号を要素数記憶部45で記憶している稼働系要素数分受
信できなくなった時、稼働系故障と判断する。
想定するので、計算機1cに登録されているシステム要
素B2とC1が動作停止し、それらの待機系要素B3、
B4およびC2は、それぞれ“alive”信号を2つ
と1つ受信しなければならないところ、システム要素B
3とB4は1つのみ、システム要素C2は1つも受信で
きなくなり稼働系要素の故障を検出する。
述のようにして稼働系要素の故障が検出されると(10
1)、稼働系要素の故障を検出した待機系要素B3、B
4、C2の故障検出部21は、動作モード切り換え部4
1に対して自要素を稼働状態にするよう指示し、それを
受けて動作モード切り換え部41は、動作モード記憶部
40に記憶された動作モード“待機”を“稼働”に変更
する(102)。
行部30は、動作モード記憶部40の状態が“稼働”状
態になったことを検出すると、処理及び状態記憶部31
に記憶された状態に従って稼働系として動作を開始す
る。この稼働系としての処理と並行して稼働系要素数を
維持するための処理が行われる。
内の動作モード切り換え部41は、動作モード記憶部4
0の状態を“稼働”に切り換えた後、稼働要素数を調整
するため自要素内の稼働要素数問い合わせ部42を起動
する。起動された稼働要素数問い合わせ部42は、自要
素の稼働系がいくつ動作しているかを問い合わせるメッ
セージを、自要素の多重化要素の応答部43宛に放送す
るとともに、自要素内の稼働要素数カウント部44を起
動する。つまり、システム要素B3、B4はシステム要
素B宛に、システム要素C2はシステム要素C宛に問い
合わせメッセージを放送し、その結果を稼働要素数カウ
ント部44で待つ(103)。
素内の応答部43は、稼働要素数問い合わせメッセージ
を受信すると(201)、負荷監視部32から現在の負
荷値を得、この負荷値を自計算機番号と共に自多重化要
素の稼働要素数カウント部44宛に放送する(20
2)。例えば、システム要素B1、B3、B4内の応答
部43は、稼働要素数問い合わせメッセージを受信する
と、それぞれの計算機の負荷をそれぞれの負荷監視部3
2から得て、それぞれの計算機番号1b、1d、1eを
付加してシステム要素B宛に応答メッセージを放出す
る。この例では、計算機1cが故障した時の各計算機の
負荷が、計算機1a=20、計算機1b=10、計算機
1c=17、計算機1d=3、計算機1e=15、計算
機1f=13であるので、システム要素B1は(計算機
番号=1b、負荷10)を、システム要素B3は(1
d、3)を、システム要素B4は(1e、15)を放送
し、システム要素C2は(1d、3)を放送する。
働要素数カウント部44は、起動後一定時間(例えば50
msec)待ち、その間に到着する応答メッセージを受信す
る(104)。
信した応答メッセージ数を数え現在の稼働要素数を把握
し(105)、要素数記憶部45に記憶された必要稼働
要素数と比較する(106)。
しいならば稼働要素決定部46を起動し、そうでなけれ
ば稼働要素生成手段23を起動する。この例では、シス
テム要素B1、B3、B4はそれぞれ3つのメッセージ
を受信し、システム要素C2は自身からの1つのみメッ
セージを受信する。システム要素Bについては要素数記
憶部45に必要稼働要素数2と記憶されているので、現
在の稼働要素数が要素数記憶部45に記憶されている数
より多く、稼働要素決定部46を起動する。また、シス
テム要素C2についても、要素数記憶部45に記憶され
た要素Cの必要稼働要素数は1である。このため、現在
の稼働要素数と等しいので稼働要素決定部46を起動す
る。
ず、受信した応答メッセージをそれに付加されている多
重化要素の存在する計算機番号と負荷に応じて並べる
(107)。つまり、負荷の小さい順に並べ、負荷が等
しい場合は計算機番号が小さい順に並べる。
ら数えて、要素数記憶部45に記憶されている必要稼働
要素数以下かどうか比較する(108)。
さい方から数えて要素数記憶部45に記憶されている数
以下ならば、そのまま稼働状態を続ける。
数えて要素数記憶部45に記憶されている数より大きい
ならば、自要素は必要数以上の稼働要素であると判断し
て、自要素を待機状態に戻すべく動作モード切り換え部
41に指示する。動作モード切り換え部41は、指示に
従い動作モード記憶部40に記憶されている状態“稼
働”を“待機”に変更する(109)。
さい順に並べると、{(1d、3)、(1b、10)、
(1e、15)}となり、計算機1dと1b上のシステ
ム要素B3とシステム要素B1は稼働状態を継続する
が、計算機1e上のシステム要素B4は待機状態に戻
る。
維持することができるが、待機要素数が減っているため
これを補う処理を引き続き行う。
素が稼働状態を続けるべきか、待機要素に戻るかを求め
た後、各要素は待機系要素がいくつ存在するかを求め
(114)、その待機要素数を引き数に待機要素生成手
段24を起動する。この例では、例えばシステム要素B
については、計算機1bと1d上のシステム要素B1、
B3は稼働状態を継続するが、計算機1e上のシステム
要素B4は待機状態に戻るため、待機要素数1を引き数
に待機要素生成手段24を起動する。また、システム要
素Cについては待機要素が存在しないため、待機要素数
0を引き数に待機要素生成手段24を起動する。
引き数として渡された待機要素数が0か否か調べる(1
15)。
り、待機要素数=0の場合)は、負荷最小計算機上で動
作している稼働系要素が待機系要素を生成すべく、自要
素が負荷最小計算機上で動作しているか調べる(11
6)。
作していない場合は、そのまま稼働状態を継続する。一
方、負荷最小計算機上で動作している場合は、受信した
応答メッセージ中の計算機番号と故障した多重化要素が
存在した計算機番号を用いて当該要素の多重化要素が存
在しない計算機を不足する待機要素数分求める(11
7)。そして、その求めた計算機のそれぞれに自要素を
コピーし動作モードを待機に切り換えることによって、
待機系要素を生成する(118)。
2のみしか存在せず待機要素が存在しないため、要素C
2が要素C1が存在した計算機1cを除く計算機、ここ
では残りの計算機1a、1b、1e内の負荷最小の計算
機1b上に自身をコピーした後、動作モードを待機に切
り換えることによって待機系要素C3を生成する。
要素が存在する場合は、負荷最小計算機上で動作してい
る待機系要素が待機系要素を生成すべく、自要素が負荷
最小計算機上で動作しているか調べる(119)。自要
素が負荷最小計算機上で動作していない場合は、そのま
ま待機状態を継続する。一方、負荷最小計算機上に存在
する場合は、受信した応答メッセージ中の計算機番号と
故障した多重化要素が存在した計算機番号を用いて当該
要素の多重化要素が存在しない計算機を不足する待機要
素数分求める(120)。そして、その求めた計算機の
それぞれに自要素をコピーして待機系要素を生成する
(121)。
働系要素がシステム要素B1、B3となり、システム要
素B4のみが待機系要素となる。このためシステム要素
B4は、システム要素B2が存在した計算機1cと稼働
系要素であるシステム要素B1、B3が存在する計算機
1b、1dを除く計算機で負荷が最小の計算機、ここで
は計算機1f上に自身をコピーし待機系要素B5とす
る。
障計算機1cに存在したシステム要素BとCの稼働要素
数と待機要素数をそれぞれの要素数記憶部45に設定さ
れた必要数に維持することが可能となる。
計算機1a、1eが同時に故障した場合を例に、故障し
た稼働系要素数がその待機系要素数より多い場合でも、
新たに稼働系要素と待機系要素を生成して、それぞれの
要素数を要素数記憶部45に設定されている必要数に保
つことを示す。
フローチャートに示した前述の手順に従って、システム
要素A2が多重化要素Aの故障を検出するが、ステップ
106において、稼働要素数カウント部44では自身か
らの応答のみを受信し、システム要素Aの要素数記憶部
45に記憶されている必要稼働要素数2を下回るため、
稼働要素生成手段23を起動する。
って新たに稼働系要素を生成するが、この生成処理は、
負荷最小の計算機に存在する稼働系要素によって行わせ
るため、まず、受信した応答メッセージ中で自要素の負
荷が最小かどうかを調べる(110)。
ての処理を継続する。一方、自要素が負荷最小計算機上
のシステム要素であったならば、現在の稼働系要素数と
要素数記憶部45に記憶されている必要稼働要素数との
差を求め(111)、その差の数分稼働系要素を生成す
べく、受信した応答メッセージ中の計算機番号と故障し
た多重化要素が存在した計算機番号を用いて当該要素の
多重化要素が存在しない計算機を差の数分求める(11
2)。そして、その求めた計算機のそれぞれに自要素を
コピーする(113)。
システム要素A2のみしか存在しないため、現在の稼働
要素数は1であり、自身が負荷最小計算機上の要素であ
ると判断する。そして、要素数記憶部45には、必要稼
働要素数2が記憶されているため、稼働要素数として不
足する1個を、自計算機1bとシステム要素A1、A3
が存在した計算機1a、1eとを除く計算機、例えば計
算機1dに自要素をA4としてコピーすることによって
生成する。このことによって、システム要素Aの稼働要
素数を要素数記憶部45に設定された必要稼働要素数2
に維持することが可能となる。
素数を求めるが(114)、この例では、システム要素
Aの待機系要素が存在しないため待機要素数を0として
待機要素生成手段24を起動する。
数として渡された待機要素数が0か否か調べる(11
5)。この例では、待機要素が存在しないので待機要素
数=0であり、負荷最小計算機上で動作している稼働系
要素が待機系要素を生成すべく、自要素が負荷最小計算
機上で動作しているか調べる(116)。
作していない場合は、そのまま稼働状態を継続する。一
方、自要素が負荷最小計算機上で動作している場合は、
受信した応答メッセージ中の計算機番号と故障した多重
化要素が存在した計算機番号、および新たに生成した稼
働要素の計算機番号を用いて、当該要素の多重化要素が
存在しない計算機を不足する待機要素数分求める(11
7)。そして、その求めた差の数分の計算機のそれぞれ
に自要素をコピーし動作モードを待機に切り換えること
によって、待機系要素を生成する(118)。
してシステム要素A2、A4が存在するが、ここで計算
機1bの方が負荷が小さいので、システム要素A2は故
障した計算機1aと1eおよび新たに稼働要素を生成し
た計算機1dを除く計算機、ここでは計算機1f上に自
身をコピーし動作モードを待機に切り換えることによっ
て、待機系要素A5を生成する。このことによって図1
3に示すように、システム要素Aの稼働要素数と待機要
素数を要素数記憶部45に設定された必要数に維持する
ことが可能となる。
検知した待機系要素が即稼働系となって処理を引き継ぐ
ため、処理の中断を極力短くすることができる。
故障を検出すると、即自要素の実行モードを稼働系とし
た後、不足する稼働系および待機系を生成するが、自要
素の実行モードを稼働系にする前に不足する稼働要素数
および待機要素数を求めた後、自要素を稼働系とするか
否か判定し不足分のシステム要素を生成することも可能
である。以下、このような手順を採用した第2の実施例
を図面を参照して説明する。
述の実施例と同様であるが、稼働系要素数調整手段22
の構成が、図14に示すような構成の稼働系要素数調整
手段22aに変わる。また、故障検出手段21および本
処理手段20は、図9に示した多重要素処理システムと
同様に構成されている。
内に自要素と等しい多重化要素がいくつ存在するかを問
い合わせるための多重要素数問い合わせ部50と、この
多重要素数問い合わせ部50の要求に応えて自要素の状
態を返信する応答部51と、この応答部51からの応答
を受信し稼働要素数と待機要素数を求める多重要素数カ
ウント部52と、必要要素数を記憶しておく要素数記憶
部53と、多重要素数カウント部52で求めた稼働/待
機要素数と要素数記憶部53に記憶された設定数とを比
較し、多重要素数カウント部52で求めた多重要素数の
方が多い場合起動され、自要素が稼働要素になるべきか
否かを決定する稼働要素決定部54と、稼働要素になる
と判断した時、自要素の動作モードを切り換える動作モ
ード切り換え部55と、要素自身の動作モード(稼働系
か待機系か)を記憶している動作モード記憶部56とか
ら構成されている。
素A1、A2、A3のそれぞれの要素数記憶部53に
は、必要稼働要素数として2、必要待機要素数として1
が記憶されており、同様に多重化要素Bの要素数記憶部
53には必要稼働要素数として2、必要待機要素数とし
て2が記憶されており、多重化要素Cの要素数記憶部5
3には必要稼働要素数として1、必要待機要素数として
1が記憶されており、多重化要素DとEの要素数記憶部
53には必要稼働要素数として1、必要待機要素数とし
て0が記憶されていることは前述した実施例と同様であ
る。
1、A3、B1、B2、C1、D、Eの動作モード記憶
部56には、動作モードとして“稼働”が記憶されてお
り、待機系要素であるシステム要素A2、B3、B4、
C2の動作モード記憶部56には“待機”が記憶されて
いることも前述した実施例と同様である。また、実行待
ちイベント数を負荷とし、“alive”信号を用いて
稼働系要素の故障を検出する点も前述した実施例と同様
である。
障したときの各計算機の負荷が、計算機1a=20、計
算機1b=10、計算機1c=17、計算機1d=3、
計算機1e=15、計算機1f=13であったとする。
に、計算機1cが故障した場合を例に稼働要素数および
待機要素数が維持されることを、図15のフローチャー
トを参照して説明する。
A3、B1、B2、C1、D、Eは、正常に動作してい
る時、その“alive”信号の送信回数を付加した
“alive”信号を周期的に放送している。待機系要
素、すなわちシステム要素A2、B3、B4、C2は、
故障検出手段21で同一送信回数が付加された“ali
ve”信号を要素数記憶部53にて記憶している稼働要
素数だけ周期的に受信している時は全稼働系が正常に動
作していると判断するが、“alive”信号を要素数
記憶部53で記憶している数分受信できなくなった時、
稼働系故障と判断する。この例では、計算機1cが故障
した場合を想定しているので、計算機1cに登録されて
いたシステム要素B2とC1が動作停止し、それらの待
機系要素であるシステム要素B3、B4およびC2は、
それぞれ“alive”信号を2つと1つ受信しなけれ
ばならないところ、システム要素B3とB4は1つの
み、システム要素C2は1つも受信できなくなり、稼働
系要素の故障を検出する(301)。
3、B4、C2の故障検出手段21は、稼働系要素数を
調整するため自要素内の多重要素数問い合わせ部50を
起動する。起動された多重要素数問い合わせ部50は、
自要素の稼働系要素および待機系要素がいくつ動作して
いるかを問い合わせる多重要素問い合わせメッセージ
を、自要素の多重化要素の応答部51宛に放送する(3
02)。
ト部52を起動する。つまり、システム要素B3、B4
は、システム要素B宛に、システム要素C2はシステム
要素C宛に問い合わせメッセージを放送し、その結果を
多重要素数カウント部52で待つ。
答部51は、多重要素数問い合わせメッセージを受信す
ると(401)、負荷監視部32から現在の負荷値を
得、動作モード記憶部56から自要素の現動作モードを
得、自計算機番号と共に自要素の多重化要素の多重要素
数カウント部52宛に放送する(402)。例えば、シ
ステム要素B1、B3、B4内の応答部51は、多重要
素数問い合わせメッセージを受信すると、それぞれの計
算機の負荷をそれぞれの負荷監視部32から得、さらに
自要素の現在の動作モードを動作モード記憶部56より
得て、それぞれの計算機番号1b、1d、1eを付加し
てシステム要素B宛に応答メッセージを放送する。この
例では、計算機1cが故障した時の各計算機の負荷が、
計算機1a=20、計算機1b=10、計算機1c=1
7、計算機1d=3、計算機1e=15、計算機1f=
13であるので、システム要素B1は(計算機番号=1
b、負荷=10、動作モード=“稼働”)を、システム
要素B3は(1d、3、“待機”)を、システム要素B
4は(1e、15、“待機”)を放送し、システム要素
C2は(1d、3、“待機”)を放送する。
ント部52は、起動後一定時間(例えば50msec)待ち、
その間に到着する応答メッセージを受信する(30
3)。
した応答メッセージから。現在の待機系要素数、およ
び、要素数記憶部53に記憶されている必要稼働要素数
と受信した稼働要素数を比較し不足している稼働要素数
を求める(304)。
めた現在の待機要素数と不足する稼働要素数を比較する
(305)。
る稼働要素数より多い場合、およびこれらが等しい場合
は、稼働要素決定部54を起動し、そうでない場合は、
稼働要素生成手段23を起動する。この例では、システ
ム要素B1、B3、B4は、それぞれ3つのメッセージ
を受信し、現在の稼働要素数が1、待機要素数が2であ
ること、要素数記憶部53に記憶されている必要稼働要
素数が2であることから不足する稼働要素数が1である
ことを求め、現在の待機要素数が不足する稼働要素数よ
り多いので、稼働要素決定部54を起動する。
1つのみメッセージを受信し、待機系要素数が1つで、
システム要素Cの必要稼働要素数は1と要素数記憶部5
3に記憶されているので、不足稼働要素数が1であるこ
とを求め、現在の待機要素数と等しいので稼働要素決定
部54を起動する。
受信した応答メッセージ中の待機要素から送られたメッ
セージを計算機番号と負荷に応じて並べる(306)。
つまり、負荷の小さい順に並べ、負荷が等しい場合は計
算機番号が小さい順に並べる。そして、自要素の順位が
負荷の小さい方から数えて、不足稼働要素数以下かどう
か比較する(307)。
から数えて不足稼働要素数より大きいならば、自要素は
稼働要素になる必要がないと判断して、待機状態を継続
する。一方、自要素の順位が負荷の小さい方から数えて
不足稼働要素数以下ならば、自要素の動作モードを稼働
状態に変えるべく、動作モード切り換え部55を起動す
る。動作モード切り換え部55は、指示に従い動作モー
ド記憶部56に記憶されている状態“待機”を“稼働”
に変更する(308)。
要素の存在する計算機番号を負荷の小さい順に並べると
{(1d、3、待機)、(1e、15、待機)}となる
ため、計算機1dのシステム要素B3が稼働状態に切り
換わる。計算機1b上のシステム要素B1は稼働状態を
継続し、計算機1e上のシステム要素B4は待機状態を
継続する。
て、各要素毎に自要素が待機状態を続けるべきか、稼働
要素になるべきかを求めた結果、各要素はステップ30
4で求めた現待機要素数から不足稼働要素数を引くこと
によって待機要素がいくつ存在するかを求める(31
3)。
機要素生成手段24を起動する。この例では、例えばシ
ステム要素Bについては、計算機1b上のシステム要素
B1は稼動状態のままで、1d上のシステム要素B3は
稼働状態となり、計算機1e上のシステム要素B4は待
機状態のままであるため、待機要素数1を引き数に待機
要素生成手段24を起動する。また、システム要素Cに
ついては、待機要素が存在しないため、待機要素数0を
引き数に待機要素生成手段24を起動する。
は、引き数として渡された待機要素数が0か否か調べる
(314)。
り、待機要素数=0の場合)は、負荷最小計算機上で動
作している稼働系要素が待機系要素を生成すべく、自要
素が負荷最小計算機上で動作しているか調べる(31
5)。
作していない場合は、そのまま稼働状態を継続する。一
方、自要素が負荷最小計算機上で動作している場合は、
受信した応答メッセージ中の計算機番号と故障した多重
化要素が存在した計算機番号を用いて当該要素の多重化
要素が存在しない計算機を不足する待機要素数分求める
(316)。
要素をコピーし、動作モードを待機に切り換えることに
よって待機要素を生成する(317)。
C2のみしか存在せず、待機系要素が存在しないため、
システム要素C2がシステム要素C1が存在した計算機
1cを除く計算機、ここでは残りの計算機1a、1b、
1e、1f内の負荷最小の計算機1b上に自身をコピー
し動作モードを待機に切り換えることによって、待機系
要素C3を生成する。
存在する場合は、負荷最小計算機上で動作している待機
系要素が待機系要素を生成すべく、自要素が負荷最小計
算機上で動作しているか調べる(318)。
していない場合は、そのまま待機状態を継続する。一
方、自要素が負荷最小計算機上に存在する場合は、受信
した応答メッセージ中の計算機番号と故障した多重化要
素が存在した計算機番号を用いて当該要素の多重化要素
が存在しない計算機を不足する待機要素数分求める(3
19)。
要素をコピーして待機系要素を生成する(320)。
稼働系要素がシステム要素B1、B3となり、システム
要素B4のみが待機系要素となる。このためシステム要
素B4は、システム要素B2が存在した計算機1cと稼
働要素B1、B3が存在する計算機1b、1dを除く計
算機で負荷が最小の計算機、ここでは計算機1f上に自
身をコピーし待機系要素B5とする。
障計算機1cに存在したシステム要素BとCの稼働要素
数と待機要素数をそれぞれの要素数記憶部53に設定さ
れた必要数に維持することが可能となる。
計算機1a、1eが同時に故障した場合を例に、故障し
た稼働要素数がその待機要素数より多い場合でも、新た
に稼働系要素と待機系要素を生成して、それぞれの要素
数を要素数記憶部53に設定されている必要数に保つ処
理について説明する。
手順に従って、システム要素A2が多重化要素Aの故障
を検出するが、多重要素数カウント部52では自身から
の応答のみを受信し、多重化要素Aの不足稼働要素数が
要素数記憶部53で記憶している必要稼働要素数2とな
るため、現待機要素数(=1)が不足稼働要素数(=
2)を下回る。このため、全待機要素を稼働状態に変え
ても必要な稼働要素数を維持できない。そこで、新たに
稼働要素を生成するため、稼働要素生成手段23を起動
する。
成処理を負荷最小の計算機に存在する待機系要素によっ
て行わせるため、まず、受信した応答メッセージ中の待
機系要素存在計算機内で自要素の負荷が最小かどうか調
べる(309)。
を稼働系とすべく動作モード切り換え部55を起動する
(312)。
ム要素であったならば、不足稼働要素数分稼働要素を生
成すべく、受信した応答メッセージ中の計算機番号と故
障した多重化要素が存在した計算機番号を用いて当該要
素の多重化要素が存在しない計算機を不足稼働要素数分
求める(310)。
れぞれに自要素をコピーし動作モードを稼働に切り換え
て稼働要素を生成する(311)。
ド切り換え部55を起動し、動作モード切り換え部55
は、指示に従い動作モード記憶部56に記憶されている
状態“待機”を“稼働”に変更する(312)。
テム要素A2のみしか存在しないため、現在の待機要素
数は1であり、自身が負荷最小計算機上の要素であると
判断する。そして要素数記憶部53には必要稼働要素数
2が記憶されているため、不足稼働要素数として1個
を、自計算機1bと、システム要素A1、A3が存在し
た計算機1a、1eを除く計算機、例えば計算機1dに
自要素をコピーし動作モードを稼働に切り換えて稼働要
素としてのシステム要素A4を生成し、自要素も稼働状
態になる。このことによって、システム要素Aの稼働要
素数を要素数記憶部53に設定された必要数2に維持す
ることがでる。この後、引き続き待機要素数の維持を行
う。
では、上述のようにして計算機1dにシステム要素A4
を生成した後、待機要素数を求める(313)。この例
では、待機系要素が存在しないため、待機要素数0を引
き数としてとしてシステム要素Aの待機要素生成手段2
4を起動する。
ず、引き数として渡された待機要素数が0か否か調べる
(314)。この例では、待機系要素が存在しないので
待機要素数=0であり、負荷最小計算機上で動作してい
る稼働系要素が待機系要素を生成すべく、自要素が負荷
最小計算機上で動作しているか調べる(315)。
していない場合は、待機要素生成手段24による処理を
終了して、そのまま稼働状態を継続する。一方、自要素
が負荷最小計算機上で動作している場合は、受信した応
答メッセージ中の計算機番号と故障した多重化要素が存
在した計算機番号、および新たに生成した稼働系要素の
計算機番号を用いて、当該要素の多重化要素が存在しな
い計算機を不足する待機要素数分求める(316)。そ
して、その求めた数分の計算機のそれぞれに自要素をコ
ピーし動作モードを待機に切り換えることによって待機
系要素を生成する(317)。
としてシステム要素A2、A4が存在するが、ここで計
算機1bの方が負荷が小さかったとすると、システム要
素A2は故障した計算機1aと1eおよび新たに稼働系
要素を生成した計算機1dを除く計算機、ここでは計算
機1f上に自身をコピーし動作モードを待機に切り換え
ることによって待機系要素A5を生成する。このことに
よって図13に示すように、システム要素Aの稼働要素
数と待機要素数を要素数記憶部53に設定された必要数
に維持することが可能となる。
稼働系になった要素を待機系に戻すといった動作モード
の無駄な切り換えが生じないといった特徴がある。
出した全待機要素が一旦稼働系になった後、稼働要素数
を問い合わせ不必要な稼働系要素を待機系要素に戻し、
さらに不足する稼働/待機系要素を生成した。また、第
2の実施例では、多重要素数を問い合わせる際に不足稼
働要素数を求め、その数分待機系要素を稼働系に切り換
えたり新たに稼働系要素を生成した。このため、稼働要
素数や多重要素数を問い合わせる際に同期処理が必要と
なり、処理のオーバヘッドが生じてしまう。
施例では、以下のように処理を実行する。
働系要素の故障を検出した全ての待機系要素は一旦稼働
系となる。この時、受信した“alive”信号の数と
要素数記憶部に記憶されている必要稼働要素数との差か
ら第2の実施例のように不足稼働要素数を求めておく。
算機番号と自計算機の負荷を付加して放送する。
素は、他のシステム要素から稼働系に切り替わった旨の
メッセージを受信した時、自計算機の負荷と他要素から
受信した切り換えメッセージに付加されている負荷値と
比べて、自計算機より小さい負荷が付加された切り換え
メッセージを必要稼働数以上受信したら、自要素を待機
系に戻す。一方、自計算機より負荷の小さい計算機数が
必要稼働要素数未満の場合はそのまま稼働系を継続す
る。
切り換えメッセージしか受信しなかった場合は、全待機
系要素が稼働系になっても必要稼働要素数に至らないの
で、負荷最小な計算機が不足する稼働系要素を前述した
実施例と同様な方法で生成し、さらに、不足する待機系
要素をやはり前述した実施例と同様な方法で生成する。
このようにすることによって、多重化要素間で同期を取
る必要がなく、各システム要素の稼働要素数と待機要素
数を要素数記憶部に設定された必要数に維持することが
可能となる。
機系要素を利用可能な計算機上に重複することなく生成
できたが、利用可能な計算機が不足する場合は、稼働要
素数を維持するよう努め、稼働要素数を維持できた時、
待機系要素を生成する。つまり、稼働要素数を維持する
ことを優先し、計算機が不足する場合は利用可能な資源
の範囲内で最大数の多重要素を生成する。
ステップ112、117、120、および、図15のフ
ローチャートに示したステップ310、316、319
にて多重化要素の存在しない計算機を求める際、利用可
能なすべての計算機を求め、その計算機に不足する稼働
/待機系要素を最大で不足数分、図10のステップ11
3、118、121および図15のステップ311、3
17、320で生成することによって実現することがで
きる。
た第4の実施例を、図面を参照して説明する。
である。同図に示すように、各システム要素の構成は、
図8に示した実施例と同様であるが、その接続関係が異
なり、稼働系要素数調整手段22bから待機要素生成手
段24を起動し、その後、稼働要素生成手段23を起動
する順番となっている。また、稼働系要素数調整手段2
2bの構成が図18に示すように変わる。
段22bは、システム内に自要素と等しい多重化要素が
いくつ存在するかを問い合わせるための多重要素数問い
合わせ部60と、自要素の状態を返信する応答部61
と、この応答部61からの応答を受信し稼働要素数と待
機要素数を求める多重要素数カウント部62と、必要要
素数を記憶しておく要素数記憶部63と、多重要素数カ
ウント部62で求めた稼働要素数が0の時起動され自要
素が稼働要素になるべきか否かを決定する稼働要素決定
部64と、稼働要素になると判断したとき自要素の動作
モードを切り換える動作モード切り換え部65と、要素
自身の動作モード(稼働系か待機系か)を記憶している
動作モード記憶部66とから構成されている。。
素A1、A2、A3のそれぞれの要素数記憶部63に
は、必要稼働要素数として2、必要待機要素数として1
が記憶されており、同様に多重化要素Bの要素数記憶部
63には必要稼働要素数として2、必要待機要素数とし
て2が記憶されており、多重化要素Cの要素数記憶部6
3には必要稼働要素数として1、必要待機要素数として
1が記憶されており、多重化要素DとEの要素数記憶部
63には必要稼働要素数として1、必要待機要素数とし
て0が記憶されていることは前述した実施例と同様であ
る。
B2、C1、D、Eの動作モード記憶部66には、動作
モードとして“稼働”が記憶されており、待機要素であ
るA2、B3、B4、C2の動作モード記憶部66には
“待機”が記憶されていることも前述した実施例と同様
である。また、負荷監視部32においても、前述同様実
行待ちイベント数を負荷とし、稼働系の故障を検出する
方法としても、前述同様“alive”信号を用いて稼
働系要素の故障を検出する。
故障した時の各計算機の負荷が、計算機1a=20、計
算機1b=10、計算機1c=17、計算機1d=3、
計算機1e=15、計算機1f=13であったとする。
に、計算機1cが故障した場合を例に稼働要素数および
待機要素数が維持されることを図19のフローチャート
を参照して示す。
A3、B1、B2、C1、D、Eは、正常に動作してい
る時その“alive”信号の送信回数を付加した“a
live”信号を周期的に放送している。待機系要素、
すなわちシステム要素A2、B3、B4、C2は、故障
検出手段21で同一送信回数が付加された“aliv
e”信号を要素数記憶部63にて記憶している必要稼働
要素数だけ周期的に受信している時は全稼働系が正常に
動作していると判断するが、“alive”信号を要素
数記憶部63で記憶している数分受信できなくなった
時、稼働系故障と判断する(501)。
を想定するので、計算機1cに登録されていたシステム
要素B2とC1が動作停止し、それらの待機要素である
システム要素B3、B4およびC2は、それぞれ“al
ive”信号を2つと1つ受信しなければならないとこ
ろ、システム要素B3とシステム要素B4は1つのみ、
システム要素C2は1つも受信できなくなり稼働系要素
の故障を検出する。
B3、B4、C2の故障検出手段21は、稼働要素数を
調整するため自要素内の多重要素数問い合わせ部60を
起動する。起動された多重要素数問い合わせ部60は、
自要素の稼働系および待機系がいくつ動作しているかを
問い合わせる多重要素問い合わせメッセージを、自要素
の多重化要素の応答部61宛に放送する(502)。こ
れとともに、自要素内の多重要素数カウント部62を起
動する。つまり、システム要素B3、B4は、システム
要素B宛に、システム要素C2はシステム要素C宛に問
い合わせメッセージを放送し、その結果を多重要素数カ
ウント部62で待つ。
答部61は、多重要素数問い合わせメッセージを受信す
ると(401)、負荷監視部32から現在の負荷値を
得、動作モード記憶部66から自要素の現動作モードを
得、自計算機番号と共に自要素の多重化要素の多重要素
数カウント部62宛に放送する(402)。
の応答部61は、多重要素数問い合わせメッセージを受
信すると、それぞれの計算機の負荷をそれぞれの負荷監
視部32から得、さらに自要素の現在の動作モードを動
作モード記憶部66より得て、それぞれの計算機番号1
b、1d、1eを付加してシステム要素B宛に応答メッ
セージを放送する。
計算機の負荷が、計算機1a=20、計算機1b=1
0、計算機1c=17、計算機1d=3、計算機1e=
15、計算機1f=13であったとしているので、シス
テム要素B1は(計算機番号=1b、負荷=10、動作
モード=“稼働”)を、システム要素B3は(1d、
3、“待機”)を、システム要素B4は(1e、15、
“待機”)を放送し、システム要素C2は(1d、3、
“待機”)を放送する。
2は、起動後一定時間(例えば50msec)待ち、その間に
到着する応答メッセージを受信する(503)。
した応答メッセージより現在の稼働要素数と待機要素数
を求める(504)。
を、ステップ504で求めた稼働要素数より調べる(5
05)。この時、現在の稼働要素が存在するならば待機
要素の生成のため待機要素生成手段24を起動するが、
現在稼働系要素が存在しない場合は、待機系要素中の1
つを稼働系要素とすべく、どの待機系要素を稼働系にす
るか決めるため稼働要素決定部64を起動する。
4はそれぞれ3つのメッセージを受信し、現在の稼働要
素数が1、待機要素数が2となり、1つの稼働系要素の
存在が確認できたので待機要素生成手段24を起動す
る。システム要素C2については、自身からの1つのみ
受信し、待機系要素数が1つで稼働系要素が存在しない
ことを検知するので、稼働系要素を生成すべく稼働要素
決定部64を起動する。稼働要素決定部64が起動され
たならば、負荷最小の計算機上の待機系要素を稼働系と
すべく、自計算機が負荷が最小かどうか調べる(50
6)。
待機系であるが、負荷が最小であったならば自要素を稼
働系とすべく動作モード切り換え部65を起動し、動作
モード記憶部66の状態を“待機”から“稼働”に変更
する(507)。
系が存在しないため自要素を稼働系とする。このことに
よって、少なくとも1つの稼働要素を確保することかで
きたので、次に待機系要素を生成するため待機要素生成
手段24を起動する。
ず、現在の待機要素数を求める(508)。これは稼働
系要素が存在した場合はステップ504で求めた待機要
素数であり、稼働系要素が存在しなかった場合はステッ
プ504で求めた待機要素数−1である。そして、求め
た待機要素数が要素数記憶部63に記憶されている必要
待機要素数と比べて等しいか否か調べる(509)。
素が存在するため、稼働系要素を生成するため稼働要素
生成手段23を起動する。この例では、システム要素B
としてはシステム要素B3、B4が待機系要素であり、
要素数記憶部63に記憶された2個分存在するため、待
機系要素を新たに作る必要がなく、稼働要素生成手段2
4を起動する。
3に記憶されている数より小さい場合は、待機系要素を
生成するため待機系要素が存在するか否かを調べる(5
10)。
負荷最小計算機上で動作している稼働系要素が待機系要
素を生成すべく、自要素が負荷最小計算機上で動作して
いるか調べる(511)。
い場合は、そのまま稼働状態を継続する。一方、自要素
が負荷最小計算機上で動作している場合は、受信した応
答メッセージ中の計算機番号と故障した多重化要素が存
在した計算機番号を用いて当該要素の多重化要素が存在
しない計算機を不足する待機要素数分求める(51
2)。そして、その求めた数分の計算機のそれぞれに自
要素をコピーし動作モードを待機状態に切り換えること
によって待機系要素を生成する(513)。
であるシステム要素C2のみしか存在せず、待機系要素
が存在しないため、システム要素C2がシステム要素C
1が存在した計算機1cを除く計算機、ここでは残りの
計算機1a、1b、1e、1f内の負荷最小の計算機1
b上に自身をコピーし動作モードを待機に切り換えるこ
とによって、待機系要素としてシステム要素C3を生成
する。
存在する場合は、負荷最小計算機上で動作している待機
系要素が待機系要素を生成すべく、自要素が負荷最小計
算機上で動作しているか調べる(514)。
作していない場合は、そのまま待機状態を継続する。一
方、自要素が負荷最小計算機上に存在する場合は、受信
した応答メッセージ中の計算機番号と故障した多重化要
素が存在した計算機番号を用いて当該要素の多重化要素
が存在しない計算機を不足する待機要素数分求める(5
15)。
要素をコピーして待機系要素を生成する(516)。
63に記憶されている必要数に維持することができたな
ら、次に稼働要素数を要素数記憶部63に記憶されてい
る必要数に維持するため稼働要素生成手段23を起動す
る。
ず、現在の稼働要素数を求める(517)。この現在の
稼働要素数は、稼働系要素が存在した場合はステップ5
04で求めた稼働要素数であり、稼働系要素が存在しな
かった場合はステップ507で作成した1個である。
63に記憶されている必要稼働要素数に達しているか調
べる(518)。
している場合は稼働要素数も維持されているので処理を
終了する。この例では、システム要素Cは既に稼働要素
が1つ生成されているので必要数に達しており、要素数
記憶部63に記憶されている必要数を維持しているので
処理を終了する。
場合は、負荷最小計算機上で動作しているシステム要素
が稼働系要素を生成すべく、自要素が負荷最小計算機上
で動作しているか調べる(519)。
作していない場合は処理を終了する。一方、自要素が負
荷最小計算機上に存在する場合は、受信した応答メッセ
ージ中の計算機番号と故障した多重化要素が存在した計
算機番号、および稼働系要素と待機系要素を生成した場
合はその生成した計算機を除く計算機から、不足する稼
働要素数分の計算機を求める(520)。
自要素をコピーしてその動作モードを稼働状態にするこ
とによって稼働系要素を生成する(521)。
がシステム要素B1のみで、システム要素B3とシステ
ム要素B4が待機系要素となっているので、この3つの
システム要素内の負荷最小の計算機上のシステム要素
(ここではシステム要素B4)は、システム要素B2が
存在した計算機1cと稼働系要素B1と待機系要素B
3、B4が存在する計算機1b、1d、1eを除く計算
機で負荷が最小の計算機、ここでは計算機1f上に自身
をコピーしてその動作モードを稼働状態にすることによ
って稼働系要素B5を生成する。
障計算機1cに存在したシステム要素Bとシステム要素
Cの稼働要素数と待機要素数をそれぞれの要素数記憶部
63に設定された必要数に維持することが可能となる。
配置において、計算機1a、1eが同時に故障した場合
は、待機系要素であるシステム要素A2が稼働系要素の
故障を検出し、他にシステム要素Aの多重要素が存在し
ないためシステム要素A2自身が稼働系となり、その
後、待機系要素としてシステム要素A4を計算機1dに
生成し、さらに稼働系要素としてシステム要素A5を計
算機1fに生成し、図21に示すようになり、稼働要素
数と待機要素数を要素数記憶部に設定されている必要数
に維持する。
することにより計算機資源を有効に利用することが可能
となるといった特徴がある。
な計算機台数が不足して要素数記憶部に記憶されている
多重数分のシステム要素を生成できない場合は、処理の
手順に従い可能な限りの最大数のシステム要素を生成す
るとする。
理システムによれば、要求される数の稼働系要素と待機
系要素を維持することが可能となり、要求される信頼度
と応答性を維持可能となる。
構成を示す図。
す図。
置した様子を示す図。
様子を示す図。
ーマットを示す図。
るための図。
るための図。
す図。
の図。
の図。
の図。
の図。
図。
の図。
の図。
図。
図。
の図。
の図。
の図。
Claims (2)
- 【請求項1】 システムを構成するシステム要素のうち
の少なくとも一部が、稼働系要素群と待機系要素群とに
多重化され、通常時は前記稼働系要素群が作業を実行
し、前記稼働系要素の故障時に、対応する待機系要素が
稼働系として処理を継続する多重要素処理システムにお
いて、 前記システム要素は、 前記稼働系要素の故障を検出する故障検出手段と、 前記故障検出手段によって前記稼働系要素の故障が検出
された時に、前記待機系要素を前記稼働系要素に切り替
えて、前記稼働系要素の数を予め設定された必要稼働要
素数に維持する稼働系要素数調整手段と、 故障した前記稼働系要素の数が前記待機系要素の数以上
の時、前記稼働系要素を前記必要稼働要素数に維持する
よう新たに前記稼働系要素を生成する稼働要素生成手段
と、 前記稼働系要素の数を前記必要稼働要素数に維持できた
時、前記待機系要素の数を予め設定された必要待機要素
数に維持するよう新たに前記待機系要素を生成する待機
要素生成手段とを具備したことを特徴とする多重要素処
理システム。 - 【請求項2】 システムを構成するシステム要素のうち
の少なくとも一部が、稼働系要素群と待機系要素群とに
多重化され、通常時は前記稼働系要素群が作業を実行
し、前記稼働系要素の故障時に、対応する待機系要素が
稼働系として処理を継続する多重要素処理システムにお
いて、 前記システム要素は、 前記稼働系要素の故障を検出する故障検出手段と、 前記故障検出手段によって前記稼働系要素の故障が検出
された時に、作業を実行している前記稼働系要素がない
場合は、前記待機系要素内の少なくとも1要素を前記稼
働系要素に切り替える稼働系要素数調整手段と、 前記稼働系要素数調整手段によって、作業を実行してい
る前記稼働系要素が1つ以上確認できた時、前記待機系
要素の数を予め設定された必要待機要素数に維持するよ
う新たに前記待機系要素を生成する待機要素生成手段
と、 前記待機系要素の数を前記必要待機要素数に維持できた
時、前記稼働系要素の数を予め設定された必要稼働要素
数に維持するよう新たに前記稼働系要素を生成する稼働
要素生成手段とを具備したことを特徴とする多重要素処
理システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05141876A JP3139884B2 (ja) | 1993-06-14 | 1993-06-14 | 多重要素処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05141876A JP3139884B2 (ja) | 1993-06-14 | 1993-06-14 | 多重要素処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06348527A JPH06348527A (ja) | 1994-12-22 |
JP3139884B2 true JP3139884B2 (ja) | 2001-03-05 |
Family
ID=15302223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05141876A Expired - Lifetime JP3139884B2 (ja) | 1993-06-14 | 1993-06-14 | 多重要素処理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3139884B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE533007C2 (sv) | 2008-10-24 | 2010-06-08 | Ilt Productions Ab | Distribuerad datalagring |
EP2387200B1 (en) | 2010-04-23 | 2014-02-12 | Compuverde AB | Distributed data storage |
US9021053B2 (en) | 2011-09-02 | 2015-04-28 | Compuverde Ab | Method and device for writing data to a data storage system comprising a plurality of data storage nodes |
US8645978B2 (en) | 2011-09-02 | 2014-02-04 | Compuverde Ab | Method for data maintenance |
US8650365B2 (en) | 2011-09-02 | 2014-02-11 | Compuverde Ab | Method and device for maintaining data in a data storage system comprising a plurality of data storage nodes |
US9626378B2 (en) | 2011-09-02 | 2017-04-18 | Compuverde Ab | Method for handling requests in a storage system and a storage node for a storage system |
US8769138B2 (en) | 2011-09-02 | 2014-07-01 | Compuverde Ab | Method for data retrieval from a distributed data storage system |
US8997124B2 (en) | 2011-09-02 | 2015-03-31 | Compuverde Ab | Method for updating data in a distributed data storage system |
WO2013168258A1 (ja) * | 2012-05-10 | 2013-11-14 | 三菱電機株式会社 | 待機冗長二重化装置 |
JP6291711B2 (ja) * | 2013-01-21 | 2018-03-14 | 日本電気株式会社 | フォールトトレラントシステム |
JP7206981B2 (ja) * | 2019-02-07 | 2023-01-18 | 日本電気株式会社 | クラスタシステム、その制御方法、サーバ、及びプログラム |
-
1993
- 1993-06-14 JP JP05141876A patent/JP3139884B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
関 俊文、外2名,"宣言型分散システムにおける高信頼化手法",電気学会研究会資料,社団法人電気学会,平成4年10月14日,情報処理研究会 IP−92−7 |
Also Published As
Publication number | Publication date |
---|---|
JPH06348527A (ja) | 1994-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5636341A (en) | Fault processing method and information processing system | |
KR100557399B1 (ko) | 네트웍 매체 링크상태 기능을 이용한 컴퓨터 클러스터링시스템의 가용도 개선방법 | |
US5418937A (en) | Master-slave type multi-processing system with multicast and fault detection operations having improved reliability | |
US6012150A (en) | Apparatus for synchronizing operator initiated commands with a failover process in a distributed processing system | |
US20060150009A1 (en) | Computer system and method for dealing with errors | |
JP3139884B2 (ja) | 多重要素処理システム | |
EP2224341B1 (en) | Node system, server switching method, server device, and data transfer method | |
US6629260B1 (en) | Automatic reconnection of partner software processes in a fault-tolerant computer system | |
KR19980020514A (ko) | 종합정보통신망 사설교환기의 결함내성 구현방법 | |
KR20030048503A (ko) | 이중화 서버 구조의 데이터 동기화를 위한 통신 시스템 및방법 | |
CN114513525B (zh) | 采用跨机房链式转发的数据一致性优化方法及系统 | |
RU2279707C2 (ru) | Отказоустойчивое вычислительное устройство и способ функционирования подобного устройства | |
JPS6139656A (ja) | 分散形ネツトワ−クデ−タ処理システム | |
Pimentel et al. | A fault management protocol for TTP/C | |
JPH06195318A (ja) | 分散処理システム | |
JP2633351B2 (ja) | 制御装置の故障検出機構 | |
JP3213016B2 (ja) | 多重化要素制御方式 | |
JP2000224210A (ja) | 監視制御システム | |
JP3176945B2 (ja) | 情報処理装置、待機冗長型システムおよび待機冗長型システムの主系と待機系との間でチェックポイントをとる方法 | |
JP2885583B2 (ja) | 通信手順制御システム | |
JP2829040B2 (ja) | 情報集配信システム | |
KR0168947B1 (ko) | 실시간 분산시스템에서 디스크를 갖지 않는 노드의 부팅 방법 | |
CN115826435A (zh) | 一种航天器多机协同网络化容错方法 | |
JPH01314342A (ja) | 機能分散形マイコンシステムのバックアップ装置 | |
JPH04295937A (ja) | 待機冗長型システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20001128 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071215 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081215 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091215 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091215 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101215 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111215 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121215 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121215 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131215 Year of fee payment: 13 |
|
EXPY | Cancellation because of completion of term |