公称/冗長モードでプログラムを実行するシステムを設計しています。1 つのマシンに 1 つ、別のマシンに 1 つ。Nominal プログラムが失敗した場合 (Failover イベント)、Redundant が引き継ぎ、新しい Nominal プロセスとして操作を引き継ぐ必要があります。これは、ユーザーに対して透過的である必要があります。
私の質問は次のとおりです。フェールオーバーが発生した場合、これはハードウェア障害のみが原因でしょうか? または、フェールオーバーをトリガーするのに十分なソフトウェア エラーですか?
より一般的には、フェールオーバーの原因を決定するための業界標準はありますか、それともシステム アーキテクト/デザイナー次第ですか?