【ネットワーク】システムの生存確認!「ハートビート」|情報処理問題1000本ノック
心臓の鼓動(Heartbeat)のように、一定の間隔で信号を送ることで、相手が正常に動いているかを遠隔で監視する仕組みを攻略しましょう。
1. 問題:稼働状況の確認手法
【 問題 】 ネットワークに接続されたコンピュータやソフトウェアが、外部に対して「自分は正常に稼働している」ことを知らせるために、一定の間隔で送信する信号のことを何と呼ぶでしょうか?
ア、ハンドシェイク イ、ハートビート ウ、キープアライブ エ、ポーリング
2. 正解:可用性管理に関する正解
正解: イ、ハートビート(Heartbeat)
3. 解説:沈黙は「異常」のサイン
ハートビートは、特に冗長化(二重化)されたシステムにおいて、相方の故障を検知するために非常に重要です。
■ 生存確認の流れ
・稼働中のサーバーが、監視役の装置へ定期的に「トントン(生きてるよ)」と短いパケットを送ります。
・信号が途切れた(一定時間届かない)場合、監視役は「あいつは死んだ(故障した)」と判断します。
■ 活用例:フェイルオーバー
・メイン機からのハートビートが途絶えた瞬間、待機していたサブ機が「自分の出番だ!」と判断して処理を引き継ぎます。
★ キープアライブ:通信セッションを維持するために送る信号。ほぼ同じ意味で使われることもありますが、ハートビートはより「システムの死活監視(OSやアプリが生きてるか)」の文脈で使われます。
★ ポーリング:監視側が「生きてる?」と毎回聞きに行くこと。ハートビートは基本、自分から「生きてるよ!」と発信するスタイルです。
1. 理解のコツ: 登山のパーティで、先頭の人が後ろの人に向かって「おーい!」と声を出し続けるようなものです。声(信号)が聞こえなくなったら、何かトラブルがあったとすぐにわかります。
2. 試験対策の視点: 「一定間隔で送信」「正常稼働の通知」「死活監視」という言葉がキーワードです。高可用性(HA)クラスター構成の話題とセットで登場することが多い用語です。
4. まとめ
「ネットワーク上で稼働状況を知らせるために送る信号」。これがハートビートです。システムが沈黙した瞬間に異常を検知し、素早く切り替える。そんな「止まらないシステム」を支える心臓の鼓動です。