11
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

誰にも迷惑をかけずにJMeterを動かす一番シンプルなやり方

Posted at

JMeterはApacheソフトウェア財団が開発しているオープンソースの負荷検証ツールです。
サーバに対して指定した回数のリクエストを送り、そのレスポンスを受けることで、パフォーマンス計測を行うことができます。

プロキシを使って込み入ったシナリオを作って負荷試験を行うことができるようですが、まだ初心者なのでスモールステップで順に理解しながらやってゆくことにします。

サーバーに負荷をかけるということはサーバーにご迷惑をおかけすることになります。設定を失敗したら叱られてしまいます。なのでまずは自分のPCをWebサーバにしてやってみます。

環境

OS:Windows 10 Home 64 ビット オペレーティング システム
CPU:Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz 1.80 GHz
RAM:16.0 GB
DB:Microsoft SQL Server 2012
(SQL Server Management Studio 11.0.2100.60)

Webサーバを自分で用意する

IISを有効にする

Windows には Webサービス機能を含むIIS(Internet Information Services)がコンポーネントに含まれています。
これを使ってみます。
IISは標準では“無効”にされているため、導入するには“有効”にする必要があります。

Windowsの[スタート] - [設定] - [プログラムと機能] - [Windows の機能の有効化または無効化] の順に選択します。

image.png

image.png

image.png

[インターネットインフォメーションサービス] の□をチェックして■にしてOKボタンを押下します。
image.png

「必要な変更が完了しました。」と表示されればIISの設定は完了です。
image.png

なお、この状態だとFTPサーバなどの機能は無効になっていて今回不要なものにはチェックが入っていません。
image.png

自分のWebサービスが動いているかブラウザで表示してみる

Cドライブに \inetpub\wwwroot が生成されていることを確認します。
これがブラウザのURL入力で http://localhost と指定したときにブラウザからのリクエストに応じてWebのコンテンツを送信するルートフォルダとなります。
既に iisstart.htm が生成されていますが、

http://localhost/iisstart.htm

としなくても

http://localhost

だけで iisstart.htm の内容がブラウザに表示されることになります。

image.png

ではブラウザでURLを入力してみます。
これでJMaterのリクエスト先の(自分の)サーバが正しく動作していることが確認できました。

localhost

image.png

JMaterをダウンロード -> インストール -> 起動

予め Java をインストールしておく必要があります。
Java Downloads
ではJMaterのダウンロードを始めます。

公式サイト http://jmeter.apache.org/download_jmeter.cgi の Binaries から zip ファイルをダウンロードします。

image.png

Zipファイルを任意の場所に展開します。
image.png

bin フォルダの下に jmater.bat があるのでこれを実行します。
image.png

JMater が起動しました。
image.png

日本語で表示させるためには
[Options] - [Choose Language] - [Japanese] を選択して設定すればいいのですが、毎回この操作をやるのは面倒です。
image.png

環境変数 JVM_ARGS を設定してjamater.bat を呼び出すバッチファイルを作ってそれを使うことにします。

jmater_ja.bat
set JVM_ARGS="-Duser.language=ja"
jmeter.bat

image.png

テスト計画の作成

スレッドグループの作成

[テスト計画] - [追加] - [Threads (users)] - [スレッドグループ] を選択実行します。

image.png

名前のプリフィックスは「スレッドグループ」となっていますが任意に変更できます。
image.png

スレッド数、Ramp-Up 期間(秒)、ループ回数 などの設定値を欲張るとサーバ(ここではJMeterが動作しているPC自体のこと)に負荷をかけすぎることになります。
今回が初めてなので値は1のままでやっておきます。
負荷は様子を見ながら追い追いかけてゆきましょう。

サンプラーの設定

[スレッドグループ] - [追加] - [サンプラー] - [HTTP リクエスト] を選択実行します。

image.png

以下の設定を行います。
プロトコル: http
サーバ名またはIP: localhost
ポート番号: 80
HTTPリクエスト: GET (初期値)
パス: iisstart.htm

image.png

リスナーの作成

[テスト計画] - [追加] - [リスナー] - [統計レポート] を選択実行します。

image.png

まだリクエストを開始していないのでレポートには何も表示されていません。
image.png

テスト計画の保存

ここでいったんテスト計画を保存しておきます。

image.png

拡張子は jmx となります。
image.png

テストを開始する

[実行] - [開始]
またはアイコンの▶で
開始させます。

image.png
image.png

エラーなく実行されて統計レポートに表示されました。

image.png

設定を変えてテストを行う

ここから先はスレッドグループの設定値を変えてみたり
image.png

別のリクエスト先を用意してそちらに向けてテストをしたりしながら、JMeterのしくみを一歩づつ理解してゆくようにします。
image.png

image.png

IISを終了させておく

テストが終わったら [コンピュータの管理] - [サービスとアプリケーション] - [インターネット インフォメーション サービス (IIS)マネージャー] からIISを停止させておきます。
テストを再開する場合は「停止」から「開始」に変更するようにします。
image.png

参考

JMeterを使用して負荷テストを効率よく行う

11
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?