-
-
-
VMware ESX、Linux KVM、およびCitrix HypervisorでNetScaler ADC VPXのパフォーマンスを最適化する
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
バックエンドサーバーの応答がタイムアウトになったら再試行をリクエストする
This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
バックエンドサーバーの応答がタイムアウトになったら再試行をリクエストする
リクエスト再試行は、バックエンドサーバーがリクエストへの応答に時間がかかる場合、アプライアンスがタイムアウト時にリロードバランシングを実行し、そのリクエストを次の使用可能なサーバーに転送するもう1つのシナリオで使用できます。
バックエンドサーバーの応答がタイムアウトしたときのリクエストリトライの仕組み
次の図は、コンポーネントが互いに相互作用することを示しています。
- このプロセスでは、まずアプライアンスの appqoe 機能を有効にします。
- appqoe 設定には、ミリ秒単位の「retryOnTimeout」パラメータがあります。
- アプライアンスが要求を送信し、サーバーの応答に時間がかかる場合、 アプライアンスは設定されたタイムアウト値に基づいて再負荷分散を実行します。アプライアンスは、サーバーの応答を待つ代わりに、接続をリセットし、別のサービスを選択して要求を転送します。
- 負荷分散仮想サーバーが応答を受信した後、アプライアンスは応答をクライアントに転送します。タイムアウトパラメータを使用すると、アプライアンスがサーバーの応答を待つ必要がなくなり、RTT が増加します。
- 使用可能なバックエンドサーバーが再試行回数と同じかそれ以下で、 すべてのサーバーが要求に対してタイムアウトした場合、アプライアンスは500の内部サーバーエラーを返します。使用可能なサーバーが5つあり、再試行回数が6に設定されているシナリオを考えてみます。5 台のサーバーすべてが要求に対してタイムアウトした場合、アプライアンスはクライアントに 500 内部サーバーエラーを返します。
- 同様に、バックエンドサーバーの数がリトライ回数よりも多く、バックエンドサーバーがリクエストでタイムアウトした場合、アプライアンスはサーバーが応答を送信するか、クライアントのアイドル接続がタイムアウトするまで、最後のサービスを待機し続けます。3つのバックエンドサーバーがあり、再試行回数が2に設定されているシナリオを考えてみます。要求に応じて 3 台のサーバーすべてがタイムアウトした場合、アプライアンスは、サーバーが応答を送信するか、クライアントのアイドル接続がタイムアウトするまで、3 番目のサービスを待機し続けます。
バックエンドサーバーの応答がタイムアウトしたときの要求再試行 (GET および POST メソッド) の設定
タイムアウト時に GET メソッドのリクエスト再試行を設定するには、次の手順を完了する必要があります。
- アプリを有効にする
- AppQoE アクションの設定
- 適用ポリシーの追加
- appqoeポリシー を負荷分散仮想サーバーにバインドする
注:
タイムアウト時のリクエスト再試行シナリオは、POST メソッドにも適用できます。
アプリを有効にする
コマンドプロンプトで入力します:
enable ns feature appqoe
タイムアウト用の appqoe アクションを追加
タイムアウト時に再試行するように appqoe アクションを設定し、再試行回数を定義する必要があります。
コマンドプロンプトで入力します:
add appqoe action <name> -retryOnTimeout <msecs> -numRetries <positive_integer>
例:
add appqoe action appact1 -retryOnTimeout 35 –numRetries 5
適用ポリシーの追加
appqoe を実装するには、appqoe ポリシーを設定して、接続をキューに入れる方法を定義する必要があります。
コマンドプロンプトで入力します:
add appqoe policy <name> -rule <rule> -action <name>
例:
add appqoe policy timeout_policy -rule http.req.method.eq(get) -action appact1
appqoeポリシーを負荷分散仮想サーバーにバインドする
バックエンドサーバーの応答に時間がかかり、負荷分散仮想サーバーから次の利用可能なサービスに要求を転送したい場合は、appqoe ポリシーを分散仮想サーバーにバインドする必要があります。
コマンドプロンプトで入力します:
bind lb vserver <name> ((<serviceName> (-policyName <string> [-priority <positive_integer>] [-gotoPriorityExpression <expression>] [-type ( REQUEST | RESPONSE )]
例:
bind lb vserver v1 -policyName timeout_policy -type REQUEST -priority 1
NetScaler GUIを使用してタイムアウト時に再負荷分散を行うためのAppQoEポリシーを構成する
- [ AppExpert] > [AppQoE] [ポリシー] に移動します。
- 「 AppQoE ポリシー 」ページで、「 追加」をクリックします。
-
[ AppQoEポリシー の作成]ページで、次のパラメーターを設定します。
a. 名前。AppQoE ポリシー名 b. アクション。 アクションを追加または編集します。新しいアクションを作成するには、「AppQoE アクションの作成」セクションを参照してください。 c. 式。「http.req.method.eq (get)」ポリシーエクスプレッションを選択または入力します。
- [作成]して[閉じる] をクリックします。
NetScaler GUIを使用してリクエスト再試行用のAppQoEアクションを構成する
- [ AppExpert] > [AppQoE] [アクション] に移動します。
- 「 AppQoE アクション 」ページで、「 追加」をクリックします。
- 「 AppQoE アクションの作成 」ページで、バックエンドサーバーの応答タイムアウト時に再試行する次のパラメータを設定します。a. タイムアウト時に再試行してください。 バックエンドサーバーにリクエストを送信したときに、リクエストのタイムアウト (ミリ秒単位) で再試行します。
- [作成]して[閉じる] をクリックします。
共有
共有
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.