仮想ユーザーの計算

ワークロードの設定 ダイアログの ペーシング タブ上で、次のアクションを実行できます。
  • Silk Performer最大仮想ユーザー数 を計算
  • Silk Performerセッション数 [ピーク 1 時間当たり] を計算
  • Silk Performer一秒当たりの目標トランザクション数 を計算
  • ペーシングを有効にして独自に指定する 目標セッション時間 を設定
ヒント: ワークロードの設定 グリッドでは、キーボード ショートカット Ctrl + CCtrl + V を使用たり、値を右クリックしてコンテキスト メニューのメニュー項目を使用して、値をコピー&ペーストできます。

セッション ペーシング

セッション は、dcluser セクションでユーザーに対して定義されたトランザクションのグループです。次のサンプルでは、セッションは 4 つのトランザクションで構成されています。begin および end トランザクションは、セッションの一部ではないことにご注意ください。セッション時間 は、正規のトランザクションの実行に費やされる時間 (思考時間を含む) です。

// Workload Section
dcluser
  user
    VirtUser
  transactions
    TInit      : begin;
    TLogin     : 1;
    TAddToCart : 2;
    TCheckout  : 1;
    TEnd       : end;

ベースライン セッション時間 には、ベースライン テストでセッションを実行するために必要な時間が表示されます。

セッション ペーシング では、セッションの終わりに新しいセッションが始まる前に、ペーシング待機時間と呼ばれる、追加の待機時間を Silk Performer が加えます。セッション ペーシングを使うと、目標セッション時間 と呼ばれる指定した固定長のセッションの長さに到達させることができます。

通常、仮想ユーザーの数は、ワークロードの調整 ワークフロー ステップで既に定義されています。この表には、仮想ユーザーが 1 時間の間に実行できるセッションの数を表示できます。これは、セッション数 [ピーク 1 時間当たり] の値が反映されたものとなります。この値を調整すると、Silk Performer によって、セッション数に達するために必要な仮想ユーザーの数が計算されます。また、仮想ユーザーの数を調整すると、Silk Performer によって、仮想ユーザーが実行できるセッションの数が再び計算されます。

「セッション数 [ピーク 1 時間当たり]」の値の計算方法

  • ベースラインが設定されていることを確認してください。「ベースラインを検索する」を参照してください。
  • ある数値に到達するのに必要な仮想ユーザーの数を次に基づいて計算します で、1 時間当たりのセッション数 を選択します。
  • ベースライン セッション時間 [s] 列には、ベースラインの各ユーザー タイプのセッション時間が含まれます。
  • セッション数 [ピーク 1 時間当たり] は、各ユーザー タイプに対して計算されます。

以下に、Silk Performer がどのように値を計算するかについての例を示します。ベースライン テストが 100 秒間実行され、10 仮想ユーザーを設定した場合、これら 10 仮想ユーザーは 1 時間以内に約 360 セッションを実行できます (10 x 3600 秒 / 100 秒)。

Session Per Peak Hour = (Virtual Users x 3600 seconds) / Baseline Session Time

独自に指定する「目標セッション時間」の設定方法

上で概説したように、Silk Performer はベースライン セッション時間を使用して、セッション数 [ピーク 1 時間当たり] と最大仮想ユーザー数を計算します。与えられたベースライン セッション時間を使用せずに、ユーザー タイプのセッションに別の時間を指定したい場合、ペーシング待機時間を設定することで独自の 目標セッション時間 を設定できます。

「セッション ペーシング」の設定方法

  • ある 1 時間当たりのセッション数に到達するのに必要な仮想ユーザー数を計算する場合は、1 時間当たりのセッション数 を選択します。
  • ベースラインが既に設定されている場合、ベースライン セッション時間 [s] 列には、ベースラインの各ユーザー タイプのセッション時間の値が含まれます。以降のステップでの入力値は、ベースラインに対して検証されます。
  • ペーシング 列で、... をクリックして ペーシングの設定 ダイアログを開きます。
  • 待機時間の挿入 をクリックします。
  • 相対的な ペーシング待機時間 または絶対的な 目標セッション時間 を選択し、図の下にあるフィールドに値を指定します。
  • OK をクリックします。目標セッション時間 が表に表示され、最大仮想ユーザー数 の値が調整されます。帯域幅 の値は、ベースラインが設定されている場合は更新されます。

「思考時間の適用」の設定方法

  • ある 1 時間当たりのセッション数に到達するのに必要な仮想ユーザー数を計算する場合は、1 時間当たりのセッション数 を選択します。
  • ベースラインが既に設定されている場合、ベースライン セッション時間 [s] 列には、ベースラインの各ユーザー タイプのセッション時間の値が含まれます。以降のステップでの入力値は、ベースラインに対して検証されます。
  • ペーシング 列で、... をクリックして ペーシングの設定 ダイアログを開きます。
  • 思考時間の適用 をクリックします。
  • 静的 または 動的 を選択します。
    • 静的:目標セッション時間に達するよう、スクリプトの思考時間が定数の静的係数によって乗算されます。
    • 動的:目標セッション時間に達するよう、スクリプトの思考時間が各セッションの実行後に再度計算された動的係数によって乗算されます。
  • 目標セッション時間 を定義して、OK をクリックします。目標セッション時間 が表に表示され、最大仮想ユーザー数 の値が調整されます。帯域幅 は、ベースラインが設定されている場合は更新されます。

トランザクション ペーシング

セッション ペーシング がセッションの終わりにペーシング待機時間を追加する一方で、トランザクション ペーシング は、各個々のトランザクションの終わりにiペーシング待機時間を追加します。

「一秒当たりの目標トランザクション数」の計算方法

  • ある 1 秒当たりのトランザクション数に到達するのに必要な仮想ユーザー数を計算する場合は、1 秒当たりのトランザクション数 を選択します。
  • ベースラインが既に設定されている場合、平均トランザクション時間 [s] 列には、ベースラインの各ユーザー タイプの平均トランザクション時間の値が含まれます。
  • 一秒当たりの目標トランザクション数 列は、各ユーザー タイプの行に対して計算されます。

独自に指定する「一秒当たりの目標トランザクション数」の設定方法

  • ある 1 秒当たりのトランザクション数に到達するのに必要な仮想ユーザー数を計算する場合は、1 秒当たりのトランザクション数 を選択します。
  • ベースラインが既に設定されている場合、平均トランザクション時間 [s] 列には、ベースラインの各ユーザー タイプのトランザクション時間の値が含まれます。
  • ペーシング 列で、... をクリックして ペーシングの設定 ダイアログを開きます。
  • 待機時間の挿入 をクリックします。
  • 相対的な ペーシング待機時間 または絶対的な 平均目標トランザクション時間 を選択し、図の下にあるフィールドに値を指定します。
  • OK をクリックします。目標セッション時間 が表に表示され、最大仮想ユーザー数 の値が調整されます。帯域幅 は、ベースラインが設定されている場合は更新されます。