Oracle/MySQL向け負荷テスト・性能測定ツール Transaction Generator - トランザクション・ジェネレータ -

マルチサーバ・モードの使い方

  1. ServerモードでのTGの起動
    (@Server.B,C)
  2. Master Serverへの接続
    (@Server.A)
  3. コンフィグレーションのロード
    (@Server.A)
  4. Slave serverの登録・接続
    (@Server.A)
  5. トランザクションの実行
  6. 性能の測定
  7. トランザクションの終了
  • トップ
  • ダウンロード
  • 使用方法

マルチサーバ・モードの使い方

ここではMulti-server modeによるTGの操作方法について説明します。本機能により、複数のTGを同期して動作させ、大きなトランザクションを生成することが可能です。

以下の図では、Server.BとServer.CのTGが同期しながら、Server.DのOracleデータベースに対して負荷がけを行うことを示しています。

Server.BとServer.CのTGは、"Master server"と"Slave server"の関係となり、Agentの制御はすべてMaster serverから実行されます。また、TG Controller(TGC)を使用してTGの制御を行う場合、TGCはMaster serverと接続し、GUIによるTGの操作を可能にします(※下図では、TGCはServer.Aにて動作しています)。

1. ServerモードでのTGの起動 @Server.B,C

Server.BとServer.Cにて、TGをサーバモードで起動します。Windows環境の場合、TGの起動バッチファイル「tg.bat」に「-server」オプションを指定して実行してください。


C:\> cd tg08X
C:\tg08X> tg -server

Linuxや商用UNIX環境では、TGの起動シェルスクリプト「tg.sh」に同じく「-server」オプションを指定してください。コマンドの最後に「&」を付けることで、TGをバックグラウンド実行することも可能です。


$ cd tg08X
$./tg.sh -server &

以下のようなメッセージが表示されれば、サーバモードでのTGの起動は完了です。デフォルトではTGはポート番号「11111」にてTGCからの接続を待機します。もしポート番号を変更したい場合には、オプション「-port <ポート番号>」を追記し、ポート番号を変更することが可能です。


TG - Transaction Generator - [ Version 0.8X ] Wed May 03 23:32:47 JST 2006

Loading configration file... OK.
Registerd transactions:2 , variables:2 , jobs:5

Loading Oracle JDBC driver... OK.

Checking specified address & Port is possible to use... OK.
Now TG is running in "SERVER_FOR_TERMINAL".
  - Listening Address : 0.0.0.0
  - Port              : 11111
if you forcely terminate this program , press "CTRL+C" in this console,
or kill TG process.

2. Master Serverへの接続 @Server.A

Server.AにてTGCを起動します。エクスプローラから「tgc.exe」ファイルをダブルクリックするか、コマンドプロンプトより以下のように入力してください。


C:\> cd tg08X
C:\tg08X> tgc

TGCのメインウィンドウより「TG」メニューをクリックし、「Specify and connect TG...」を選択してください。

  • ローカルのTGが起動してしまった場合には、まずローカルのTGを停止させる必要があります。詳しくは、「サーバ・モードの使い方 > 2. TGCの起動(@Server.B)」をご覧ください。

以下の「Specify and connect to TG...」ウィンドウにて、Master serverとなるServer.Bのホスト名とポート番号(デフォルト:11111)を指定し、「OK」ボタンをクリックしてください。

接続に成功した場合、以下のようなログインメッセージが表示されます。


TG - Transaction Generator 0.8X Sat May 10 22:33:02 JST 2008
logged in.
TG> 

なお、ここで一時的にMaster serverの機能を「OFF」にしておきます。 TGCのメインウィンドウより「TG」メニューをクリックし、「Enable Master server」を選択し、必用に応じてチェックを外してください。

3. コンフィグレーションのロード @Server.A

Slave serverと接続を行う前に、コンフィグレーションファイルのロードを行います。ここでは例として「sample.tgp」を使用します。「ファイル」メニュークリックし、「Open」を選択、「C:\tg08X\sample.tgp」ファイルをオープンします。

正常にコンフィグレーションファイルが読み込まれた場合、「TG Console」に次のメッセージが出力され、TGと情報の同期が行われます。


TG> Syncronization has completed succesfully.

TG> reload config
Loading configration file... .OK.
Registered transactions:4 , variables:5 , jobs:1 , slave servers:0

TG>

4. Slave serverの登録・接続 @Server.A

ここで、Slave server(Server.Cで動作しているTG)の情報を登録します。TGCのメインウィンドウより「TG」メニューをクリックし、「Congigure TG...」を選択してください。

以下の「Configure TG...」ウィンドウの「MultiServers」タブを選択後、「Registered slave servers」画面にて右クリックし、「Add new server」を選択します。

「Slave server configuration」画面にて、Slave serverとなるServer.Cのホスト名とポート番号(デフォルト:11111)を指定し、「OK」ボタンをクリックしてください。

再度TG(Master server)との情報同期が行われます。正常に同期が行われた場合、「TG Status」にSlave serverに関する情報が表示されます(下図赤色の部分です)。

ここで、Master server機能を有効化します。 TGCのメインウィンドウより「TG」メニューをクリックし、「Enable Master server」を選択し、チェックを付けてください。

正常にSlave serverに接続できた場合、「TG Console」に次のメッセージが出力され、Master server と Slave server間の情報の同期が行われます。


TG> masterserver on
Multi server mode : "ON".
Connecting to slave servers.
 - serverc[11111] .... Connected.
Synchronizing configuration with slave servers.
 - serverc[11111] .... Completed.

TG> 

TGCメインウィンドウ左の「TG Status」画面の「SlaveServer1 > Server Status」および「TERMINATED」行を確認してください。

Server Statusが"UNKNOWN"から"ONLINE"に変化していることによって、Master serverとSlave serverの通信が確立していることが確認できます。

また、TERMINATEDが"10"から"20"に変化していますが、これは、Master serverとSlave serverとで、各10づつのAgentが生成されるため、合計値である"20"が表示されます。つまり、「CONNECTED」・「DISCONNECTED」・「TERMINATED」・「ERROR」・「TPS」は、全TG serverのサマリー情報が表示されることになります。

5. トランザクションの実行

TGCのメインウィンドウより「Agent」メニューをクリックし、「Make agnets connect to the target database」を選択、Agentをターゲットデータベースに接続させます。

続いてTGCメインウィンドウより「Agent」メニューをクリックし、「Activate agents」を選択してください。これにより負荷がけ(トランザクションの実行)が開始されます。

6. 性能の測定

トランザクションを実行させた状態で性能測定を行います。特に各Master server、Slave serverの詳細情報を確認したい場合には、TGCのメインウィンドウより「Monitor」メニューをクリックし、「Monitoring start > Show details」を選択します。

コンソール画面にトランザクションの実行状態が出力されます。大きくフィールドは「Summary」と「Details」のふたつにわかれています。 Summaryでは全TGのトランザクション数やエラーの合計値が出力され、Detailsでは、Master serverやslave serverの個別のトランザクション実行状況が示されています。


TG> monitor details 600
Monitoring start. [ 600 Seconds ]
[Summary] 22:56:37 TRGT:ACTV CONN:20/20 DISC:0/20 TERM:0/20 ERR:0 TPS:20
[Details]
HOSTNAME  PORT SERVER STATUS TARGET AGENT STATUS  CONN DISC TERM ERROR TPS
======== ===== ============= =================== ===== ==== ==== ===== ===
                     SYSTEM               ACTIVE 10/10 0/10 0/10     0  10
serverc  11111       ONLINE               ACTIVE 10/10 0/10 0/10     0  10

[Summary] 22:56:38 TRGT:ACTV CONN:20/20 DISC:0/20 TERM:0/20 ERR:0 TPS:20
[Details]
HOSTNAME  PORT SERVER STATUS TARGET AGENT STATUS  CONN DISC TERM ERROR TPS
======== ===== ============= =================== ===== ==== ==== ===== ===
                     SYSTEM               ACTIVE 10/10 0/10 0/10     0  10
serverc  11111       ONLINE               ACTIVE 10/10 0/10 0/10     0  10

デフォルトでは10分後に計測が終了します。「Average TPS:」の値が10分間あたりの平均TPS値になります。


[Summary] 23:06:36 TRGT:ACTV CONN:20/20 DISC:0/20 TERM:0/20 ERR:0 TPS:20
[Details]
HOSTNAME  PORT SERVER STATUS TARGET AGENT STATUS  CONN DISC TERM ERROR TPS
======== ===== ============= =================== ===== ==== ==== ===== ===
                     SYSTEM               ACTIVE 10/10 0/10 0/10     0  10
serverc  11111       ONLINE               ACTIVE 10/10 0/10 0/10     0  10

---- TRANSACTION REPORT ( SUMMARY ) ------------------

MONITORING PERIOD
~~~~~~~~~~~~~~~~~
  - Begin : Sat May 10 22:56:37 JST 2008
  - End   : Sat May 10 23:06:36 JST 2008

THROUGHPUT
~~~~~~~~~~
  Transaction name Min   Max Average
  ================ === ===== =======
  SELECT0          0ms 110ms  2.64ms
  INSERT0          0ms  94ms  9.27ms
  UPDATE0          0ms  47ms  4.76ms
  DELETE0          0ms 125ms  2.66ms

TPS
~~~
  - Total transaction count : 11954
  - Monitoring time         : 600 seconds
  - Average TPS             : 19.92

TG>

計測を途中で終了させたいような場合には「Monitor」メニューをクリックし、「Monitoring stop forcely」を選択してください。また計測期間を変更する場合は「Specify monitoring period」を選択し、計測時間を秒単位で入力してください。

7. トランザクションの終了

トランザクションを終了したい場合には、まず「Agent」メニューより「Freeze agents」を選択し、トランザクションの実行を停止させます。

続いて「Agent」メニューより「Make agents disconnect from database」を選択し、セッションを終了させてください。

以上でマルチサーバ・モードの使用方法についての説明は終了です。

  • トップ
  • TGとは
  • ダウンロード
  • 使用方法
  • サポート
  • 事例紹介
  • お知らせ
  • ライセンス
  • お問い合わせ
  • 当サイトについて
  • このエントリーをはてなブックマークに追加
  • Tweet

Copyright © 2011 haruto suzuki all rights reserved.

  • お問い合わせ
  • ライセンス
  • お知らせ
  • 事例紹介
  • サポート
  • 使用方法
  • ダウンロード
  • TGとは
  • トップ

Top > 使用方法 > マルチサーバ・モードの使い方