FE EXAM

ウォームスタンバイ(定期同期)

待機系を起動はしておくが、データ同期は定期的に行う方式。

INTERACTIVE VISUALIZATION
主系
待機系
同期/追いつき
主系
稼働中
待機系
起動済み・待機
切替時間
シナリオ
ステップ1 / 5
STEP 1/5通常運転(主系が処理・待機系は起動済み)主系(=普段サービスを提供しているサーバ)がクライアントの要求を処理しています。ウォームスタンバイでは、待機系(=予備のサーバ)のOSやアプリケーションは起動した状態にしておきます。すぐ動かせるところまでは準備しておく方式です。
クライアント利用者の端末主系(active)普段サービスを提供稼働中待機系(standby)起動済みの予備起動済み・待機起動済みだが定期同期 → 故障時は差分を反映して追いついてから切り替える
解説

📌
ウォームスタンバイとは

起動済み・データは定期同期主系稼働中待機系起動済み定期同期

ウォームスタンバイとは、待機系(=予備のサーバ)のOSやアプリは起動しておくが、データの同期は定期的に行う二重化の方式です。「常時起動」と「常時同期」のうち、起動だけを済ませておく中間的なやり方です。

身近な例で考えると、休憩中だが制服を着て控えている交代要員に似ています。すぐ動ける格好では待っていますが、最新の引き継ぎメモは数十分おきにしか受け取っていません。いざ交代するときは、その間にたまった連絡事項にひととおり目を通してから持ち場に立つ、というイメージです。

上のツールで▶ボタンを押すと、待機系が起動した状態で定期同期を受け、主系の故障後に差分を反映して追いついてから切り替わる流れを確認できます。

⚖️
ホット/コールドとの違い

3つの待機方式は、待機系をどこまで準備しておくかで区別されます。準備が手厚いほど切替は速くなりますが、その分コストは上がります。ウォームはちょうど真ん中です。

方式待機系の起動データ同期切替時間コスト
ホット常時起動リアルタイム最短高い
ウォーム起動済み定期的中間中間
コールド停止なし(故障時に復元)最長安い

整理すると、次のようになります。
ホットスタンバイ:常時起動+常時同期で即切替できるが、コストが高い
ウォームスタンバイ:起動済みだが定期同期。切替時間もコストもその中間
コールドスタンバイ:停止していて起動から始めるため切替は遅いが、コストが安い

ウォームスタンバイは、「数分程度の停止なら許せるが、コストはほどほどに抑えたい」システムに向いた、バランス重視の選択肢だと考えると分かりやすいです。

🔄
データ同期の仕組み

定期同期 → 差分が「ズレ」として残る同期同期同期故障未反映の差分

ウォームスタンバイのデータ同期は「定期的」に行われます。常時コピーし続けるリアルタイム同期と違い、一定の間隔ごとにまとめて反映するため、待機系のデータは少し古い状態になります。

同期には、主に次のような方法が使われます。
定期バックアップ:決まった時間ごとに主系のデータを待機系へコピーする
レプリケーション:データベースの更新内容を一定間隔で待機系に複製する仕組み
差分の反映:故障時に、最後の同期以降にたまった更新だけを取り込んで最新に追いつく

ここで大切なのは、最後の同期から故障までの間に主系で起きた更新が、待機系にはまだ反映されていないという点です。だから切替の前に「差分を反映して追いつく」処理が必要になり、これがホットスタンバイより切替時間が長くなる理由です。上のツールのSTEP4で、この追いつき処理を確認できます。

練習問題

🎯
基本情報技術者 練習問題

Q1.ウォームスタンバイの説明として最も適切なものはどれか。
A.待機系を停止しておき、故障時に電源を入れて起動する
B.待機系を起動しておくが、データ同期は定期的に行う
C.待機系を常時起動し、データもリアルタイムに同期する
D.リクエストを複数サーバに均等に振り分ける
Q2.切替時間が短い順に並べたものはどれか。
A.コールド < ウォーム < ホット
B.ホット < ウォーム < コールド
C.ウォーム < ホット < コールド
D.3方式とも切替時間は同じ
Q3.ウォームスタンバイで主系故障時に「最後の同期以降の差分を反映する」処理が必要になる理由はどれか。
A.待機系の電源が切れているため
B.データ同期がリアルタイムではなく定期的だから
C.待機系のOSが起動していないため
D.リクエストの振り分け先を決めるため

関連コンテンツ

ウォームスタンバイ | Vizigo