忍者ブログ
情報処理技術者試験の合格を目指す全受験者のための、1問1問「徹底解説」ブログです。単なる過去問の暗記ではなく、なぜその答えになるのかを本質的に理解できるよう解説します。書籍などでは学べない最新用語やトレンドを踏まえてご紹介します。

【システム構成】トラブルからしなやかに立ち直る力!「回復性(レジリエンス)」|情報処理問題1000本ノック

システムは「絶対に壊れない」から「壊れても一瞬で立ち直る」の時代へ。現代のクラウド設計で最重要視される「回復性」の概念を攻略しましょう。

1. 【 問題 】:システムの障害耐性と運用評価指標

【 問題 】 コンピュータシステムやネットワークの設計において、予期せぬ障害、サイバー攻撃、急激なアクセス負荷などによってシステムの一部が機能不全に陥った際、致命的な全停止(システムダウン)を回避し、自動復旧機能などを駆使して、迅速かつしなやかに元の正常なサービス状態へと復帰・立ち直ることができる能力(復元力)を表す言葉はどれでしょうか?

① 回復性 (Resiliency / レジリエンス)
② 拡張性 (Scalability / スケーラビリティ)
③ 機密性 (Confidentiality / セキュリティ)
④ 移植性 (Portability / ポータビリティ)

2. 正解:

正解: ① 回復性 (Resiliency / レジリエンス)

3. 解説:「壊れない頑丈さ」ではなく「立ち直りの早さ」を競う

従来のシステム設計(オンプレミスなど)では、「フォールトアボイダンス」のように“絶対に壊れない高価な1台”を作ることが目標でした。しかし、システムが巨大化した現代、障害を100%防ぐことは不可能です。そこで生まれたのが「壊れる前提で、いかに早く自動で治すか」という回復性の思想です。

【回復性(レジリエンス)を支える現代のシステム構成】

アプローチ:障害が起きた瞬間、以前学んだ「フェールソフト」のように壊れた部分を切り離し、裏側で別の新しいサーバーを自動的に身代わりとして起動(オートスケーリングや自己修復機能)させます。ユーザーにはエラーを一瞬しか見せず、何事もなかったかのように元の正常な状態へ復元します。 ← ココが問題の正解!

評価の指標(MTTRの短縮):システム構成の指標に当てはめると、故障の修理にかかる平均時間であるMTTRを極限までゼロに近づける設計が、この回復性を高める行為そのものになります。
[ 選択肢のシャッフル解説(非機能要件の重要キーワードたち) ]
★ ② 拡張性(スケーラビリティ):ユーザー数やデータ量が増えたときに、サーバーの台数を増やしたり(スケールアウト)性能を上げたり(スケールアップ)して、柔軟に処理能力を拡大できる能力のことです。
★ ③ 機密性:セキュリティの概念であり、許可された人だけがデータにアクセスできる(漏洩を防ぐ)性質を指します。
★ ④ 移植性(ポータビリティ):あるハードウェアやOS用に作ったソフトウェアを、別の環境(例えばWindowsからLinuxへ、あるいは別のクラウドへ)へと簡単に引っ越し・動作させることができる扱いやすさの指標です。

1. 理解のコツ: 「大木」と「竹」に例えてみましょう。
・絶対に倒れないように太く頑丈に育つ大木は「従来の頑丈なシステム」です。しかし、想定を超える超大型台風(未知のバグや過負荷)が来ると、根元からポッキリ折れてしまい、元に戻せません。
・一方で、細い「竹」は、強い風が吹くとグニャリと大きく曲がります(機能制限・一時的なパフォーマンス低下)。しかし、風が止むと『しなやかに、一瞬で元の真っ直ぐな姿へピンと立ち直り』ます。この、折れずにしなやかに復元する強さこそが回復性(レジリエンス)です。
2. 試験対策の視点: 「障害や負荷が発生した際」「迅速に元の正常な状態へ復帰する」「しなやかに立ち直る」という復元のニュアンスがあれば「回復性」が一択です。ITパスポート、基本情報、応用情報の午前試験において、システムの品質特性(非機能要件)や、クラウドデザインパターン(耐障害性設計)を問う問題において、現代のITシステムが備えるべき最も重要なパラダイムシフトとして頻出するキーワードです。


4. まとめ

「システムにトラブルが発生することを防ぐのではなく、トラブルが起きても自動で素早く検知・修復し、何事もなかったかのように正常稼働へと復元させるしなやかな防衛能力」。これが回復性です。この回復性を高める設計が徹底されているからこそ、現代の大規模なWebサービスやスマホアプリは、裏側で毎日どこかのサーバーが壊れていても、私たちユーザーにストレスを感じさせることなく動き続けることができています。


PR