ロードバランサー
概要
ロードバランサー(Load Balancer=負荷分散装置)とは、サーバーにかかる負荷を複数のサーバーに分散するための装置。これを使うことで特定のサーバーにかかる負担を軽減し、急激なアクセス集中やサーバー故障などの場合でも利用者に安定したサービス品質を継続できる。
背景
SEO(検索エンジン最適化)の観点から、ウェブサイトのページ表示を高速化することは重要である。サービス品質の低下やサーバーのダウンが発生すると、利用者は離脱し機会の損失をもたらす。サーバーのパフォーマンスの低下は避けなくてはならない。
仕組み
複数台で設定したサーバーシステムで、ロードバランサーは余裕があるサーバーを接続先として選択し、負荷を分散するが、どのサーバーにリクエストを割り当てるかを決めるには、いくつかの方式がある。
ラウンドロビン方式は各装置に順番に均等に割り当てるもの。重み付けラウンドロビン方式は、あらかじめサーバーに優先順位を設定しておく方式で、サーバーの処理能力に違いがある場合に使われる。
最小接続数方式では、現在の接続数が最も少ないものを選ぶ。
最速応答時間方式は、最も早く反応を返したサーバーに割り当てる。
そしてこれらを組み合わせたアダプティブ方式もある。
こうした負荷分散機能の他に、ロードバランサーは死活監視機能によりサーバーの稼働状況を監視する。そしてもし障害が発生した場合、自動切り離し機能でサーバーへの割り当てを即座に停止する。またサーバーの保守や交換の際には、連続サービス機能でサービスを継続しながら特定の装置を切り離すことができる。これによってサービスは継続され、システム全体の可用性(アベイラビリティ)を高めることができる。
ポイント
クラウドサービスやデータセンターサービスでは、サーバーの冗長化やトラフィックの負荷分散を実施するための機能として、ロードバランサーを提供するのが一般的。なおロードバランサーには、従来のアプライアンス(ハードウェア型)とサーバーに搭載するソフトウエア型、そしてクラウド上で負荷分散を行うクラウド型があり、選択の自由度が増している。