JP2000105754A - 網内の分散アプリケ―ションの故障を検出し、故障を指定のリプリケ―ションスタイルに従って回復するための方法および装置 - Google Patents

網内の分散アプリケ―ションの故障を検出し、故障を指定のリプリケ―ションスタイルに従って回復するための方法および装置

Info

Publication number
JP2000105754A
JP2000105754A JP11204121A JP20412199A JP2000105754A JP 2000105754 A JP2000105754 A JP 2000105754A JP 11204121 A JP11204121 A JP 11204121A JP 20412199 A JP20412199 A JP 20412199A JP 2000105754 A JP2000105754 A JP 2000105754A
Authority
JP
Japan
Prior art keywords
copy
application module
failure
host computer
daemon process
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
JP11204121A
Other languages
English (en)
Inventor
Pi-Yu Chung
チュン ピー−ユー
Yennun Huang
ファン エンナン
Deron Liang
リアン デロン
Chia-Yen Shih
シ チア−イエン
Shalini Yajnik
ヤニク シャリニ
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.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of JP2000105754A publication Critical patent/JP2000105754A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component

Abstract

(57)【要約】 (修正有) 【課題】 網内の分散アプリケーションの故障を検出
し、故障を指定のリプリケーションスタイルに従って回
復する。 【解決手段】 コンピュータ網内のコンピュータの上で
ランしているアプリケーションモジュール(A)は、網
内の他の複数のコンピュータの上で動作できる一つある
いは複数のバックアップコピーを用いて故障保護され
る。故障保護を遂行するためには、アプリケーションモ
ジュールは、自身を、リプリカマネージャダイモンプロ
セス(112)に登録メッセージを送信することで登録
する。この登録メッセージは、そのアプリケーションモ
ジュールに対して用いられるべき特定のリプリケーショ
ン戦略および程度を指定し、その戦略に従って故障回復
状態が維持される。

Description

【発明の詳細な説明】
【0001】
【関連する特許出願】本発明は、本発明と同時に出願さ
れた本発明と同時係属している合衆国特許出願“METHOD
AND APPARATUS FOR PROVIDING FAILURE DETECTION AND
RECOVERY WITH PREDETERMUNED DEGREE OF REPLICATION
FOR DISTRIBUTED APPLICATIONS IN ANETWORK(網内の
分散アプリケーションに関する故障を検出し、この故障
を指定されるリプリケーションの程度に従って回復する
ための方法および装置)",Serial No.
、とも関連するために、これについても参照された
い。
【0002】
【発明の属する技術分野】本発明は、網の上でランして
いるあるアプリケーションモジュールの故障の検出およ
び故障からの回復に関する。
【0003】
【従来の技術】網内のあるホストコンピュータの上でラ
ンしているあるアプリケーションモジュールが、それに
アクセスするクライアントに対して許容できる性能を提
供するためには、そのアプリケーションモジュールは、
高信頼度であり、かつ、アベイラブル(利用可能)であ
るという両方の要件が必要とされる。許容できる性能を
提供するためには、あるアプリケーションモジュールの
故障、あるいはそのアプリケーションモジュールをラン
しているホストコンピュータ全体の故障を検出し、検出
された故障から速やかに回復するためのスキームが必要
とされる。良く知られている方法として、網内の他の複
数のホストコンピュータの上にアプリケーションモジュ
ールを複製(リプリケーション)しておく方法がアプリ
ケーションモジュールの信頼度とアベイラビリィティの
両方を向上させるために用いられている。
【0004】当分野においては、アプリケーションモジ
ュールのリプリカ(複製)、すなわち、バックアップコ
ピーを形成するため、あるいは、バックアップコピーの
備えの状態(state of preparedness) を定義するため
に用いることができる故障回復プロセスを動作および構
成するための3つの戦略が知られている。“コールドバ
ックアップ(cold backup )”スタイルと呼ばれる第一
の戦略においては、あるアプリケーションモジュールの
一次コピーのみがあるホストコンピュータの上でランし
ており、他の複数のバックアップコピーは、網内の他の
複数のホストコンピュータの上でアイドルな状態に維持
される。このアプリケーションモジュールの一次コピー
の故障が検出されたとき、このアプリケーションモジュ
ールの一次コピーが同一のホストコンピュータの上で再
開されるか、あるいはそのアプリケーションモジュール
の他の複数のバックアップコピーの一つが、他の複数の
ホストコンピュータの一つの上で始動され、そのバック
アップコピーが新たな一次コピーとなる。チェックポイ
ンティング技法を用いて一次アプリケーションモジュー
ルの実行状態の“スナップショット(snapshots)”が
定期的に撮られ、この状態が安定な記憶媒体の中に格納
される。そして、一次アプリケーションモジュールの故
障が検出されると、故障した一次アプリケーションモジ
ュールの最後に格納された状態のチェックポイントデー
タが、バックアップアプリケーションモジュールに供給
され、バックアップアプリケーションモジュールは一次
アプリケーションモジュールの仕事を引き継ぎ、処理
を、故障した一次アプリケーションモジュールの最後に
格納された状態から継続する。
【0005】第二の戦略は、“ウォームバックアップ
(warm backup)”スタイルとして知られている。コー
ルドバックアップスタイルの場合は、上述のように、あ
るアプリケーションモジュールのバックアップコピーが
一次アプリケーションモジュールがランしているとき同
時にランされることはないが、対照的に、ウォームバッ
クアップスタイルの場合は、一つあるいは複数のバック
アップアプリケーションモジュールが、一次アプリケー
ションモジュールと同時にランされる。ただし、これら
バックアップアプリケーションモジュールは、クライア
ントのリクエストを受信し、これに応答することは可能
ではなく、単に、一次アプリケーションモジュールから
の状態更新データを定期的に受信するのみである。いっ
たん一次アプリケーションモジュールの故障が検出され
ると、これら複数のバックアップアプリケーションモジ
ュールの一つが直ちに起動され、一次アプリケーション
モジュールの役割を引き継ぐ。ウォームバックアップス
タイルの場合は、初期化あるいは再開は必要とされず、
このため、故障した一次アプリケーションモジュールの
処理機能を引き継ぐために要求される時間はコールドバ
ックアップと比較して短くなる。
【0006】第三の戦略は、“ホットバックアップ(ho
t backup )”スタイルとして知られている。ホットバ
ックスタイルにおいては、あるアプリケーションモジュ
ールの2個あるいはそれ以上のコピーが同時にランされ
る(アクティブとなる)。ウォームバックアップの場合
と異なり、ランしている各コピーは、クライアントのリ
クエストを処理することができ、処理の状態は複数のコ
ピーの間で同期される。いったんこれら複数のランして
いるアプリケーションモジュールの一つの故障が検出さ
れると、他の複数のランしている任意のコピーが直ちに
故障したコピーの負荷を引き継ぎ、動作を継続すること
ができる。
【0007】ある任意の時間において、たった一つの一
次アプリケーションモジュールがランしているコールド
バックアップ戦略の場合とは対照的に、ウォームおよび
ホットバックアップ戦略は、両方とも、長所として、網
内でランしている特定のアプリケーションモジュールの
一つ以上のコピーが同時に故障した場合にも、そのタイ
プのアプリケーションモジュールの複数のコピーが網の
上で同時にランしているために、これに耐えることがで
きる。
【0008】これら3つのリプリケーション戦略は、お
のおの、異なるラン時間オーバヘッドおよび異なる回復
時間を持つ。網の上でランしているあるアプリケーショ
ンモジュールは、網内の同一のホストコンピュータの上
であるいは異なるホストコンピュータの上でランしてい
る別のアプリケーションモジュールとは、アベイラビリ
ィティ要求およびラン時間環境が異なるために、異なる
リプリケーション戦略を必要とする。分散型のアプリケ
ーションは、しばしば、異質なハードウエアおよびオペ
レーティングシステムプラットホームの上でランするた
めに、アプリケーションモジュールの信頼度およびアベ
イラビリィティを改善するための技法は、上述の全ての
可能なリプリケーションスキームを収容できることを要
求される。
【0009】本発明の共同発明者であるY.Huang
に、1998年5月5日付けで付与された合衆国特許第
5,748,882号には、耐故障コンピューティング
のために装置および方法が開示されているため、これに
関しても参照されたい。この特許によると、アプリケー
ションあるいはプロセスは、“ウォッチドッグ(watchd
og)”ダイモンに登録され、ウォッチドッグは、そのア
プリケーションあるいはプロセスを故障あるいはハング
アップ故障が発生しないか“見張る(watches)”。見
張られていたアプリケーションの故障あるいはハングア
ップ故障が検出されると、ウォッチドッグは、そのアプ
リケーションあるいはプロセスを再開する。網上にマル
チホスト分散システムが構築されている場合は、あるホ
ストコンピュータの所のウォッチドッグダイモンは、自
身のホストコンピュータの上の登録されたアプリケーシ
ョンあるいはプロセスばかりでなく、別のホストコンピ
ュータの上の複数のアプリケーションあるいはプロセス
も監視する。見張られていたホストコンピュータが故障
した場合、その故障したホストコンピュータを見張って
いたウォッチドッグダイモンは、見張られていた故障し
たノード(ホストコンピュータ)の上でランしていた登
録されたプロセスあるいはアプリケーションを、自身の
ノード(ホストコンピュータ)の上で再開する。単一ノ
ード(ホスト)、マルチノード(ホスト)いずれの実現
においても、故障したプロセスあるいはアプリケーショ
ンを再開するためのリプリケーション戦略としては、新
たなリプリカ(複製)プロセスあるいはアプリケーショ
ンが一次プロセスあるいはアプリケーションが故障した
とき初めて始動されるコールドバックアップスタイルが
用いられる。
【0010】
【発明が解決しようとする課題】従来の技術による耐故
障方法論では、短所として、複数の異なるリプリケーシ
ョン戦略、例えば、上述のコールド、ウォーム、および
ホットバックアップスタイルの中から、網内の一つある
いは複数のマシーンの上でランしている複数の異なるア
プリケーションの個々に最も適したスタイルを選択する
ことは考慮されてない。さらに、従来の技術において
は、網内でランしているアプリケーションの数を、ウォ
ームおよびホットバックアップリプリケーションスタイ
ルに対して、一定数に維持するための方法論は存在しな
い。
【0011】
【課題を解決するための手段】本発明によるホストコン
ピュータの上でランしているアプリケーションモジュー
ルの信頼度を向上させるための方法においては、最初
に、アプリケーションモジュールは、自身を、自身の故
障検出および回復プロセスに対して登録する。すると、
そのアプリケーションモジュールがその上でランしてい
るのと同一のホストコンピュータの上であるいはそのア
プリケーションモジュールのマシーンが接続されている
網に接続されている別のホストコンピュータの上でラン
しているリプリカマネージャダイモンプロセス(Replic
aMagager daemon process) が、そのアプリケーション
モジュールからその登録メッセージを受信する。この登
録メッセージは、登録したアプリケーションモジュール
と、それがその上でランしているホストマシーンを識別
することに加えて、その登録したアプリケーションモジ
ュールに対して用いられるべき特定のリプリケーション
戦略(コールド、ウォームあるいはホットバックアップ
スタイル)、およびリプリケーションの程度(複製の個
数)を指定する。リプリカマネージャは、登録されたリ
プリケーション戦略を用いて、そのアプリケーションモ
ジュールの各バックアップコピーの動作状態を設定し、
加えて、バックアップコピーの数を登録されたリプリケ
ーションの程度(複製の個数)に従って維持する。次
に、登録したアプリケーションモジュールと同一のホス
トコンピュータの上でランしているウォッチドッグダイ
モンプロセス(Watchdog daemon process)が、登録さ
れたアプリケーションモジュールを定期的に監視し、故
障を検出する。ウォッチドッグダイモンが監視されてい
るアプリケーションモジュールがクラッシュあるいはハ
ングアップしたことを検出すると、ウォッチドッグダイ
モンは、その故障をリプリカマネージャに報告し、リプ
リカマネージャは故障回復プロセスを遂行する。すなわ
ち、指定されるリプリケーションスタイルがウォームあ
るいはホットであり、故障したアプリケーションモジュ
ールが自身のホストコンピュータの上で再開できない場
合は、一次アプリケーションモジュールのランしている
複数のバックアップコピーの一つが、新たな一次アプリ
ケーションモジュールとして指定され、次に、そのアプ
リケーションモジュールのアイドルなコピーがその上に
常駐するホストコンピュータが、網を通じて、そのアイ
ドルなアプリケーションを実行するように指令され、こ
うして、指定されるリプリケーションの程度(複製の個
数)が維持され、そのアプリケーションモジュールが複
数の箇所で故障した場合に備えて保護される。リプリケ
ーションスタイルがコールドであり、故障したアプリケ
ーションが自身のホストコンピュータの上で再開できな
い場合は、そのアプリケーションモジュールのアイドル
なコピーがその上に常駐するホストコンピュータが、網
を通じて、そのアイドルなコピーを実行するように指令
される。あるホストコンピュータの故障あるいはあるホ
ストコンピュータの上でランしているウォッチドッグダ
イモンの故障を検出するためには、リプリカマネージャ
と同一のホストコンピュータの上でランするスーパーウ
ォッチドッグダイモンプロセス(SuperWatchdogdaemon
process)が各ホストコンピュータからの入力を検出す
る。スーパーウォッチドッグダイモンによって、ホスト
コンピュータの故障がそのホストコンピュータからの入
力の不在によって検出されると、リプリカマネージャに
アクセスすることで、そのホストコンピュータの上でラ
ンしていたアプリケーションモジュールが決定され、こ
れらアプリケーションモジュールが、個別に、リプリカ
マネージャ内に格納されている指定される方法に従って
故障保護される。
【0012】
【発明の実施の形態】図1には、複数のホストコンピュ
ータが接続されている網100が示される。網100
は、イーサネット、ATM網、あるいは他の任意のタイ
プのデータ網である得る。単に説明の目的のために、こ
こでは、網100には、6個のホストコンピュータH
1、H2、H3、H4、H5、H6が接続されており、
これらには、それぞれ、101、102、103、10
4、105、106なる参照符号が付けられている。各
ホストコンピュータは、そのメモリ内に常駐する複数の
異なるアプリケーションモジュールを持つ。図1におい
て、タイプA、B、Cとして示されるこれらアプリケー
ションモジュールは、おのおの、実行されており、これ
ら6個のホストコンピュータの少なくとも一つの上でラ
ンしている一次コピーを持つ。より詳細には、ここで説
明の実施例においては、タイプAのアプリケーションモ
ジュールの一次コピー、つまり、アプリケーションモジ
ュールA1 がホストコンピュータH1の上でランしてお
り、タイプBのアプリケーションモジュールの一次コピ
ー、つまり、アプリケーションモジュールB1がホスト
コンピュータH4の上でランしており、タイプCのアプ
リケーションモジュールの一次コピー、つまり、アプリ
ケーションモジュールC1 がホストコンピュータH3の
上でランしている。後に説明するように、各タイプのア
プリケーションモジュールの他のコピーが、他の複数の
ホストコンピュータの少なくとも一つのメモリ内に、後
に実行されることを待ってアイドルな状態で格納されて
いる。すなわち、複数のアプリケーションモジュールの
複数のバックアップコピーあるいは複数の第二の一次コ
ピーとしてランしており、必要なとき利用できる。
【0013】上述のように、あるホストコンピュータの
上でランしているあるアプリケーションモジュールは、
そのアプリケーションモジュールの1つあるいはそれ以
上のバックアップコピーによって故障保護される。つま
り、各アプリケーションモジュールは、3つ周知のリプ
リケーションスタイルの一つによって定義(指定)され
る備えの状態(state of preparedness) にて動作し、
各リプリケーションスタイルは、クラッシュあるいはハ
ングアップなどの故障を示したあるアプリケーションモ
ジュールに、あるいはそれ自体が故障したホストコンピ
ュータの上に常駐する複数の全てのアプリケーションモ
ジュールに、バックアップを提供するための固有の方法
を持つ。本発明によると、各タイプのアプリケーション
モジュールは、自身の処理要求に最も適した特定のリプ
リケーションスタイル(コールドバックアップ、ウォー
ムバックアップ、ホットバックアップ)にて故障保護さ
れる。さらに、本発明によると、各タイプのアプリケー
ションモジュールは、そのアプリケーションモジュール
に対して指定されるリプリケーションの程度(個数)
(degree of replication)に従って故障保護される。
つまり、あるタイプのアプリケーションモジュールが複
数箇所で故障するような状況を保護するために、そのア
プリケーションモジュールの(リプリケーションの程度
によって指定される)一定数のコピーがランしている状
態に維持される。
【0014】故障が検出されたとき、処理への影響を最
小限に押さえながらアイドルあるいはバックアップアプ
リケーションモジュールが故障した一次アプリケーショ
ンモジュールの機能を引き継ぐためには、バックアップ
あるいはアイドルアプリケーションモジュールに、それ
がアイドル状態から実行状態に移る際に、すなわち新た
な一次アプリケーションモジュールとして指定された際
に、故障したアプリケーションモジュールの最後の動作
状態を供給する必要がある。これを実現するために、網
100に接続されているチェックポイントサーバ(Chec
kpoint Server)110が、定期的に、網の上でランし
ている各故障保護されているアプリケーションモジュー
ルから、そのアプリケーションの最も新しい状態を受信
し、この状態をそのメモリに格納する。あるアプリケー
ションモジュールの故障が検出されたとき、その故障し
たアプリケーションモジュールの最後に格納された状態
がチェックポイントサーバ110のメモリから取り出さ
れ、新たな一次アプリケーションモジュールに供給さ
れ、処理が継続される。
【0015】本発明によると、あるアプリケーションモ
ジュールは、自身の故障検出及び回復のために自身を登
録することにより、高信頼化される。このために、より
具体的には、網内の複数のホストコンピュータの一つ
(図1においてはホストコンピュータH2)の上でラン
している中央リプリカマネージャダイモンプロセス(ce
ntralized ReplicaManager daemon process) 112
が、各故障保護されるアプリケーションモジュールから
登録リクエストを受信する。この登録リクエストは、特
定のアプリケーションモジュールに対して、リプリケー
ションのスタイル(つまり、ホット、ウォーム、および
コールド)、リプリケーションの程度(個数)、そのア
プリケーションモジュールがどのホストコンピュータに
常駐し、それらホストコンピュータのどこに実行可能な
プログラムを見つけることができるかのリスト、および
スイッチングスタイルを指定する情報を含む。ここで、
リプリケーションの程度(個数)は、あるアプリケーシ
ョンモジュールのコピーの総数を指定する。より詳細に
は、ホットあるいはウォームリプリケーションスタイル
に対しては、リプリケーションの程度は、網内にランし
ている状態で維持されるべきあるアプリケーションモジ
ュールのコピーの総数を指定し;コールドリプリケーシ
ョンスタイルに対しては、リプリケーションの程度は、
網内のそれからそのアプリケーションモジュールをラン
することができるホストコンピュータの数を指定する。
スイッチングスタイルは、あるアプリケーションモジュ
ールが、あるホストコンピュータから別のホストコンピ
ュータに、いつ引き渡されるべきかを決定する故障回復
戦略を指定する。これと関連して、あるアプリケーショ
ンモジュールの故障が検出されたとき、そのモジュール
の処理は、その故障が発生したのと同一のホストコンピ
ュータ上で再開されることも、アイドルなあるいはラン
しているバックアップコピーがその上に常駐する別のホ
ストコンピュータに引き渡されることもある。アプリケ
ーションモジュールをリプリカマネージャに登録する際
に、2つの故障回復戦略を指定することができる。OnOv
erThreshold(閾値を超えた場合にオン)として知られ
る第一の戦略においては、あるアプリケーションモジュ
ールの動作は、別のホストコンピュータに、ある与えら
れたホストコンピュータの上でそのアプリケーションモ
ジュールが故障した回数がある与えられた閾値を超えた
ときに初めて引き渡される。こうして、この戦略におい
ては、故障したアプリケーションモジュールは、そのア
プリケーションモジュールが故障した回数が閾値回数に
達するまで、自身のホストコンピュータ上で再開され、
故障した回数が閾値を超えると、故障したアプリケーシ
ョンモジュールの動作は、別のホストコンピュータに引
き渡される。OnEachFailure(各故障の度にオン)とし
て知られている第二の故障回復戦略においては、失敗が
発生すると直ちに失敗したアプリケーションモジュール
の動作は、別のホストコンピュータに引き渡される。
【0016】リプリカマネージャダイモンプロセス11
2は、そのメモリ内に、網内の全ての登録されたアプリ
ケーションモジュールに対するリプリケーション情報
を、整理統合して維持する。網内にランしている各タイ
プのアプリケーションモジュールに対して、リプリカマ
ネージャは、あるランしているアプリケーションモジュ
ールを、あるいは複数の異なるアプリケーションモジュ
ールをランしているホストコンピュータ全体を回復する
ために必要な情報を格納する。図2には、テーブル20
0の形式にて、図1の6個のホストコンピュータの上で
ランしている3つのタイプのアプリケーションモジュー
ルに対して格納されるタイプの情報が示される。一例と
して、タイプAのアプリケーションモジュールが、エン
トリ201内に、バックアップスタイルはウォームであ
り、リプリケーションの程度(個数)は3であることを
示す情報とともに登録されている。こうして、タイプA
の場合は、1個の一次アプリケーションモジュールが、
常に、2個のバックアップコピーと共にランし、一次コ
ピーが故障したときは、これらバックアップコピーのい
ずれか一つが、一次アプリケーションモジュールとして
機能することを指定される。より詳細には、説明の実施
例では、図1および2からわかるように、一次コピーA
1 (ブロック202内に“P”にて示される)は、ホス
トコンピュータH1の上でランしており、バックアップ
コピーA2、A3(ブロック203、204内に“B”に
て示される)は、それぞれ、ホストコンピュータH2、
H3上でランしている。さらに、タイプAのアプリケー
ションモジュールの追加のコピーA4 が、ホストコンピ
ュータH4のメモリ内にアイドルな状態(ブロック20
5内に“I”にて示される)にて常駐する。ホストコン
ピュータ上のアプリケーションモジュールの各コピーの
パス名位置(pathname location) も示される。タイプ
Bのアプリケーションモジュールは、リプリカマネージ
ャによって、エントリ206内に、バックアップスタイ
ルはホットであり、リプリケーションの程度は2である
ことを示す情報とともに登録および格納されている。こ
うして、タイプBの場合は、アプリケーションモジュー
ルの2個の一次コピーがアクティブでランしている状態
に維持される。各処理クライアントは、互いに状態をリ
クエストし、互いに状態を同期する。テーブル200か
らわかるように、第一の一次コピーB1 は、ホストコン
ピュータH4の上に常駐し、第二の一次コピーB2 は、
ホストコンピュータH1の上に常駐する。さらに、アイ
ドルなコピーB3 がホストコンピュータH5の上に常駐
する。第三のタイプ、つまり、タイプCのアプリケーシ
ョンモジュールは、エントリ207に、バックアップス
タイルはコールドであり、リプリケーションの程度は2
であることを指定する情報とともに、登録されている。
そして、一次コピーC1 は、ホストコンピュータH3の
上でランしており、単一のアイドルのコピーがホストコ
ンピュータH6の上に常駐する。後に説明するように、
一次アプリケーションモジュールの故障が検出される
と、そのモジュールがOnEachFailure スイッチングスタ
イルを指定する場合は、直ちに、OnOverThreshold スイ
ッチングスタイルを指定する場合は、故障の回数が閾値
に達した後に、テーブル200内で、バックアップアプ
リケーションモジュールが、新たな一次アプリケーショ
ンモジュールとして指定され、故障したアプリケーショ
ンモジュールが、ウォームあるいはホットバックアップ
スタイルを指定する場合は、網内のリプリケーションの
レベル(複製モジュールの個数)を同一に維持するため
に、そのタイプのアプリケーションモジュールのアイド
ルなコピーが、そのホストコンピュータ上で実行され
る。同様に、アプリケーションモジュールのランしてい
るバックアップコピーが故障したことが検出されたとき
は、網内でランしているコピーの数を登録されているリ
プリケーションの程度によって指定されるのと同数に維
持するために、そのアプリケーションモジュールのアイ
ドルなコピーが、別のホストコンピュータの上で再開さ
れる。さらに、後に説明するように、ホストコンピュー
タの故障が検出されたときは、テーブル200にアクセ
スすることで、その故障したコンピュータ上で一次コピ
ーあるいはバックアップコピーとしてランしているアプ
リケーションモジュールの同一性が判定され、次に、故
障したホストコンピュータの上のこれら一次あるいはバ
ックアップコピーが、おのおのが個別に故障した場合と
同様なやり方で故障保護される。
【0017】図1に戻り、故障の検出は、各ホストコン
ピュータの上でランしているウォッチドッグダイモンプ
ロセス(WatchDog daemon process)によって実行され
る。これらの各ウォッチドッグダイモンは、いったんア
プリケーションモジュールがリプリカマネージャ112
に登録されると、登録されたランしているアプリケーシ
ョンモジュール、およびそのホストコンピュータ上に既
に登録されておりランしている全ての他のアプリケーシ
ョンモジュールを監視する。より詳細には、ウォッチド
ッグダイモン113−1は、ホストコンピュータH1の
上でランしている登録されたアプリケーションモジュー
ルA1 、B2 を監視し;ウォッチドッグダイモン113
−2は、ホストコンピュータH2の上でランしている登
録されたアプリケーションモジュールA2 を監視し;ウ
ォッチドッグダイモン113−3は、ホストコンピュー
タH3の上でランしている登録されたアプリケーション
モジュールA3 、C1 を監視し;ウォッチドッグダイモ
ン113−4は、ホストコンピュータH4の上でランし
ている登録されたアプリケーションモジュールB1を監
視する。ただし、ホストコンピュータH4のメモリ内の
アプリケーションモジュールA4 は(テーブル200に
示すように)アイドルであるために、ウォッチドッグダ
イモン113−4は、このモジュールA4 は、これが後
にアクティブにされるまでは監視しない。同様に、ホス
トコンピュータH5の上のアイドルなアプリケーション
モジュールB3 と、ホストコンピュータH6の上のアイ
ドルなアプリケーションモジュールC2 も、それらが実
行された後に初めて、それぞれ、ウォッチドッグダイモ
ン113−5、113−6によって監視される。
【0018】各ホストコンピュータの上でランしている
ウォッチドッグダイモン113は、2つの故障検出機
構、つまり、ポーリング機構と、ハートビート機構をサ
ポートする。ポーリング機構においては、ウォッチドッ
グダイモンは、定期的に、ピンメッセージ(ping messa
ge)を、それが監視しているアプリケーションモジュー
ルに送信する。このピンが失敗した場合、ウォッチドッ
グダイモンは、そのアプリケーションモジュールがクラ
ッシュしたものとみなす。加えて、ポーリング機構を用
いることで、アプリケーションモジュールの衛生チェッ
クを行なうこと、つまり、アプリケーションモジュール
内部の衛生チェッキング機構を喚起することもできる。
ハートビート機構においては、アプリケーションモジュ
ールは、能動的に、例えば、周期的に、あるいはリクエ
ストがあった場合に、ウォッチドッグダイモンにハート
ビートを送信する。ウォッチドッグダイモンが所定の時
間期間内にハートビートを受信しない場合は、そのアプ
リケーションモジュールは、ハングアップしたものとみ
なされる。ハートビート機構は、アプリケーションモジ
ュールあるいはホストコンピュータのクラッシュ故障
と、ハング故障の両方を検出することができるのに対し
て、ポーリング機構は、クラッシュ故障を検出できるの
みである。アプリケーションモジュールは、これら2つ
のアプローチの一つを、その信頼性に対する必要性に基
づいて選択する。
【0019】ウォッチドッグダイモンが、それが“見張
っている(watching)”アプリケーションモジュールの
クラッシュあるいはハング故障を検出すると、ウォッチ
ドッグは、故障をリプリカマネージャ112に、故障回
復動作のために報告する。上述のように、故障したアプ
リケーションモジュールが、OnEachFailure 故障回復戦
略を用いるものとして登録されている場合は、故障した
アプリケーションモジュールの動作は、直ちに、別のホ
ストに引き渡される。故障したアプリケーションモジュ
ールが一次コピーである場合は、バックアップアプリケ
ーションモジュールの一つが新たな一次アプリケーショ
ンモジュールとして指定され、次に、アイドルなアプリ
ケーションモジュールが、そのタイプのアプリケーショ
ンモジュールに対して登録されているのと同一のリプリ
ケーションの程度(複製の個数)を維持するために実行
される。催促により、アプリケーションモジュールがバ
ックアップ状態から一次状態に変更された時点で、テー
ブル200内のその指定、並びに、新たな実行されたア
イドルなアプリケーションモジュールの指定が修正され
る。故障したアプリケーションモジュールがバックアッ
プコピーである場合は、アイドルなコピーが実行され、
テーブル200内のその指定がその変更を反映するよう
に修正される。
【0020】図1に示すように、リプリカマネージャ1
12は中央化される。つまり、網内でランしているリプ
リカマネージャのコピーは一つしか存在しない。網内で
ランしている各アプリケーションモジュールのリプリケ
ーション情報は、テーブル200に示すように整理統合
され、リプリカマネージャ112のメモリ内に維持され
る。この情報が、故障などにより失われることを防止す
るために、このリプリカマネージャのテーブルが、チェ
ックポイントサーバ110を用いてチェックポインティ
ングされる。
【0021】各ホストコンピュータの上でランしている
ウォッチドッグダイモンの機能に加えて、中央スーパー
ウォッチドッグダイモンプロセス(centralized SuperW
atchDog daemon process)115−1が、ホストのクラ
ッシュ故障を検出し、これから回復するために用いられ
る。全てのウォッチドッグダイモンは、スーパーウォッ
チドッグダイモンに、ホストの故障を検出する目的で登
録される。故障の保護は、ハートビート検出戦略を用い
て実現される。より詳細には、各ウォッチドッグダイモ
ン113は、定期的に、ハートビートを、スーパーウォ
ッチドッグダイモン115−1に送信し、スーパーウォ
ッチドッグダイモン115−1が、任意のウォッチドッ
グ113からハートビートを受信しない場合は、スーパ
ーウォッチドッグダイモン115−1は、そのウォッチ
ドッグおよびそのウォッチドッグがその上でランしてい
るホストコンピュータが故障したものとみなす。する
と、スーパーウォッチドッグダイモン115−1は、故
障の回復を開始するために、リプリカマネージャ112
に、そのホストコンピュータが故障したことを通知す
る。ただし、中央スーパーウォッチドッグダイモン自身
も、単一故障点(一点の故障で他に重大な影響を及ぼす
故障点)となる危険があるために、これ自身も複製(リ
プリケーション)され、これら複製(リプリカ)がウォ
ームリプリケーションスタイルにて維持される。図1に
おいては、スーパーウォッチドッグ115−1のスーパ
ーウォッチドッグバックアップコピー115−2、11
5−3が、それぞれ、ホストコンピュータH5、H6に
常駐するように示される。これら3個のスーパーウォッ
チドッグダイモンは論理リング構造を形成し、各スーパ
ーウォッチドッグダイモンは、定期的に、ハートビート
を、隣のスーパーウォッチドッグに送信する。こうし
て、図1においては、一次スーパーウォッチドッグ11
5−1は、定期的に、ハートビートをスーパーウォッチ
ドッグ115−2に送信し、スーパーウォッチドッグ1
15−2は、定期的に、ハートビートをスーパーウォッ
チドッグ115−3に送信し、スーパーウォッチドッグ
115−3は、定期的に、ハートビートをスーパーウォ
ッチドッグ115−1に送り返す。あるスーパーウォッ
チドッグがこのリング上の隣接するスーパーウォッチド
ッグからハートビートを受信するのに失敗した場合、そ
のスーパーウォッチドッグに故障が発生したものとみな
される。故障したスーパーウォッチドッグに対する故障
回復手続きについては、後に説明する。
【0022】以下では、クラッシュあるいはハングした
アプリケーションモジュールの回復について説明するた
めに、一例として、リプリカマネージャ112に登録さ
れており、リプリケーションスタイルとしてウォーム、
リプリケーションの程度として3、スイッチングスタイ
ルとしてOnEachFailure を指定するアプリケーションモ
ジュールAとの関連で説明を行なう。最初、アプリケー
ションモジュールA1は、ホストコンピュータH1の上
でランしており、バックアップA2 、A3 が、それぞ
れ、ホストコンピュータH2、H3の上でランしてい
る。アプリケーションモジュールA1 は、そのローカル
ウォッチドッグ113−1に登録されており、検出スタ
イルとしてポーリングを指定する。このため、ウォッチ
ドッグ113−1は、定期的に、アプリケーションモジ
ュールA1 をポーリングする。ある時点で、ホストコン
ピュータH1の上のアプリケーションモジュールA1
が、クラッシュしたものと想定すると、この故障がウォ
ッチドッグ113−1によって検出される。すると、ウ
ォッチドッグ113−1は、この故障をリプリカマネー
ジャ112に報告する。すると、リプリカマネージャ1
12は、その内部テーブル200を検索することで、タ
イプAの一次アプリケーションモジュールが故障したこ
と、および、バックアップアプリケーションがホストコ
ンピュータH2とH3の上でランしていることを知る。
次に、リプリカマネージャ112は、これらバックアッ
プの一つ(例えば、A2 )に対して、一次状態となるよ
うに催促した後、テーブル200内のA2 の状態を、バ
ックアップ状態からから一次状態に変更する。リプリカ
マネージャ112は、次に、アイドルなコピーA4 がホ
ストコンピュータA4 の上の/home/chung/A.exe なるパ
ス名位置の所に常駐することを知り、その新たなバック
アップコピーを、ホストコンピュータH4の上のウォッ
チドッグ113−4に対して、そのコピーを実行するよ
うに通知することで、始動させる。こうして、ホストコ
ンピュータH1の上のアプリケーションモジュールA1
の故障が検出され、その故障から回復された後に、網内
でランしているアプリケーションモジュールAのコピー
の総数は3個に維持され、結果として、網内でランして
いるアプリケーションモジュールの数が登録されたリプ
リケーションの程度(複製の個数)と同一の3個に維持
される。アプリケーションモジュールがハングしたとき
も、この場合は、故障検出のための手段としてポーリン
グの代わりにハートビートが用いられる点を除いて、故
障の検出およびこれからの回復は全く同様に遂行され
る。
【0023】各ホストコンピュータの上でランしている
ウォッチドッグは、網内の一次スーパーウォッチドッグ
にハートビートを送信する。より詳細には、ウォッチド
ッグ113−1〜113−6は、ハートビートをスーパ
ーウォッチドッグ115−1に送信する。ホストにクラ
ッシュが発生すると、その上でランしているウォッチド
ッグがクラッシュし、スーパーウォッチドッグ115−
1は、そのウォッチドッグからハートビートを受信する
ことに失敗する。例えば、ホストH1がクラッシュする
と、スーパーウォッチドッグ115−1は、ウォッチド
ッグ113−1からハートビートを受信しなくなる。す
ると、スーパーウォッチドッグ115−1は、ホストコ
ンピュータH1が動作状態にないことを宣言し、その故
障を、リプリカマネージャ112に報告する。すると、
リプリカマネージャ112は、テーブル200にアクセ
スし、ホストコンピュータH1の上ではアプリケーショ
ンモジュールA1 とB2 がランしていたことを知る。ア
プリケーションモジュールA1 の回復は上述のように行
なわれる。テーブルには、アプリケーションモジュール
2 が、一次コピーであることが示される。このため、
ホストコンピュータH5の上に駐在するアイドルなコピ
ーB3 が実行され、これによって、網内でタイプBのア
プリケーションモジュールの2つの一次コピーがランす
ることが維持される。ホストコンピュータの上でランし
ているウォッチドッグダイモンの故障も、ホストの故障
の場合と同様に扱われる。
【0024】その上でスーパーウォッチドッグダイモン
がランしているホストコンピュータがクラッシュした場
合は、論理リングの上で次のホストコンピュータの上に
常駐するスーパーウォッチドッグがハートビートを受信
することに失敗する。より詳細には、ホストコンピュー
タH6が故障した場合、あるいはホストコンピュータH
6上のスーパーウォッチドッグ113−5がクラッシュ
した場合、ホストコンピュータH2上のスーパーウォッ
チドッグ115−1は、スーパーウォッチドッグ115
−3からハートビートを受信することに失敗する。する
と、スーパーウォッチドッグ115−1は、スーパーウ
ォッチドッグ115−3が動作状態にないことを宣言
し、動作状態にないスーパーウォッチドッグ115−3
が一次スーパーウォッチドッグであったかチェックす
る。ここでは、スーパーウォッチドッグ115−3はバ
ックアップであるために、スーパーウォッチドッグ11
5−1は、スーパーウォッチドッグ115−3に代わっ
てどのような動作を遂行することも必要とされない。次
に、スーパーウォッチドッグ115−2が、ハートビー
トをホストコンピュータH6の上のスーパーウォッチド
ッグ115−3に送信することを試みたとき、例外(ex
ception)を受信する。例外の取り扱いの一部分とし
て、スーパーウォッチドッグ115−2は、ホストH1
の上に常駐するスーパーウォッチドッグ115−1に対
するハンドルを決定し、自身をこれに登録し、ハートビ
ートをこれに送信することを開始する。
【0025】ホストコンピュータH2が故障した場合、
あるいはスーパーウォッチドッグ115−1がクラッシ
ュした場合は、ホストコンピュータH5の上のスーパー
ウォッチドッグ115−2がこの故障を検出し、一次ス
ーパーウォッチドッグが故障したことを知る。すると、
バックアップスーパーウォッチドッグ115−2は、一
次スーパーウォッチドッグの役割を引き継ぎ、ホストコ
ンピュータH5の上のリプリカマネージャダイモンを始
動する。ホストコンピュータH1からH6の上のウォッ
チドッグ113−1〜113−6は、それらが、ホスト
コンピュータH2の上の(以前一次スーパーウォッチド
ッグであった)スーパーウォッチドッグ115−1にハ
ートビートを送信しようと試みたとき、例外を受信す
る。この例外ハンドリングルーチンの一部分として、各
ウォッチドッグダイモンは、新たな一次スーパーウォッ
チドッグを見つけ、リプリカマネージャ112は、自身
を、新たな一次スーパーウォッチドッグ115−2に登
録し、これに、定期的にハートビートを送信することを
開始する。この網内にはリプリカマネージャダイモンの
コピーは一つしかランしてないために、リプリカマネー
ジャの状態は、チェックポイントサーバ110のテーブ
ル200内に格納され、ここに、常に維持される。こう
して、リプリカマネージャの機能が新たな一次スーパー
ウォッチドッグが常駐するホストコンピュータH5に引
き渡された場合、ホストコンピュータH5上で始動され
たリプリカマネージャは、自身の状態をチェックポイン
トサーバ110からロードし、自身の内部テーブルを、
格納されていた状態にて再初期化する。同様に、リプリ
カマネージャ112が故障した場合は、この故障がスー
パーウォッチドッグ115−1によってハートビートの
不在を通じて検出され、スーパーウォッチドッグ115
−1は、同じホストコンピュータH2の上のリプリカマ
ネージャ112を、その状態をチェックポイントサーバ
110からロードし、その内部テーブル200を格納さ
れていた状態にて再初期化することで再開する。
【0026】上述の実施例は、もっぱら、本発明の原理
を解説するためのものであり、当業者においては、本発
明の精神および範囲から逸脱することなく、他の実施例
も考えられるものである。
【図面の簡単な説明】
【図1】コンピュータ網のブロック図であり、本発明に
よる故障保護されたアプリケーションモジュールをラン
する複数のホストコンピュータを示す図である。
【図2】図1の網内のホストコンピュータの上でランす
るリプリカマネージャダイモン内に格納されたテーブル
を示す。このテーブルは、各タイプのアプリケーション
モジュールと対応させて、本発明による故障保護を遂行
するために用いられる情報を格納する。
【符号の説明】
100 コンピュータ網 H1〜H6 ホストコンピュータ 110 チェックポイントサーバ 112 中央リプリカマネージャダイモンプロセス 113 ウォッチドッグダイモン 115 中央スーパーウォッチドッグダイモンプロセス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 エンナン ファン アメリカ合衆国 08807 ニュージャーシ ィ,ブリッジウォーター,リンバーガー ドライヴ 33 (72)発明者 デロン リアン 台湾 11529,インステチュート オブ インフォーメーション サイエンス アカ デミア シニカ (72)発明者 チア−イエン シ アメリカ合衆国 07974 ニュージャーシ ィ,マレイ ヒル,ジョンストン ドライ ヴ 30 (72)発明者 シャリニ ヤニク アメリカ合衆国 07076 ニュージャーシ ィ,スコッチ プレインズ,カントリー クラブ レーン 222

Claims (29)

    【特許請求の範囲】
  1. 【請求項1】 耐故障コンピューティングのためのコン
    ピュータシステムであって、このシステムが:網の上に
    相互接続されている複数のホストコンピュータ;前記ホ
    ストコンピュータの中の第一のホストコンピュータの上
    でランしているあるアプリケーションモジュールの第一
    のコピー;前記ホストコンピュータの中の第二のホスト
    コンピュータの上で動作する前記アプリケーションモジ
    ュールの第二のコピー;および前記複数のホストコンピ
    ュータの中の一つのホストコンピュータの上でランして
    いるマネージャダイモンプロセスを含み、このマネージ
    ャダイモンプロセスが前記アプリケーションモジュール
    の前記第一のコピーが故障した指標を受信し、前記アプ
    リケーションモジュールの前記第二のコピーを用いて故
    障回復を始動し;このシステムがさらに前記マネージャ
    ダイモンプロセスに登録メッセージを供給するための手
    段を含み、この登録メッセージが、前記アプリケーショ
    ンモジュールと、前記マネージャダイモンプロセスによ
    って前記アプリケーションモジュールに対して維持され
    るべきリプリケーションのスタイルを複数の異なるリプ
    リケーションスタイルの中から指定し;前記第二のコピ
    ーが前記アプリケーションモジュールの前記第一のコピ
    ーが故障した際に、故障保護のために、前記登録された
    リプリケーションスタイルに従って動作状態に維持され
    ることを特徴とする耐故障コンピューティングのために
    コンピュータシステム。
  2. 【請求項2】 前記異なるリプリケーションスタイル
    が、前記アプリケーションモジュールの前記第二のコピ
    ーが前記第二のホストコンピュータの上で、前記第一の
    ホストコンピュータの上でランしている前記アプリケー
    ションモジュールの前記第一のコピーと同時にランする
    ことが可能か否か、および前記第二のコピーが同時にラ
    ンすることが可能である場合は、前記第二のコピーがク
    ライアントのリクエストを受信し、それに応答すること
    が可能か否かを示すことを特徴とする請求項1のコンピ
    ュータシステム。
  3. 【請求項3】 前記異なるリプリケーションスタイル
    が、コールドバッアップ、ウォームバックアップ、ある
    いはホットバックアップであり、コールドバッアップス
    タイルである場合は、前記第二のコピーは前記アプリケ
    ーションモジュールの前記第一のコピーがランしている
    際はランせず;ウォームバックアップスタイルである場
    合は、前記第二のコピーは前記アプリケーションモジュ
    ールの前記第一のコピーと同時にランするが、クライア
    ントのリクエストを受信し、これに応答することはでき
    ず;ホットバックアップスタイルである場合は、前記第
    二のコピーは前記アプリケーションモジュールの前記第
    一のコピーと同時にランし、クライアントのリクエスト
    を受信し、これに応答することができることを特徴とす
    る請求項2のコンピュータシステム。
  4. 【請求項4】 前記第一のホストコンピュータの上でラ
    ンしている第一の故障検出ダイモンプロセスをさらに含
    み、この第一の故障検出ダイモンプロセスが前記アプリ
    ケーションモジュールの前記第一のコピーが継続してラ
    ンする能力を監視し、この第一の故障検出ダイモンプロ
    セスが、故障が検出されたとき、前記第一のコピーの故
    障を示すメッセージを前記マネージャダイモンプロセス
    に送信することを特徴とする請求項1のコンピュータシ
    ステム。
  5. 【請求項5】 前記網に接続されたチェックポイントサ
    ーバをさらに含み、このチェックポイントサーバが、前
    記アプリケーションモジュールの前記第一のコピーおよ
    び前記マネージャダイモンプロセスの状態を定期的に格
    納することを特徴とする請求項4のコンピュータシステ
    ム。
  6. 【請求項6】 前記アプリケーションモジュールの前記
    第一のコピーの故障が検出されたとき、前記第二のホス
    トコンピュータに、前記第二のコピーが前記第一のコピ
    ーの処理機能を引き継ぐことが通知され、前記第二のコ
    ピーが前記チェックポイントサーバから前記第一のコピ
    ーの最後に格納された状態を取り出すことを特徴とする
    請求項6のシステム。
  7. 【請求項7】 前記マネージャダイモンプロセスと同一
    のホストコンピュータの上でランする第二の故障検出ダ
    イモンプロセスをさらに含み、この第二の故障検出プロ
    セスが前記第一のホストコンピュータを故障が発生しな
    いか監視することを特徴とする請求項5のコンピュータ
    システム。
  8. 【請求項8】 前記第一のホストコンピュータの故障が
    検出されたとき、前記アプリケーションモジュールの前
    記第二のコピーに、前記第一のコピーの処理機能を引き
    継ぐことが通知され、前記第二のコピーが前記チェック
    ポイントサーバから前記アプリケーションモジュールの
    前記第一のコピーの最後に格納された状態を取り出すこ
    とを特徴とする請求項7のコンピュータシステム。
  9. 【請求項9】 前記第二の故障検出ダイモンプロセスが
    ランしているのとは異なる前記複数のホストコンピュー
    タのうちのもう一つのホストコンピュータの上でランし
    ている前記第二の故障検出ダイモンプロセスのバックア
    ップコピーをさらに含み、この前記第二の故障検出ダイ
    モンプロセスのバックアップコピーが前記第二のホスト
    コンピュータを故障が発生しないか監視することを特徴
    とする請求項7のコンピュータシステム。
  10. 【請求項10】 前記第二のホストコンピュータの故障
    が検出されたとき、前記第二の故障検出ダイモンプロセ
    スの前記バックアップコピーが前記第二の故障検出ダイ
    モンプロセスの処理機能を引き継ぎ、前記マネージャダ
    イモンプロセスのコピーが前記ホストコンピュータの中
    の前記同一のもう一つのホストコンピュータの上でラン
    することを始動し、前記マネージャダイモンプロセスの
    前記コピーは、前記チェックポイントサーバから、前記
    マネージャダイモンプロセスのコピーが前記ホストコン
    ピュータの上でランしていたときに前記マネージャダイ
    モンプロセスの格納された状態を取り出すことを特徴と
    する請求項9のコンピュータシステム。
  11. 【請求項11】 前記アプリケーションモジュールに対
    する登録メッセージが、リプリケーションの程度をさら
    に指定し、この程度が、ホットあるいはウォームリプリ
    ケーションスタイルに対して、網内の前記複数のホスト
    コンピュータの上でランしている状態に維持されるべき
    前記アプリケーションモジュールのコピーの数を示すこ
    とを特徴とする請求項3のコンピュータシステム。
  12. 【請求項12】 前記アプリケーションモジュールに対
    する登録メッセージが、故障回復戦略をさらに指定し、
    前記故障回復戦略が、前記第二のコピーが前記アプリケ
    ーションモジュールの前記第一のコピーの処理機能を、
    前記第一のコピーの故障が前記第一の故障検出プロセス
    によって検出される毎に引き継ぐべきか、あるいは、前
    記第二のコピーが前記コピーの処理機能を、前記第一の
    ホストコンピュータの上の前記第一のコピーの故障の回
    数が所定の閾値に達した後に引き継ぐべきかを示すこと
    を特徴とする請求項6のコンピュータシステム。
  13. 【請求項13】 コンピュータシステム内のホストコン
    ピュータ上の故障管理コンピュータ装置であって、この
    装置が:マネージャダイモンプロセスを含み、このマネ
    ージャダイモンプロセスが、前記コンピュータシステム
    内の第一のホストコンピュータの上でランしているある
    アプリケーションモジュールの第一のコピーの故障の指
    標を受信し、第二のホストコンピュータの上の前記アプ
    リケーションモジュールの第二のコピーを用いて故障回
    復を始動し;この装置がさらに前記アプリケーションモ
    ジュールの前記第一のコピーから登録メッセージを受信
    するための手段を含み、この登録メッセージが、前記ア
    プリケーションモジュールと、前記アプリケーションモ
    ジュールに対して維持されるべきリプリケーションのス
    タイルを複数の異なるリプリケーションスタイルの中か
    ら指定し;前記アプリケーションモジュールの前記第一
    のコピーが故障した際に、前記第二のコピーが、故障保
    護のために、前記登録されたリプリケーションスタイル
    に従って動作状態に維持されることを特徴とする故障管
    理コンピュータ装置。
  14. 【請求項14】 前記異なるリプリケーションスタイル
    が、コールドバッアップ、ウォームバックアップ、ある
    いはホットバックアップを指定することを特徴とする請
    求項13の装置。
  15. 【請求項15】 前記アプリケーションモジュールの前
    記第一のコピーが故障した指標を受信したとき、前記マ
    ネージャダイモンプロセスが前記第二のホストコンピュ
    ータに、前記第二のコピーが前記アプリケーションモジ
    ュールの前記第一のコピーの処理機能を引き継ぐことを
    通知することを特徴とする請求項13の装置。
  16. 【請求項16】 故障検出ダイモンプロセスをさらに含
    み、これが前記第一のホストコンピュータを故障が発生
    しないか監視することを特徴とする請求項13の装置。
  17. 【請求項17】 前記故障検出ダイモンプロセスが前記
    第一のホストコンピュータが故障したのを検出したと
    き、前記マネージャダイモンプロセスが前記第二のホス
    トコンピュータに、前記第二のコピーが前記アプリケー
    ションモジュールの前記第一のコピーの処理機能を引き
    継ぐことを通知することを特徴とする請求項16の装
    置。
  18. 【請求項18】 登録メッセージが、リプリケーション
    の程度をさらに指定し、この程度が、ホットあるいはウ
    ォームバックアップリプリケーションスタイルに対し
    て、前記コンピュータシステム内でランしている状態に
    維持されるべき前記アプリケーションモジュールのコピ
    ーの数を示すことを特徴とする請求項14の装置。
  19. 【請求項19】 コンピュータシステム内で使用するた
    めの耐故障コンピューティング装置であって、この装置
    が:前記装置の上でランしている故障検出ダイモンプロ
    セスを含み、この故障検出ダイモンプロセスが、あるア
    プリケーションモジュールの第一のコピーがこの装置の
    上で継続してランする能力を監視し、この装置がさらに
    登録メッセージをマネージャダイモンプロセスに送信す
    るための手段を含み、この登録メッセージが、前記アプ
    リケーションモジュールと、前記マネージャダイモンプ
    ロセスによって前記アプリケーションモジュールに対し
    て維持されるべきリプリケーションのスタイルを複数の
    異なるリプリケーションスタイルの中から、このコンピ
    ュータシステム内のもう一つのコンピュータ装置の上で
    動作する前記アプリケーションモジュールの第二のコピ
    ーとの関連で指定し;前記第二のコピーが、前記アプリ
    ケーションモジュールの前記第一のコピーが故障した際
    に、故障保護のために、前記登録されたリプリケーショ
    ンスタイルに従って動作状態に維持されることを特徴と
    する耐故障コンピューティング装置。
  20. 【請求項20】 前記異なるリプリケーションスタイル
    が、コールドバッアップ、ウォームバックアップ、ある
    いはホットバックアップであることを特徴とする請求項
    19の装置。
  21. 【請求項21】 前記コンピュータシステム内の前記ア
    プリケーションモジュールの前記第二のコピーが、前記
    アプリケーションモジュールの前記第一のコピーの故障
    が検出されたとき、前記アプリケーションモジュールの
    前記第一のコピーの処理機能を引き継ぐことを特徴とす
    る請求項19の装置。
  22. 【請求項22】 登録メッセージが、リプリケーション
    の程度をさらに指定し、この程度が、ホットあるいはウ
    ォームバックアップリプリケーションスタイルに対し
    て、前記コンピュータシステム内でランしている状態に
    維持されるべき前記アプリケーションモジュールのコピ
    ーの数を示すことを特徴とする請求項19の装置。
  23. 【請求項23】 耐故障コンピュータシステムを動作さ
    せる方法であって、このシステムが、網の上で相互接続
    されている複数のホストコンピュータ、前記複数のホス
    トコンピュータの中の第一のホストコンピュータの上で
    ランしているアプリケーションモジュールの第一のコピ
    ー、および前記複数のホストコンピュータの中の第二の
    ホストコンピュータの上の前記第一のアプリケーション
    モジュールの第二のコピーを含み、この方法が:前記ア
    プリケーションモジュールと、前記アプリケーションモ
    ジュールに対して維持されるべきリプリケーションのス
    タイルを複数の異なるリプリケーションスタイルの中か
    ら指定する登録メッセージを受信するステップ;および
    前記アプリケーションモジュールの前記第一のコピーが
    故障したとき、前記第二のコピーを、故障保護のため
    に、前記登録されたリプリケーションスタイルに従って
    動作状態に維持するステップを含むことを特徴とする方
    法。
  24. 【請求項24】 前記アプリケーションモジュールの前
    記第一のコピーが故障した指標を受信するステップ;お
    よび前記故障した第一のコピーに対する故障回復を、前
    記第二のホストコンピュータの上の前記第二のコピーを
    用いて始動するステップをさらに含むことを特徴とする
    請求項23の方法。
  25. 【請求項25】 前記異なるリプリケーションスタイル
    が、前記第二のコピーが前記第一のホストコンピュータ
    の上でランしている前記アプリケーションモジュールの
    前記第一のコピーと同時にランすることが可能か否か、
    および前記第二のコピーが同時にランすることが可能で
    ある場合は、前記第二のコピーがクライアントのリクエ
    ストを受信し、それに応答することが可能か否かを指定
    することを特徴とする請求項23の方法。
  26. 【請求項26】 前記異なるリプリケーションスタイル
    が、コールドバッアップ、ウォームバックアップ、ある
    いはホットバックアップであることを特徴とする請求項
    23の方法。
  27. 【請求項27】 前記第一のホストコンピュータを故障
    が発生しないか監視するステップ;および前記第一のホ
    ストコンピュータの故障が検出されたとき、前記アプリ
    ケーションモジュールの前記第一のコピーに対する故障
    回復を前記第二のホストコンピュータの上の前記第二の
    コピーを用いて始動するステップをさらに含むことを特
    徴とする請求項23の方法。
  28. 【請求項28】 前記第一のアプリケーションモジュー
    ルに対する登録メッセージが、リプリケーションの程度
    をさらに指定し、この程度が、ホットあるいはウォーム
    バックアップリプリケーションスタイルに対して、前記
    複数のホストコンピュータの上でランしている状態に維
    持されるべき前記アプリケーションモジュールのコピー
    の数を示すことを特徴とする請求項26の方法。
  29. 【請求項29】 前記アプリケーションモジュールに対
    する登録メッセージが、故障回復戦略をさらに指定し、
    この故障回復戦略が、前記第二のコピーが前記アプリケ
    ーションモジュールの前記第一のコピーの処理機能を前
    記第一のコピーの故障が検出される毎に引き継ぐかどう
    か、あるいは、前記第二のコピーが前記第一のアプリケ
    ーションモジュールの処理機能を前記アプリケーション
    モジュールの前記第一のコピーの故障の回数が所定の閾
    値に達した後にはじめて引き継ぐかどうかを示すことを
    特徴とする請求項24の方法。
JP11204121A 1998-07-20 1999-07-19 網内の分散アプリケ―ションの故障を検出し、故障を指定のリプリケ―ションスタイルに従って回復するための方法および装置 Pending JP2000105754A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/119139 1998-07-20
US09/119,139 US6266781B1 (en) 1998-07-20 1998-07-20 Method and apparatus for providing failure detection and recovery with predetermined replication style for distributed applications in a network

Publications (1)

Publication Number Publication Date
JP2000105754A true JP2000105754A (ja) 2000-04-11

Family

ID=22382753

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11204121A Pending JP2000105754A (ja) 1998-07-20 1999-07-19 網内の分散アプリケ―ションの故障を検出し、故障を指定のリプリケ―ションスタイルに従って回復するための方法および装置

Country Status (7)

Country Link
US (1) US6266781B1 (ja)
EP (1) EP0974903B1 (ja)
JP (1) JP2000105754A (ja)
KR (1) KR20000011835A (ja)
AU (1) AU752844B2 (ja)
CA (1) CA2273523C (ja)
DE (1) DE69907818T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004519024A (ja) * 2000-09-08 2004-06-24 ゴー アヘッド ソフトウェア インコーポレイテッド 多数のノードを含むクラスタを管理するためのシステム及び方法
JP2005503595A (ja) * 2001-01-26 2005-02-03 ネットボッツ インコーポレイテッド 向上されたコラボレーション、スケーラビリティ、およびリライアビリティを提供するために接続され得るネットワーク装置のセットのための方法およびシステム
US7017076B2 (en) 2003-07-29 2006-03-21 Hitachi, Ltd. Apparatus and storage system for controlling acquisition of snapshot

Families Citing this family (113)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6477663B1 (en) 1998-04-09 2002-11-05 Compaq Computer Corporation Method and apparatus for providing process pair protection for complex applications
US6393583B1 (en) * 1998-10-29 2002-05-21 International Business Machines Corporation Method of performing checkpoint/restart of a parallel program
US6401216B1 (en) 1998-10-29 2002-06-04 International Business Machines Corporation System of performing checkpoint/restart of a parallel program
US6643690B2 (en) * 1998-12-29 2003-11-04 Citrix Systems, Inc. Apparatus and method for determining a program neighborhood for a client node in a client-server network
US6928469B1 (en) 1998-12-29 2005-08-09 Citrix Systems, Inc. Apparatus and method for determining a program neighborhood for a client node in a client-server network using markup language techniques
US6654801B2 (en) * 1999-01-04 2003-11-25 Cisco Technology, Inc. Remote system administration and seamless service integration of a data communication network management system
US6523130B1 (en) * 1999-03-11 2003-02-18 Microsoft Corporation Storage system having error detection and recovery
US6687847B1 (en) * 1999-04-21 2004-02-03 Cornell Research Foundation, Inc. Failure detector with consensus protocol
KR100324275B1 (ko) * 1999-07-14 2002-02-25 서평원 이중화된 프로세서의 이중화 상태 제어 방법
US6718486B1 (en) * 2000-01-26 2004-04-06 David E. Lovejoy Fault monitor for restarting failed instances of the fault monitor
US20020198996A1 (en) * 2000-03-16 2002-12-26 Padmanabhan Sreenivasan Flexible failover policies in high availability computing systems
US7627694B2 (en) * 2000-03-16 2009-12-01 Silicon Graphics, Inc. Maintaining process group membership for node clusters in high availability computing systems
US6742134B1 (en) * 2000-05-20 2004-05-25 Equipe Communications Corporation Maintaining a local backup for data plane processes
US20020026385A1 (en) * 2000-08-31 2002-02-28 Mccloskey John M. System and methods for generating an electronic purchase order for a part using a display of computer-aided design (CAD) drawing and related article and media
US20020073409A1 (en) * 2000-12-13 2002-06-13 Arne Lundback Telecommunications platform with processor cluster and method of operation thereof
DE10101754C2 (de) 2001-01-16 2003-02-20 Siemens Ag Verfahren zur automatischen Wiederherstellung von Daten in einer Datenbasis
KR100423701B1 (ko) * 2001-02-08 2004-03-18 주식회사 클래러스 가상적으로 통합된 분산파일그룹에 데이터를 백업하기위한 방법 및 시스템
US20060162639A1 (en) * 2001-03-23 2006-07-27 Costello James M Touch tunnel
US20020143914A1 (en) * 2001-03-29 2002-10-03 Cihula Joseph F. Network-aware policy deployment
US20020152425A1 (en) * 2001-04-12 2002-10-17 David Chaiken Distributed restart in a multiple processor system
US6957251B2 (en) * 2001-05-07 2005-10-18 Genworth Financial, Inc. System and method for providing network services using redundant resources
US7000100B2 (en) * 2001-05-31 2006-02-14 Hewlett-Packard Development Company, L.P. Application-level software watchdog timer
US6954884B2 (en) * 2001-06-01 2005-10-11 Lucent Technologies Inc. System and method for effecting recovery of a network
US20030037133A1 (en) * 2001-08-15 2003-02-20 Thomas Owens Method and system for implementing redundant servers
US7003775B2 (en) * 2001-08-17 2006-02-21 Hewlett-Packard Development Company, L.P. Hardware implementation of an application-level watchdog timer
US6766482B1 (en) 2001-10-31 2004-07-20 Extreme Networks Ethernet automatic protection switching
US7127512B2 (en) * 2002-02-19 2006-10-24 Qualcomm Inc. Method and apparatus for two-phase commit in data distribution to a web farm
US7392421B1 (en) * 2002-03-18 2008-06-24 Symantec Operating Corporation Framework for managing clustering and replication
US7689875B2 (en) * 2002-04-25 2010-03-30 Microsoft Corporation Watchdog timer using a high precision event timer
US7124320B1 (en) * 2002-08-06 2006-10-17 Novell, Inc. Cluster failover via distributed configuration repository
JP2004086721A (ja) * 2002-08-28 2004-03-18 Nec Corp データ複製システム、中継装置、データ送受信方法およびストレージ内のデータを複製するためのプログラム
US20040153700A1 (en) * 2003-01-02 2004-08-05 Nixon Mark J. Redundant application stations for process control systems
US7178052B2 (en) * 2003-09-18 2007-02-13 Cisco Technology, Inc. High availability virtual switch
WO2005036418A1 (en) * 2003-10-13 2005-04-21 Illuminator (Israel) Ltd. Apparatus and method for information recovery quality assessment in a computer system
US9213609B2 (en) * 2003-12-16 2015-12-15 Hewlett-Packard Development Company, L.P. Persistent memory device for backup process checkpoint states
US7890798B1 (en) * 2004-03-22 2011-02-15 Hewlett-Packard Development Company, L.P. Computer cluster with second-node instance of application having access to state snapshot of first-node instance of application
US20050216552A1 (en) * 2004-03-24 2005-09-29 Samuel Fineberg Communication-link-attached persistent memory system
US7680904B2 (en) * 2004-08-06 2010-03-16 Logic Controls, Inc. Diagnostic method and apparatus for detecting and locating computer network discontinuities
CN100440153C (zh) * 2004-09-17 2008-12-03 松下电器产业株式会社 处理器
DE102004050350B4 (de) * 2004-10-15 2006-11-23 Siemens Ag Verfahren und Vorrichtung zur Redundanzkontrolle von elektrischen Einrichtungen
US7664080B2 (en) * 2004-10-27 2010-02-16 Honeywell International Inc. Discreet event operators for event management in a wireless sensor network
US7590098B2 (en) * 2004-10-27 2009-09-15 Honeywell International Inc. Publish/subscribe model in a wireless sensor network
US8027280B2 (en) * 2004-10-27 2011-09-27 Honeywell International Inc. Layered architecture for data management in a wireless sensor network
US7630336B2 (en) * 2004-10-27 2009-12-08 Honeywell International Inc. Event-based formalism for data management in a wireless sensor network
US7561544B2 (en) * 2004-10-27 2009-07-14 Honeywell International Inc. Machine architecture for event management in a wireless sensor network
US20060106761A1 (en) * 2004-10-29 2006-05-18 Parthasarathy Sarangam Remote detection of a fault condition of a management application using a networked device
US7715308B2 (en) * 2004-12-09 2010-05-11 Honeywell International Inc. Fault tolerance in a wireless network
US7478278B2 (en) * 2005-04-14 2009-01-13 International Business Machines Corporation Template based parallel checkpointing in a massively parallel computer system
US7908606B2 (en) * 2005-05-20 2011-03-15 Unisys Corporation Usage metering system
US8332826B2 (en) 2005-05-26 2012-12-11 United Parcel Service Of America, Inc. Software process monitor
US7823021B2 (en) 2005-05-26 2010-10-26 United Parcel Service Of America, Inc. Software process monitor
US7558986B2 (en) * 2005-05-26 2009-07-07 United Parcel Service Of America, Inc. Software process monitor
KR100589437B1 (ko) * 2005-06-22 2006-06-14 엔에이치엔(주) 동적 서버 초기화 방법 및 시스템
US8281184B1 (en) 2010-08-06 2012-10-02 Open Invention Network Llc System and method for reliable non-blocking messaging for multi-process application replication
US9141481B1 (en) 2010-08-06 2015-09-22 Open Invention Network, Llc System and method for reliable non-blocking messaging for multi-process application replication
US8589953B1 (en) 2010-08-06 2013-11-19 Open Invention Network, Llc System and method for transparent consistent application-replication of multi-process multi-threaded applications
US8301700B1 (en) 2010-08-06 2012-10-30 Open Invention Network Llc System and method for event-driven live migration of multi-process applications
US9043640B1 (en) * 2005-08-26 2015-05-26 Open Invention Network, LLP System and method for event-driven live migration of multi-process applications
US8621275B1 (en) 2010-08-06 2013-12-31 Open Invention Network, Llc System and method for event-driven live migration of multi-process applications
US8584145B1 (en) 2010-08-06 2013-11-12 Open Invention Network, Llc System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications
US7849369B2 (en) * 2005-10-25 2010-12-07 Waratek Pty Ltd. Failure resistant multiple computer system and method
US7979460B2 (en) 2006-02-15 2011-07-12 Sony Computer Entainment America Inc. Systems and methods for server management
US8676959B2 (en) * 2006-03-27 2014-03-18 Sap Ag Integrated heartbeat monitoring and failover handling for high availability
WO2008040067A1 (en) * 2006-10-05 2008-04-10 Waratek Pty Limited Multiple computer with redundancy architecture
SE0950005L (sv) * 2006-11-10 2008-05-11 Densitech Ab Tillhandahållande säkerhet i förhållande till mobilterminaler
US7757117B2 (en) * 2007-04-17 2010-07-13 International Business Machines Corporation Method and apparatus for testing of enterprise systems
TW200915062A (en) * 2007-09-20 2009-04-01 Promos Technologies Inc Method for managing application programs by utilizing redundancy and load balance
US8447940B2 (en) 2008-05-02 2013-05-21 International Business Machines Corporation Backup copy enhancements to reduce primary version access
US8019732B2 (en) 2008-08-08 2011-09-13 Amazon Technologies, Inc. Managing access of multiple executing programs to non-local block data storage
US8626954B2 (en) * 2008-08-28 2014-01-07 Alcatel Lucent Application-aware M:N hot redundancy for DPI-based application engines
US8880473B1 (en) 2008-12-15 2014-11-04 Open Invention Network, Llc Method and system for providing storage checkpointing to a group of independent computer applications
KR20110052289A (ko) * 2009-11-12 2011-05-18 삼성전자주식회사 소프트웨어 구조에서 커먼모듈 운용 장치 및 방법
US9135127B1 (en) 2010-08-06 2015-09-15 Open Invention Network, Llc System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications
US9002946B2 (en) * 2010-08-25 2015-04-07 Autodesk, Inc. Dual modeling environment in which commands are executed concurrently and independently on both a light weight version of a proxy module on a client and a precise version of the proxy module on a server
US9240937B2 (en) 2011-03-31 2016-01-19 Microsoft Technology Licensing, Llc Fault detection and recovery as a service
US8621274B1 (en) * 2011-05-18 2013-12-31 Netapp Inc. Virtual machine fault tolerance
US9047182B2 (en) 2012-12-27 2015-06-02 Microsoft Technology Licensing, Llc Message service downtime
US10223156B2 (en) 2013-06-09 2019-03-05 Apple Inc. Initiating background updates based on user activity
US9110864B2 (en) * 2013-06-25 2015-08-18 International Business Machines Corporation Fault tolerance solution for stateful applications
US9201744B2 (en) * 2013-12-02 2015-12-01 Qbase, LLC Fault tolerant architecture for distributed computing systems
US9317565B2 (en) 2013-12-02 2016-04-19 Qbase, LLC Alerting system based on newly disambiguated features
US9424524B2 (en) 2013-12-02 2016-08-23 Qbase, LLC Extracting facts from unstructured text
US9223875B2 (en) 2013-12-02 2015-12-29 Qbase, LLC Real-time distributed in memory search architecture
WO2015084726A1 (en) 2013-12-02 2015-06-11 Qbase, LLC Event detection through text analysis template models
US9336280B2 (en) 2013-12-02 2016-05-10 Qbase, LLC Method for entity-driven alerts based on disambiguated features
US9659108B2 (en) 2013-12-02 2017-05-23 Qbase, LLC Pluggable architecture for embedding analytics in clustered in-memory databases
KR20160124743A (ko) 2013-12-02 2016-10-28 큐베이스 엘엘씨 클러스터링된 인-메모리 데이터베이스의 고안 및 구현
US9208204B2 (en) 2013-12-02 2015-12-08 Qbase, LLC Search suggestions using fuzzy-score matching and entity co-occurrence
CN106164890A (zh) 2013-12-02 2016-11-23 丘贝斯有限责任公司 用于消除非结构化文本中的特征的歧义的方法
US9424294B2 (en) 2013-12-02 2016-08-23 Qbase, LLC Method for facet searching and search suggestions
US9177262B2 (en) 2013-12-02 2015-11-03 Qbase, LLC Method of automated discovery of new topics
US9619571B2 (en) 2013-12-02 2017-04-11 Qbase, LLC Method for searching related entities through entity co-occurrence
US9922032B2 (en) 2013-12-02 2018-03-20 Qbase, LLC Featured co-occurrence knowledge base from a corpus of documents
US9230041B2 (en) 2013-12-02 2016-01-05 Qbase, LLC Search suggestions of related entities based on co-occurrence and/or fuzzy-score matching
US9355152B2 (en) 2013-12-02 2016-05-31 Qbase, LLC Non-exclusionary search within in-memory databases
US9223833B2 (en) 2013-12-02 2015-12-29 Qbase, LLC Method for in-loop human validation of disambiguated features
US9984427B2 (en) 2013-12-02 2018-05-29 Qbase, LLC Data ingestion module for event detection and increased situational awareness
US9544361B2 (en) 2013-12-02 2017-01-10 Qbase, LLC Event detection through text analysis using dynamic self evolving/learning module
US9542477B2 (en) 2013-12-02 2017-01-10 Qbase, LLC Method of automated discovery of topics relatedness
US9547701B2 (en) 2013-12-02 2017-01-17 Qbase, LLC Method of discovering and exploring feature knowledge
US9025892B1 (en) 2013-12-02 2015-05-05 Qbase, LLC Data record compression with progressive and/or selective decomposition
US9348573B2 (en) 2013-12-02 2016-05-24 Qbase, LLC Installation and fault handling in a distributed system utilizing supervisor and dependency manager nodes
US9361317B2 (en) 2014-03-04 2016-06-07 Qbase, LLC Method for entity enrichment of digital content to enable advanced search functionality in content management systems
WO2015147860A1 (en) * 2014-03-28 2015-10-01 Hewlett-Packard Development Company, L.P. Rescheduling a service on a node
US9652336B2 (en) 2015-03-13 2017-05-16 International Business Machines Corporation Resilient programming frameworks for handling failures in parallel programs
US10594835B2 (en) 2015-06-05 2020-03-17 Apple Inc. Efficient context monitoring
WO2018076169A1 (zh) 2016-10-25 2018-05-03 华为技术有限公司 终端设备开机失败的恢复方法和终端设备
TWI635722B (zh) * 2018-01-02 2018-09-11 中華電信股份有限公司 應用網路功能虛擬化叢集技術之備援系統及其方法
US10140184B1 (en) * 2018-03-14 2018-11-27 Capital One Services, Llc Node recovery in static distributed networks
EP3779699A1 (en) * 2019-08-16 2021-02-17 Aptiv Technologies Limited Method for checking program execution of a microcontroller, external device, system and non-transitory computer readable medium
CN114222972A (zh) * 2019-09-12 2022-03-22 惠普发展公司, 有限责任合伙企业 应用存在监控和重新安装
EP4063974A1 (en) * 2021-03-23 2022-09-28 ABB Schweiz AG Controlling an industrial process using virtualized instances of control software
US20230393890A1 (en) * 2022-06-03 2023-12-07 Snap Inc. Auto-recovery for ar wearable devices

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5271013A (en) * 1990-05-09 1993-12-14 Unisys Corporation Fault tolerant computer system
CA2106280C (en) 1992-09-30 2000-01-18 Yennun Huang Apparatus and methods for fault-tolerant computing employing a daemon monitoring process and fault-tolerant library to provide varying degrees of fault tolerance
US5408649A (en) * 1993-04-30 1995-04-18 Quotron Systems, Inc. Distributed data access system including a plurality of database access processors with one-for-N redundancy
US5572709A (en) * 1993-06-18 1996-11-05 Lucent Technologies Inc. Using dynamically-linked libraries to add side effects to operations
US5812748A (en) * 1993-06-23 1998-09-22 Vinca Corporation Method for improving recovery performance from hardware and software errors in a fault-tolerant computer system
US5978565A (en) * 1993-07-20 1999-11-02 Vinca Corporation Method for rapid recovery from a network file server failure including method for operating co-standby servers
US5440726A (en) * 1994-06-22 1995-08-08 At&T Corp. Progressive retry method and apparatus having reusable software modules for software failure recovery in multi-process message-passing applications
US5621885A (en) * 1995-06-07 1997-04-15 Tandem Computers, Incorporated System and method for providing a fault tolerant computer program runtime support environment
US5819020A (en) * 1995-10-16 1998-10-06 Network Specialists, Inc. Real time backup system
US5815649A (en) * 1995-10-20 1998-09-29 Stratus Computer, Inc. Distributed fault tolerant digital data storage subsystem for fault tolerant computer system
US5737514A (en) * 1995-11-29 1998-04-07 Texas Micro, Inc. Remote checkpoint memory system and protocol for fault-tolerant computer system
GB9601584D0 (en) * 1996-01-26 1996-03-27 Hewlett Packard Co Fault-tolerant processing method
GB9601585D0 (en) * 1996-01-26 1996-03-27 Hewlett Packard Co Fault-tolerant processing method
GB2311391A (en) * 1996-03-19 1997-09-24 Ibm Restart and recovery of OMG compliant transaction systems
US5822531A (en) * 1996-07-22 1998-10-13 International Business Machines Corporation Method and system for dynamically reconfiguring a cluster of computer systems
KR19980024086A (ko) * 1996-09-03 1998-07-06 니시무로 타이조 컴퓨터 시스템 및 화일 관리 방법
JPH10187638A (ja) * 1996-10-28 1998-07-21 Mitsubishi Electric Corp クラスタ制御システム
US5941999A (en) * 1997-03-31 1999-08-24 Sun Microsystems Method and system for achieving high availability in networked computer systems

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004519024A (ja) * 2000-09-08 2004-06-24 ゴー アヘッド ソフトウェア インコーポレイテッド 多数のノードを含むクラスタを管理するためのシステム及び方法
JP2005503595A (ja) * 2001-01-26 2005-02-03 ネットボッツ インコーポレイテッド 向上されたコラボレーション、スケーラビリティ、およびリライアビリティを提供するために接続され得るネットワーク装置のセットのための方法およびシステム
JP2009176301A (ja) * 2001-01-26 2009-08-06 Netbotz Inc 向上されたコラボレーション、スケーラビリティ、およびリライアビリティを提供するために接続され得るネットワーク装置のセットのための方法およびシステム
US7017076B2 (en) 2003-07-29 2006-03-21 Hitachi, Ltd. Apparatus and storage system for controlling acquisition of snapshot
US7331000B2 (en) 2003-07-29 2008-02-12 Hitachi, Ltd. Apparatus and storage system for controlling acquisition of snapshot
US7461293B2 (en) 2003-07-29 2008-12-02 Hitachi, Ltd. Apparatus and storage system for controlling acquisition of snapshot

Also Published As

Publication number Publication date
CA2273523C (en) 2003-03-18
KR20000011835A (ko) 2000-02-25
AU752844B2 (en) 2002-10-03
EP0974903B1 (en) 2003-05-14
CA2273523A1 (en) 2000-01-20
DE69907818T2 (de) 2004-03-04
AU4020299A (en) 2000-02-10
EP0974903A3 (en) 2001-06-13
DE69907818D1 (de) 2003-06-18
EP0974903A2 (en) 2000-01-26
US6266781B1 (en) 2001-07-24

Similar Documents

Publication Publication Date Title
JP2000105754A (ja) 網内の分散アプリケ―ションの故障を検出し、故障を指定のリプリケ―ションスタイルに従って回復するための方法および装置
JP2000105756A (ja) 網内の分散アプリケ―ションの故障を検出し、この故障を指定されるリプリケ―ションの程度に従って回復するための方法および装置
JP4345334B2 (ja) 耐障害計算機システム、プログラム並列実行方法およびプログラム
US7409395B2 (en) Method of improving the availability of a computer clustering system through the use of a network medium link state function
US8615578B2 (en) Using a standby data storage system to detect the health of a cluster of data storage servers
EP0167540B1 (en) Processing system tolerant of loss of access to secondary storage
US6134673A (en) Method for clustering software applications
KR100358663B1 (ko) 클러스터 노드 디스트레스 신호
US6701453B2 (en) System for clustering software applications
US20060259815A1 (en) Systems and methods for ensuring high availability
JP2007279890A (ja) バックアップシステム及びバックアップ方法
US8751878B1 (en) Automatic failover during online data migration
JP3887130B2 (ja) 高可用性計算機システム及び同システムにおけるデータバックアップ方法
US6629260B1 (en) Automatic reconnection of partner software processes in a fault-tolerant computer system
JP3325785B2 (ja) 計算機の故障検出・回復方式
US7526544B2 (en) Message tracking method, apparatus, and system
JPH06175788A (ja) バックアップ装置及びその方法
JPH1125062A (ja) 障害回復システム
JP2002244880A (ja) データ二重化バックアップ方法、システム及び情報処理装置、バックアップ処理プログラム、検出切替プログラム、バックアップ処理プログラムを記録した記録媒体並びに検出切替プログラムを記録した記録媒体
JPH08235134A (ja) マルチコンピュータシステムにおける計算機立ち上げ方法
JP2001195202A (ja) 二重化記憶装置および二重化記憶方法
JPH1166021A (ja) 分散型計算機システム
JPH0756872A (ja) 分散システムにおける処理要求実現方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040510