jMeter-テスト計画の監視
この章では、JMeterを使用してWebサーバーを監視するテスト計画を作成する方法について説明します。モニターテストの用途は次のとおりです-
モニターは、ストレステストやシステム管理に役立ちます。
ストレステストとともに使用されるモニターは、サーバーのパフォーマンスに関する追加情報を提供します。
モニターを使用すると、サーバーのパフォーマンスとクライアント側の応答時間の関係を簡単に確認できます。
システム管理ツールとして、モニターは1つのコンソールから複数のサーバーを監視する簡単な方法を提供します。
監視にはTomcat5以降が必要です。テストの目的で、Tomcat7.0.42サーバーを監視します。Java Management Extension(JMX)をサポートする任意のサーブレットコンテナをテストできます。Tomcatサーバーを監視するためのテストケースを書いてみましょう。まず、Tomcatサーバーをセットアップしましょう。
Tomcatサーバーのセットアップ
まず、Tomcatサービスのステータスを開きます。これを行うには、ユーザーの構成ファイルを編集します。<TOMCAT_HOME>/conf/tomcat-users.xml。このファイルには、次のようにtomcat-usersセクション(コメント付き)が含まれています-
<tomcat-users>
<!--
<role rolename = "tomcat"/>
<role rolename = "role1"/>
<user username = "tomcat" password = "tomcat" roles = "tomcat"/>
<user username = "both" password = "tomcat" roles = "tomcat,role1"/>
<user username = "role1" password = "tomcat" roles = "role1"/>
-->
</tomcat-users>
このセクションを変更して、adminロール、manager、manager-guiを追加し、ユーザー「admin」を割り当てる必要があります。改訂ファイルは以下の通りです−
<tomcat-users>
<role rolename = "manager-gui"/>
<role rolename = "manager-script"/>
<role rolename = "manager-jmx"/>
<role rolename = "manager-status"/>
<user username = "admin" password = "admin" roles = "manager-gui,manager-script,manager-jmx,manager-status"/>
</tomcat-users>
次に、Linuxの場合はTomcatサーバー<TOMCAT_HOME> /bin/startup.shを起動し、Windowsの場合は<TOMCAT_HOME> /bin/startup.batを起動します。開始したら、ブラウザに次のリンクを入力して、Tomcat監視が機能することを確認します-
http://localhost:8080/manager/status?XML=true
ブラウザに認証ウィンドウが表示されます。関連するTomcatログインとパスワードを入力します(この場合はadminです)。すると、ブラウザにTomcatの実行状態が以下のように表示されます。
上のスクリーンショットから、いくつかのことがわかります-
URLで、XML = true(大文字と小文字の区別に注意)を使用すると、JMeterが機能するために必要な監視Tomcatをクリーンに表示できることに注意してください。
また、デフォルトで2つのコネクタがあることに注意してください。一般的に使用されるAJPコネクタはmod_jkApache HTTPDフロントモジュールと結合され、HTTPコネクタはポート8080を介してTomcatに直接アクセスするために一般的に使用されるコネクタです。
JMeterテスト計画を書く
テスト計画を書いてTomcatサーバーを監視しましょう-
テスト計画の名前を変更する
/home/manisha/apache-jmeter2.9/bin/jmeter.shをクリックして、JMeterウィンドウを開きます。
[テスト計画]ノードをクリックします。
次の手順で説明するように、スレッドグループを追加します。
スレッドグループの追加
右クリック Test Plan → Add → Threads(Users) → Thread Group。スレッドグループは、テスト計画ノードの下に追加されます。
十分なサンプルが生成されるように、ループカウントを永久(またはいくつかの大きな数)に変更します。
HTTP認証マネージャー
「追加」→「構成要素」→「HTTP許可マネージャー」を選択して、HTTP許可マネージャーをスレッドグループ要素に追加します。この要素は、Tomcatサーバーのステータスを確認するためにブラウザーから要求された認証を管理します。
HTTP認証マネージャーを選択します。
以下の詳細を編集します-
Username − admin(tomcat-users.xmlファイルの構成によって異なります)
Password − admin(tomcatusers.xmlファイルの構成によって異なります)
他のフィールドは空のままです。
サンプラーの追加-HTTPリクエスト
ユーザーを定義したので、次に、ユーザーが実行するタスクを定義します。HTTPリクエスト要素を追加します。
マウスボタンを右クリックして、[追加]メニューを表示します。
「追加」→「サンプラー」→「HTTP要求」を選択します。
次に、ツリーでHTTPリクエスト要素を選択します。
下の画像のように次のプロパティを編集します-
この要素には次の詳細が入力されます-
Name −サーバーステータス
Server Name or IP −ローカルホスト
Port − 8080
Path − / manager / status
Parameters−「XML」という名前のリクエストパラメータを大文字で追加します。小文字で「true」の値を指定します。
Optional Tasks −サンプラーの下部にある「モニターとして使用」にチェックを入れます。
コンスタントタイマーを追加する
サーバーのステータスを定期的に要求するには、各要求の間に時間間隔を空けるコンスタントタイマーを追加します。[追加]→[タイマー]→[一定のタイマー]を選択して、このスレッドグループにタイマーを追加します。
[スレッド遅延]ボックスに5000ミリ秒を入力します。一般に、5秒より短い間隔を使用すると、サーバーにストレスがかかる可能性があります。モニターを実稼働環境にデプロイする前に、許容可能な間隔を確認してください。
リスナーを追加
テスト計画に追加する必要がある最後の要素はリスナーです。2種類のリスナーを追加します。1つは結果をファイルに保存し、もう1つは結果のグラフィカルビューを表示します。
スレッドグループ要素を選択します。
シンプルデータライターリスナーの追加追加→リスナー→シンプルデータライター。
出力ファイルのディレクトリとファイル名を指定します(この場合は/home/manisha/work/sample.csvです)
テスト計画要素の[追加]→[リスナー]→[結果の監視]を選択して、別のリスナーを追加しましょう。
テスト計画を実行する
次に、上記のテスト計画をmonitor_test.jmxとして保存します。[実行]→[開始]オプションを使用して、このテスト計画を実行します。
出力を表示する
結果は/home/manisha/work/sample.csvファイルに保存されます。次の画像のように、モニター結果リスナーにグラフィカルな結果を表示することもできます。
グラフの両側にキャプションがあることに注意してください。左側はパーセントで、右側は死んでいる/健康です。メモリラインが急激に上下する場合は、メモリのスラッシングを示している可能性があります。このような状況では、BorlandOptimizeItまたはJProbeを使用してアプリケーションのプロファイルを作成することをお勧めします。見たいのは、ロード、メモリ、スレッドの規則的なパターンです。異常な動作は通常、パフォーマンスの低下または何らかのバグを示します。