Jmeter2.3.1をMacで動かす
0.改訂履歴
- 2007.12.11 新規作成
1.はじめに
このドキュメントでは,Jmeter2.3.1をインストールし,簡単な負荷テストを実施した上で,グラフ表示を見ながら状態を確認するまでの一連の処理を実施してみる. スレッドグループの作成,サンプラーはHTTPリクエストを用い,確認方法としてApacheのアクセスログを見ながらの確認となる.
2.インストール
- 以下の公式サイトで,ダウンロードする.
- Apache JMeter
- ダウンロードしたモジュールは以下の通り.
- アーカイブを展開する.
- 展開したファイルを確認する.
- binフォルダ以下に,ApacheJMeter.jarファイルがあるので,それをダブルクリックで開く.
- 次のような画面が表示される.
- これでインストール完了.
2.簡単なテストを実行する
- JMeterを実行するためには,テストのシナリオを作成する必要がある.
- マスは,テスト計画で,スレッドグループを作成する.
- スレッドグループは,以下の通り.
- ここでは,大量アクセスを実行する為のスレッド数と,単1つのシナリオの繰り返し実行回数を設定する.
- スレッド数
- 1接続分を1スレッドとしてカウントし,10を設定すると10ユーザが接続している事をエミュレーションする事となる.
- Ramp-Up
- 全てのスレッドを起動するために必要な時間を指定する.
- スレッド数10,Ramp-Upを1と指定すると,1秒間の間に10スレッド起動する.
- スレッド数10,Ramp-Upを5と指定すると,5秒間の間に10スレッド起動する. つまり,1秒で2スレッド起動する鵜事になる.
- スレッド数
- とりあえずは,テストなのでスレッドを10,繰り返し回数を2とする.
- 次に,サンプラーと呼ばれる,リクエストを実行するモジュールを指定する.
- 今回は,HTTPのレスポンステストを行うので,HTTPリクエストを実行する.
- HTTPリクエストの詳細情報を投入する.
- このサンプルでは,http://www.ujp.jp/index.phpをリクエストする事となる.
- 次に,結果をレポートするためのモジュール,リスナーを設定する.
- 今回は,視覚的に解るので,「グラフ表示」を使用する.
- グラフ表示では,詳細画面が次のようになっている.
- 設定する場所は,特にない.
- ここまでで,最低限の設定は完了.
3.テストの実施
- ここまでの手順で,テストシナリオを作成できたので,テストを開始してみる.
- メニューから,[実行]を選択する.
- これまで設定したシナリオを保存指定ない場合,このようなダイアログが表示される. 保存する場合には[はい]を選択する.
- 実行開始後,グラフ表示を選択してみると,次のような画面になる.
- アクセステストについて,その応答時間がグラフ化されている.
- Apacheのアクセスログをみると,以下のように記録されている.
- テストは,スレッド数10,ループ回数2なので,20回分のアクセスが記録されている.
4.レスポンスを計測してみる
- 応用として,次のようなテストを実施してみた.
- 1回目 同時10ユーザでのアクセスを2回.
- 2回目 同時10ユーザでのアクセスを10回
- 3回目 同時10ユーザでのアクセスを20回
- 4回目 同時10ユーザでのアクセスを20回
- 結果は,次のようになっている.
- このグラフをみると,緑色スループットが,右肩上がりになっているので,テストを繰り返すとレスポンスが悪化しているようである.
- ただし,これはApacheの起動設定(StartServers,MinSpareServers,MaxSpareServersあたりの)パラメータによって,Apache起動時のコストが掛かっている為,不定期な動きをしているようである.
- しばらく時間を置いて,続いて同じ条件で5〜7回目を実行してみた結果が,次の通りである.
- 先にApacheのプロセスが起動している為,パフォーマンスが大きく劣化しない事が確認できた.
- ここまでで,単純なテストは完了.