このセクションでは、SQL Responder Action ツールを設定して複数の仮想アセットを連携することにより、複雑で相互依存的な環境のシナリオをモデル化する方法について説明します。具体的には、CSV 駆動型の SQL Responder によって表される仮想データベースの値を更新する Message Responder を持つことを可能にします。

このセクションの内容:

SQL Responder Action ツールとは

SQL Responder Action ツールは、CSV 駆動型の SQL レスポンダーによって表されている仮想データベースの値をメッセージ レスポンダーの操作で更新する相互接続された仮想化環境を構築することができます。

たとえば、あなたが口座振替、定期預金、および引き出しを取り扱うバンキング サービスを使用していると仮定します。これらの操作は、データベースに格納されている値を変更します。今度は、メッセージ レスポンダーでサービスを仮想化し、SQL レスポンダーを使用してデータベースを仮想化していると仮定します。仮想サービスから実行されたすべての新しいトランザクションが、仮想データベースで既に記録されている値を更新することを保証するにはどのようにすれば良いのでしょうか。

仮想化されたサービスの操作を行うと、仮想データベース内の対応する値を更新するように SQL Responder Action ツールを適用することで、同期化された環境を作成することができます。その更新された仮想データベース値は、さらに別の仮想アセット (恐らく、口座の値や取引履歴を取得する別のサービス) からアクセスまたは操作できます。そして、相互接続された操作の連鎖を作成します。

SQL Responder Action ツールの構成

SQL Responder Action ツールを追加するには、仮想データベースのデータを変更するメッセージ レスポンダーの発信レスポンスとしてそれを連結します。



次のオプションを設定します。

[ターゲット] タブ

このタブで以下の設定を行います。

  • [ターゲット列] は変更を行う仮想データベースの列です。
  • [操作] は仮想データベース内の既存のデータを変更する方法について説明します。
  • [値] は指定された操作を実行するために使用される値です。特定の固定値を使用できます。たとえば、口座から別の口座に 100 ドル振替している場合は、ここでの値は 100 になります。また、スクリプトやパラメータライズされた値を使用することができます。たとえば、受信したリクエストから抽出され、受信リクエストの XML データバンク ツールに格納された値です。
  • [JDBC URL] は、Virtualize がデータベースの記録時にキャプチャしたファイルの適切なセットを指し示します。j を入力して有効な JDBC URL のリストを開きます。

[結果セレクター] タブ

[ターゲット] タブで指定された値と操作で、更新したい記録済みの結果セットを指定するクエリー パラメーター テーブル値を追加します。たとえば、customer_id 12212 や、customer_id 12222 の結果セットを持っているかもしれません。customer_id 12212 に対するアクションのみをクエリーで実行したい場合は、次のように示します。



注意: ここで指定した名前と値は、SQL クエリーの実際の値や結果セットに対応する必要があります (実際の値を確認するには、SQL レスポンダーのコントロール パネルを参照します)。

[行セレクター] タブ

操作する SQL クエリー結果セットの行を指定します。

単一の SQL クエリーの結果セットには、複数の行を含めることができます。このコントロールを使用すると、その操作がすべての行、または特定の行に対して実行する必要があるかを指定できます。たとえば、結果セットに customer_id 12212 に関連付く複数のアカウントが含まれていて、アカウント ID 12345 のみを操作したい場合には、次のように指定します。



ここで指定した名前と値は、実際の行の値 (実際の値を確認するには、SQL レスポンダーのコントロール パネルで参照されている CSV ファイルを参照します) に対応する必要があります。

ツールで変更されたデータのリセット

このツールによって変更されたすべてのデータを記録された元の値にリセットするには、次の操作を行います。

  1. [Virtualize サーバー] ビューで [ローカル マシン] をダブル クリックします。



  2. 開いたページから [リセット] ボタンをクリックします。

  • No labels