SUPってなに?
SUPってなに?
2012.05.16

パフォーマンス計測用のJavaアプリ「JMeter」で負荷テストをしてみる。その1

鳥よし

こんにちは。こないだ結婚したばかりの鳥よしです。
鳥よし
※ 鳥よしの結婚式のニュース記事はこちら
https://liginc.co.jp/news/archives/140

数年の歳月を経て、今再びブログの大地に降り立ちます。(Are you ready ?)

最近、負荷テストでJMeterを使用する機会が増えてきたので、自身へのメモとしても残しておこうと思います。

負荷テストをしたいアプリケーションは既にある前提で、何回かに分けて書いていこうと思います。

(決してブログが書きたくなくて、延命措置として分割しているわけではありません。 へへ・・)

さて、まずは何をするにもJMeterのインストール

1.ダウンロード

下記からBinaryのzipファイルをダウンロード

http://jmeter.apache.org/download_jmeter.cgi

2.起動

ダウンロードしたファイルを解凍し、「[解凍したフォルダ]/bin/jmeter.bat」を実行します。

起動するとこんな画面↓

3.シナリオの作成

どういったルールで負荷をかけるかのシナリオを作ります。

ツリー上のテスト計画をクリックし、名前を自分の分かりやすいように設定しておきます。

それでは、まずは大枠を作りとしてツリー上のテスト計画にカーソルを合わせ右クリック。

追加→Threads(Users)→スレッドグループ を選択

ツリー上にスレッドグループが追加されるのでクリック

今の時点で下記のようになると思います。

[スレッドプロパティの説明]

  1. スレッド数・・・シナリオを何スレッドで同時に行うか
  2. Ramp-Up期間(秒)・・・①のスレッドを生成する時間
  3. ループ回数・・・①、②の条件を何回繰り返すか

僕ははじめ「スレッド数」を「Ramp-Up期間」内に生成し、「ループ回数」繰り返すと勘違いしていたのですが、

「スレッド数」*「ループ回数」を「Ramp-Up期間」内に生成するが正解です。

ある日 スレッド数=10 Ramp-Up期間=1 ループ回数=30000 なんてやったら大変なことになりました。

あまつさえ、「これは俺が使ってるPCがダメなんだ。」なんて考える始末だったことは内緒です。

ちなみに、スケジューラにチェックを入れると、スケジューラの設定ができるようになります。

複数のシナリオを同時に実行させるときや、複数端末からJMeterでアクセスさせる際などに設定します。

・・・

ここまで書いてて、次の「スレッドグループの設定」が一番大変なんじゃないかということに気が付きました。

読む人も疲れちゃうから、次回でいいですかね・・・へへ・・・。

ということで、次回に続きを書こうと思います。

 

続きはこちら↓

https://liginc.co.jp/programmer/archives/2087