NGINX(エンジンエックス)|日本公式サイト

NGINXはF5ファミリーの一員となりました。新体制の詳細はこちらを御覧ください。

ロードバランシングは、ネットワークのOSI(Open Systems Interconnection)参照モデルのさまざまなレイヤーで実行できます。ここでは、モデル内の2つの異なるレイヤーで実行される2つのロードバランシングオプションについて、概要を説明します。

レイヤー4とレイヤー7のロードバランシングの違い

レイヤー4ロードバランシングは、中間のトランスポートレイヤーで動作します。このレイヤーは、メッセージの内容に関係なくメッセージのデリバリーを処理します。TCP(Transmission Control Protocol)は、インターネット上のHTTP(Hypertext Transfer Protocol)トラフィック向けのレイヤー4プロトコルです。レイヤー4のロードバランサーは、パケットの内容は検査せず、上流のサーバとの間で単純にネットワークパケットの転送を実行します。また、TCPストリームの最初の数パケットを検査し、限定的にルーティングを決定できます。

レイヤー7ロードバランシングは、さらに上位のアプリケーションレイヤーで動作します。このレイヤーでは、各メッセージの実際の内容が処理されます。HTTPは、インターネット上のWebサイトのトラフィックに使用される主要なレイヤー7プロトコルです。レイヤー7のロードバランサーは、レイヤー4のロードバランサーに比べて、はるかに高度な方法でネットワークトラフィックをルーティングします。特に、HTTPなどのTCPベースのトラフィックを対象とします。レイヤー7のロードバランサーは、ネットワークトラフィックを終端し、中のメッセージを読み取ります。メッセージの内容(URLやCookieなど)に基づいて、ロードバランシングの判断を行うことができます。続いて、選択した上流サーバに新しいTCP接続を実行(または、HTTPキープアライブによって既存の接続を再利用)して、サーバにリクエストを書き込みます。

レイヤー7ロードバランシングのメリット

レイヤー7ロードバランシングは、パケットベースのレイヤー4ロードバランシングに比べるとCPUへの負荷が大きくなりますが、最新サーバでパフォーマンスの低下を引き起こすことはほとんどありません。レイヤー7ロードバランサーは、高度なロードバランシングの決定を下すことができ、コンテンツに最適化や変更(圧縮、暗号化など)を適用できます。また、バッファリングを利用し、低速の接続を上流サーバからオフロードすることで、パフォーマンスを向上させます。

レイヤー7ロードバランシングを行うデバイスは、リバースプロキシサーバとも呼ばれます。

レイヤー7ロードバランシングの一例

トラフィックの多いWebサイトにユーザがアクセスするという簡単な例で考えてみましょう。セッション期間中に、ユーザは画像や動画などの静的コンテンツ、ニュースフィードなどの動的コンテンツや、注文状況などのトランザクション情報を要求する可能性があります。レイヤー7ロードバランサーは、どのようなコンテンツがリクエストされているかなど、リクエスト自体の情報に基づいてリクエストをルーティングできます。したがって、画像や動画のリクエストは、その画像や動画を格納するサーバにルーティングされ、マルチメディアコンテンツを提供するために高度に最適化されます。また、割引価格などのトランザクション情報のリクエストであれば、価格管理用アプリケーションサーバにルーティングされます。レイヤー7ロードバランシングにより、ネットワークやアプリケーションのアーキテクトは、高度に調整され最適化されたサーバインフラストラクチャを構築できます。または、信頼性が高く、需要に応じて効率的に拡張できる、アプリケーションデリバリーネットワークも構築できます。

NGINX Plusはどのように役立ちますか?

NGINX PlusとNGINXは、クラス最高のロードバランシングソリューションであり、Dropbox、Netflix、Zyngaなどの高トラフィックのWebサイトで使用されています。世界中で4.5億以上のWebサイトがNGINX PlusとNGINX Open Sourceを利用しており、迅速かつ確実で安全なコンテンツのデリバリーを実現しています。

ソフトウェアロードバランサーであるNGINX Plusは、同様の機能を持つハードウェアソリューションに比べてはるかに低価格です。NGINX Plusの包括的レイヤー7ロードバランシング機能により、高度に最適化されたアプリケーションデリバリーネットワークを構築できます。

NGINX Plusをレイヤー7ロードバランサーとしてWebサーバやアプリケーションサーバの前に配置することで、Webアプリケーションの効率、信頼性、パフォーマンスを向上できます。顧客満足度とIT投資収益率の両方を最大化するNGINX Plusをぜひお役立てください。