負荷分散仮想サーバーがラウンドロビン方式を使用するように構成されている場合、それにバインドされているサービスのリストが継続的にローテーションされます。仮想サーバーは、要求を受信すると、リスト内の最初のサービスに接続を割り当て、そのサービスをリストの一番下に移動します。
次の図は、NetScaler ADCアプライアンスが3つの負荷分散サーバーとそれに関連するサービスを含む負荷分散設定でラウンドロビン方式を使用する方法を示しています。
図1:ラウンドロビンロードバランシング方式の動作
各サービスに異なる重みを割り当てると、NetScaler ADCアプライアンスは着信接続の加重ラウンドロビン分散を実行します。これは、より低い重み付けされたサービスを適切な間隔でスキップすることによって行われます。
たとえば、3 つのサービスを含む負荷分散設定があるとします。サービスHTTP-1をウェイト2に、サービスHTTP-2をウェイト3に、サービスHTTP-3をウェイト4に設定します。サービスは vServer-LB-1 にバインドされ、ラウンドロビン方式を使用するように構成されています。この設定では、受信リクエストは次のように配信されます。
-
サービス HTTP-1 は最初のリクエストを受け取ります。
-
サービス HTTP-2 は 2 番目のリクエストを受け取ります。
-
サービス HTTP-3 は 3 番目のリクエストを受け取ります。
-
Service-HTTP-1 は 4 番目の要求を受信します。
-
サービス HTTP-2 は 5 番目のリクエストを受け取ります。
-
サービス HTTP-3 は 6 番目のリクエストを受け取ります。
-
サービス HTTP-2 は 7 番目のリクエストを受け取ります。
-
Service-HTTP-3は、8番目と9番目のリクエストの両方を受け取ります。
また、複数のサービスが同じサーバーを使用してサーバーに過負荷がかかるのを防ぐために、サービスに重みを設定することもできます。
その後、同じパターンを使用して新しいサイクルが開始されます。
次の図は、加重ラウンドロビン方式を示しています。
図2:ラウンドロビンロードバランシング方式による加重サービスのサポート方法