NGINX Full Version

ロードバランシング徹底解説その仕組みとメリットとは

ロードバランシングは、ネットワークを円滑に動作させ、リクエストの集中によるサーバーの遅延を防止します。

ロードバランシングとは?

ロードバランシングは、受け取ったネットワークトラフィックをバックエンドサーバーのグループに分散して、十分な速度を確保して処理を最適化します。このバックエンドサーバーのグループは、一般的にサーバーファームまたはサーバープールと呼ばれます。サーバーファームが大きく、ロードバランシングが最適化されているほど、いずれかのサーバーがダウンしたり過負荷になった場合でも、クライアントへの応答が減速することが少なくなります。

トラフィックの多いWebサイトは、1日あたり数千人、場合によっては数百万人にサービスを提供し、サービスの一部として、テキスト、画像、動画などのコンテンツを表示します。サーバーは、必要なデータを識別して確実に提供する必要があります。

ロードバランシングは、リクエストがオーバーフローした場合にWebサイトで遅延が発生するのを防止します。ロードバランサーは、リクエストを効率的に処理できるサーバーに送信することで、スピードとパフォーマンスを最大化します。

ロードバランサーに関する動画

ロードバランシングとは?
 
ロードバランシングによるWebアプリケーションの拡張
 
TCP/UDPロードバランシング

IPレイヤーのロードバランシングの仕組とは?

Layer 4ロードバランシングとも呼ばれるIPレイヤーのロードバランシングでは、ロードバランサーのIPアドレスがWebサイトのクライアントにアドバタイズされ、送信先アドレスとして記録されます。ロードバランサーは、リクエストを受け取った段階で記録されている送信先IPアドレスを自らが選択したコンテンツサーバーのIPアドレスに変更します。Layer 4ロードバランシングの詳細については、こちらを参照してください。

セッションパーシステンス

例えば、クライアントがショッピングカートに商品を入れて購入を完了する場合、セッション継続中のクライアントからのすべてのリクエストを同じサーバーに送信する必要があります。クライアントとサーバー間の接続を維持することを、セッションパーシステンスと呼びます。セッションパーシステンスがない場合、情報をサーバ間で同期して何度も取得することになる可能性があるため、パフォーマンスが低下します。

参考資料