フェールソフト
システムの一部が故障したときに、故障した部分を切り離し、機能や性能を縮小してでも、システム全体の運転を継続させる設計の考え方。
イマシルちゃんの解説
フェールソフトは、一部が故障しても使える部分を残し、できる仕事を減らして運転を続ける設計の考え方だよ。
たとえば、複数のサーバで仕事を分担しているシステムを考えてみよう。
一台が故障したら、そのサーバを処理から外して、残りのサーバで仕事を受け持つようにしておくんだ。
処理できる量は減っても、サービスを丸ごと止めずに済むよ。
こうして機能や性能を落として動かすことを縮退運転というの。
故障したときに何を残すかを決めておくことで、必要なサービスを使い続けられるようにするんだよ。
この解説はわかりやすかったですか?
より深い解説
定義
フェールソフト(fail soft)は、故障が発生したとき、その部分を切り離したり、機能を制限したりして、システムが提供するサービスの水準を下げてでも、全面的な停止を避ける設計の考え方である。このように機能を縮小して動作を続けることを、縮退運転(フォールバック)という。
具体例
| 例 | 故障時の動作 |
|---|---|
| 複数のサーバによる負荷分散 | 1台が故障したら切り離し、残りのサーバで処理を続ける(応答は遅くなる) |
| 複数のCPUを持つシステム | 1つのCPUが故障しても、残りのCPUで処理を続ける |
| 交通信号の制御システム | 中央の制御が故障したら、各交差点の信号が個別の決まったパターンで動作する |
| 通信回線 | 一部の回線が切れたら、残りの回線や低速なバックアップ回線で通信を続ける |
| Webサイト | 負荷が高すぎるときに、重い機能(検索、おすすめの表示など)を止めて、主要な機能だけを提供する |
フォールトトレランスとの違い
| フェールソフト | フォールトトレランス | |
|---|---|---|
| 故障時の機能・性能 | 低下する(縮退運転) | 低下しない(正常に動き続ける) |
| 必要な仕組み | 故障した部分の切り離しと、残りでの再構成 | 予備を含めた十分な冗長化 |
| コスト | 比較的低い | 高い |
フォールトトレランスの設計でも、予備の機器まで故障した場合などには、フェールソフトの考え方で縮退運転に移ることが多い。
信頼性・安全性を高める考え方の比較
| 考え方 | 故障時の動作 |
|---|---|
| フェールセーフ | 安全な状態にする(停止を含む) |
| フェールソフト | 機能を縮小して運転を続ける |
| フォールトトレランス | 正常な運転を続ける |
| フールプルーフ | (故障ではなく)人の誤操作に対して、誤動作を防ぐ |
バックアップなどの保存・回復操作
運転を継続する設計と、障害後に状態を復元する操作は区別する。
| 用語 | 役割 |
|---|---|
| バックアップ | 復旧に備え、データの複製を別の媒体などへ保存する |
| リストア | 保存した複製からデータを戻す |
| チェックポイントリスタート | 記録した中間状態から処理を再開する |
| リブート | OSや機器を起動し直す |
| ジャーナル | トランザクションの更新などを記録し、回復処理に利用する |
ジャーナルとバックアップを組み合わせて、更新を適用し直したり、未完了の変更を取り消したりする。起動し直しただけで業務データが正しい状態へ戻るとは限らない。復旧手順と、戻すべき時点を事前に確認する。
実際の試験ではここに出る!全3問
ネットワークスペシャリスト
テクニカルエンジニア(ネットワーク)
- 午前