ADC

使用事例 2: DataStreamの負荷分散のトークン方式を構成します

DataStream の負荷分散のトークン方式を構成して、クライアント (アプリケーションまたは Web サーバー) 要求から抽出されたトークンの値に基づいてデータベースサーバーを選択できます。これらのトークンは、SQL 式を使用して定義されます。同じトークンを持つ後続の要求では、Citrix ADCアプライアンスは最初の要求を処理したのと同じデータベースサーバーに要求を送信します。同じトークンを持つ要求は、最大接続制限に達するか、セッションエントリが期限切れになるまで、同じデータベースサーバーに送信されます。

次のサンプル SQL 式を使用して、トークンを定義できます。

MySQL MS SQL
MYSQL.REQ.QUERY.TEXT MSSQL.REQ.QUERY.TEXT
MYSQL.REQ.QUERY.TEXT(n) MSSQL REQ.QUERY.TEXT(n)
MYSQL.REQ.QUERY.COMMAND MSSQL.REQ.QUERY.COMMAND
MYSQL.CLIENT.USER MSSQL.CLIENT.USER
MYSQL.CLIENT.DATABASE MSSQL.CLIENT.DATABASE
MYSQL.CLIENT.CAPABILITIES  

次の例は、負荷分散のトークン方式を構成するときの Citrix ADC DataStream 機能の動作を示しています。

図1:DataStreamと負荷分散のトークン方式

負荷分散のトークン方式

この例では、トークンはデータベースの名前です。トークンブックを含む要求がデータベース Server1 に送信され、トークンミュージックを含む要求がデータベース Server2 に送信されます。トークン・ブックを含む後続のすべての要求はデータベース・サーバー1に送信され、トークン・ミュージックを含む要求はデータベース・サーバー2に送信されます。この設定により、データベース・サーバとの擬似永続性が提供されます。

CLIを使用してこの例を構成します

コマンドプロンプトで入力します。

add service Service1 192.0.2.9 MYSQL 3306

add service Service2 192.0.2.11 MYSQL 3306

add lb vserver token_lb_vserver MYSQL 192.0.2.15 3306 -lbmethod token -rule MYSQL.CLIENT.DATABASE

bind lb vserver token_lb_vserver Service1

bind lb vserver token_lb_vserver Service2
<!--NeedCopy-->

GUIを使用してこの例を構成します

  1. [トラフィック管理] > [ロードバランシング] > [仮想サーバー] に移動し、仮想サーバーを設定し、プロトコルを MYSQL として指定します。
  2. サービス」 セクションをクリックし、プロトコルをMYSQLとして指定して2つのサービスを構成します。これらのサービスを仮想サーバにバインドします。
  3. 詳細設定」で「メソッド」 をクリックし、「 負荷分散メソッド」 リストで「 トークン」 を選択して、式を MYSQL.CLIENT.DATABASEとして指定します。
使用事例 2: DataStreamの負荷分散のトークン方式を構成します