負荷分散仮想サーバーが応答時間が最短の方法を使用するように構成されている場合、アクティブな接続が最も少なく、平均応答時間が最も短いサービスを選択します。この方法は、HTTP および SSL (Secure Sockets Layer) 負荷分散仮想サーバーでのみ構成できます。応答時間 (Time to First Byte、または TTFB とも呼ばれる) は、要求パケットをサービスに送信してからサービスから最初の応答パケットを受信するまでの時間間隔です。NetScalerアプライアンスは、応答コード200を使用してTTFBを計算します。
次の例は、仮想サーバーが最小応答時間の方法を使用して負荷分散用のサービスを選択する方法を示しています。次の 3 つのサービスを検討してください。
-
Service-HTTP-1 は 3 つのアクティブなトランザクションを処理し、TTFB は 2 秒です。
-
Service-HTTP-2 は 7 つのアクティブなトランザクションを処理し、TTFB は 1 秒です。
-
Service-HTTP-3 はアクティブなトランザクションを一切処理しておらず、TTFB は 2 秒です。
次の図は、NetScalerアプライアンスが最短応答時間方式を使用して接続を転送する方法を示しています。
図1:最小応答時間のロードバランシング方式の動作
仮想サーバは、各サービスのアクティブなトランザクション数に TTFB を掛けてから、最も低い結果を持つサービスを選択することによって、サービスを選択します。上記の例では、仮想サーバーは次のように要求を転送します。
-
Service-HTTP-3 は、サービスがアクティブなトランザクションを処理していないため、最初の要求を受信します。
-
Service-HTTP-3 は、2 番目と 3 番目の要求も受信します。これは、3 つのサービスの中で最も低い結果になるためです。
-
Service-HTTP-1 は 4 番目の要求を受信します。サービスHTTP-1とサービス-HTTP-3の結果は同じなので、NetScalerアプライアンスはラウンドロビン方式を適用してどちらかを選択します。
-
Service-HTTP-3 は 5 番目の要求を受信します。
-
Service-HTTP-2 は 6 番目のリクエストを受信します。これは、この時点では最も低い結果が得られるためです。
-
この時点では、Service-HTTP-1、Service-HTTP-2、Service-HTTP-3 はすべて同じ結果になるため、アプライアンスはラウンドロビン方式に切り替わり、その方式を使用して接続を配信し続けます。
次の表では、前述の 3 サービス負荷分散設定での接続の分散方法について説明します。
| リクエストを受け取りました |
サービス選択済み |
現在の N 値 (アクティブなトランザクションの数* TTFB) |
注釈 |
| Request-1 |
サービス-HTTP-3; (N = 0) |
N = 2 |
Service-HTTP-3 は最小 N 値を持ちます。 |
| Request-2 |
Service-HTTP-3; (N = 2) |
N = 4 |
Service-HTTP-3 は最小 N 値を持ちます。 |
| Request-3 |
Service-HTTP-3; (N = 4) |
N = 6 |
Service-HTTP-3 は最小 N 値を持ちます。 |
| Request-4 |
サービス-HTTP-1; (N = 6) |
N = 8 |
サービス HTTP-1 とサービス HTTP-3 の N 値は同じアプライアンスはラウンドロビン方式を使用してリクエストを配信します。 |
| Request-5 |
サービス-HTTP-3; (N = 6) |
N = 8 |
サービス HTTP-1 とサービス HTTP-3 の N 値は同じ |
| Request-6 |
サービス-HTTP-2; (N = 7) |
N = 8 |
Service-HTTP-2 は最小 N 値を持ちます。 |
| Request-7 |
サービス-HTTP-3; (N = 8) |
N = 10 |
サービス HTTP-1、サービス HTTP-2、サービス HTTP-3 の N 値は同じ。NetScalerアプライアンスは、ラウンドロビン方式を使用してリクエストを配信します。 |
| Request-8 |
サービス-HTTP-1; (N = 8) |
N = 10 |
サービス HTTP-1 と Service-HTTP-2 の N 値は同じ。アプライアンスはラウンドロビン方式を使用して要求を配信します。 |
アクティブなトランザクションが完了したとき、またはその N 値が他のサービス(Service-HTTP-2 と Service-HTTP-3)よりも小さいときに、サービス HTTP-1 がロードバランシングの対象として再び選択されます。