Citrix ADC

DataStream

Citrix ADC DataStream機能は、送信されるSQLクエリに基づいて要求を分散することにより、データベース層での要求切り替えのためのインテリジェントなメカニズムを提供します。

Citrix ADCアプライアンスをデータベースサーバーの前に展開すると、アプリケーションサーバーとWebサーバーからのトラフィックの最適な分散が保証されます。管理者は、SQLクエリの情報に従って、データベース名、ユーザー名、文字セット、およびパケットサイズに基づいてトラフィックをセグメント化できます。

負荷分散アルゴリズムに基づいてリクエストを切り替えるように負荷分散を構成できます。または、SQLクエリパラメータに基づいて決定を下すようにコンテンツの切り替えを構成することで、切り替え基準を詳しく説明することもできます。さらに、データベースサーバーの状態を追跡するようにモニターを構成できます。

Citrix ADC DataStreamは、MySQLおよびMS SQLデータベースでのみサポートされます。サポートされているプロトコルバージョン、文字セット、特殊クエリ、およびトランザクションの詳細については、「DataStream リファレンス」を参照してください。

DataStreamのしくみ

DataStreamでは、ADCアプライアンスはアプリケーションまたはWebサーバーとデータベースサーバーの間にインラインで配置されます。アプライアンスでは、データベース・サーバはサービスによって表されます。

一般的な DataStream デプロイメントは、次の図で説明するエンティティで構成されます。

図1:DataStream エンティティモデル

DataStreamエンティティモデル

この図に示すように、DataStream構成は次のもので構成できます。

  • オプションのコンテンツスイッチング仮想サーバー(CS)。
  • 負荷分散仮想サーバー(LB1およびLB2)で構成される負荷分散セットアップ。
  • サービス(Svc1、Svc2、Svc3、およびSvc4)。
  • コンテンツスイッチングポリシー(オプション)。

クライアント(アプリケーションまたはWebサーバー)は、Citrix ADCアプライアンスで構成されたコンテンツスイッチ仮想サーバー(CS)のIPアドレスに要求を送信します。その後、アプライアンスは、アプライアンスに構成されたデータベース・ユーザー認証情報を使用してクライアントを認証します。コンテンツスイッチ仮想サーバー (CS) は、関連付けられたコンテンツスイッチングポリシーを要求に適用します。ポリシーを評価した後、コンテンツスイッチング仮想サーバー(CS)は、要求を適切な負荷分散仮想サーバー(LB1またはLB2)にルーティングします。次に、負荷分散仮想サーバーは、負荷分散アルゴリズムに基づいて、適切なデータベースサーバー(アプライアンス上のサービスで表される)に要求を分散します。Citrix ADCアプライアンスは、同じデータベースユーザー認証情報を使用して、データベースサーバーとの接続を認証します。

コンテンツスイッチング仮想サーバーがアプライアンスで構成されていない場合、クライアント(アプリケーションまたはWebサーバー)は、アプライアンスで構成された負荷分散仮想サーバーに要求を送信します。Citrix ADCアプライアンスは、アプライアンスで構成されたデータベースユーザーの資格情報を使用してクライアントを認証し、同じ資格情報を使用してデータベースサーバーとの接続を認証します。負荷分散仮想サーバーは、負荷分散アルゴリズムに従って要求をデータベースサーバーに分散します。データベース切り替えのための最も効果的な負荷分散アルゴリズムは、最小接続方法です。

DataStream は、接続多重化を使用して、同じサーバー側接続で複数のクライアント側要求を実行できるようにします。次の接続プロパティが考慮されます。

  • ユーザー名
  • データベース名
  • パケットサイズ
  • 文字セット
DataStream