jmeter によるパフォーマンステスト指南
TRANSCRIPT
Copyright © CA ADvance .inc 2012
JMeter によるパフォーマンステスト指南
CAAD技術推進グループ
Copyright © CA ADvance .inc 2012
2/25
自己紹介
•株式会社シーエー・アドバンスの仲里です。(エンジニア歴3年) •技術推進グループに所属してます。 •沖縄高専卒です。 •開発環境は主にvim使ってます。
•主な業務内容 •PHPによる社内管理画面開発(SEM系、GoogleAdwords等)
•社内のインフラ整備
•CentOS上で動く、ApacheとかMySQLの保守
•NoSQL推進 •MongoDB導入
•社内の既存システムのNoSQL対応(パフォーマンスUpのため) •KyotoCabinet導入(とか目論んでたり、、、)
Copyright © CA ADvance .inc 2012
3/25
アジェンダ
① JMeter とは
②インストール方法
③使用方法
Copyright © CA ADvance .inc 2012
4/25
①Jmeter とは
Copyright © CA ADvance .inc 2012
5/25
Jmeter とは
•JMeter とは、パフォーマンス測定および負荷テストを行うツールです。多数の機能を備えていることから、WebアプリケーションおよびWebサーバの性能測定に広く利用されています。
•HTTP以外にも、FTP、LDAP、JMS(Java Message Service)、TCP接続、 メール送信などの単体テストとしても使えます。 メモ •2011年にApache のトップレベルプロジェクトに昇格しました。 Jmeter – wikipedia http://ja.wikipedia.org/wiki/JMeter
Copyright © CA ADvance .inc 2012
6/25
②インストール方法
Copyright © CA ADvance .inc 2012
7/25
インストール方法 Jmeter をダウンロードします。 ※バージョン2.7(2012/07/27現在) Apache JMeter – Download http://jmeter.apache.org/download_jmeter.cgi
ここからダウンロード
Copyright © CA ADvance .inc 2012
8/25
インストール方法 ダウンロードが完了したら、任意のフォルダにファイルを解凍してください。 解凍したディレクトから、『apache-jmeter-2.7¥bin¥jmeter.bat』を実行してください。 起動画面まで、確認できればインストール完了です。
起動画面
Copyright © CA ADvance .inc 2012
9/25
③使用方法
Copyright © CA ADvance .inc 2012
10/25
作業手順
実際に、Webサーバーに負荷をかけて、 画面表示速度の検証を行う、手順を説明します。
処理の流れは、以下になります。 ・負荷の設定 ・検証用のシナリオ作成 ・負荷テスト ・試験結果の確認
Copyright © CA ADvance .inc 2012
11/25
起動方法
起動画面
『.¥apache-jmeter-2.7¥bin¥jmeter.bat』を実行してください。
Copyright © CA ADvance .inc 2012
12/25
計測の設定
左ペインの「テスト計画」を右クリックし、 「追加」 → 「Threads(Users)」 → 「スレッドグループ」を選択します。
Copyright © CA ADvance .inc 2012
13/25
計測の設定
「スレッド数」と「Ramp-Up期間(秒)」を設定してください。 「スレッド数」:サイトにアクセスする回数(負荷の大きさ)
Ramp-Up期間(秒):何秒かけてスレッドを作るか(負荷をかける秒数)
※下記設定では10秒の間に100回のアクセスになります。
Copyright © CA ADvance .inc 2012
14/25
計測設定
左ペインの「スレッドグループ」を右クリックし、 「追加」→「リスナー」→「結果を表で表示」を選択します。
Copyright © CA ADvance .inc 2012
15/25
テスト計画の作成
左ペインの「ワークベンチ」を右クリックし、 「追加」→ 「Non-Testエレメント」→「HTTP プロキシサーバ」を選択します。
Copyright © CA ADvance .inc 2012
16/25
テスト計画の作成
左ペインの「ワークベンチ」→「HTTP プロキシサーバ」を選択し、ポートが「8080」に設定されているのを確認します。
Copyright © CA ADvance .inc 2012
17/25
テスト計画の作成
ブラウザのプロキシを下記で設定します。 アドレス:127.0.0.1 ポート:8080
Copyright © CA ADvance .inc 2012
18/25
テスト計画の作成
JMeter の画面に戻り、「開始」ボタンをクリックします。
Copyright © CA ADvance .inc 2012
19/25
テスト計画の作成 ブラウザ側で、実際に画面遷移してみましょう。※社内向け管理ツールのサイト 例)SearchSuiteTop→ログイン→Report Manager→QuickViewReport
Copyright © CA ADvance .inc 2012
20/25
テスト計画の作成
画面遷移が完了したら、JMeter の画面に戻り、「停止」ボタンをクリックします。
Copyright © CA ADvance .inc 2012
21/25
テスト計画の実行
画面上部メニューバーの「実行」→「開始」で計測を開始します。
Copyright © CA ADvance .inc 2012
22/25
テスト結果の確認 「スレッドグループ」→「結果を表で表示」をクリックすると、計測結果が表示されます。 「Sample Time」や、「平均」の数値を計測の指標とし判断を行なってください。
Copyright © CA ADvance .inc 2012
23/25
テスト計画の精査 注意点:左ペインのアクセスを行うリクエストを確認し、計測の妨げとなりそうなものは消しましょう。 例)GoogleAnalyticsへのデータ送信
Copyright © CA ADvance .inc 2012
24/25
データまとめ例 eAccelarator導入後パフォーマンスが2倍になりました!
という検証結果まとめる際、以下のように資料化してました。
Copyright © CA ADvance .inc 2012
25/25
テスト計画の保存 最後に、テスト計画を保存し、計測終了です。 チューニング前、チューニング後で見比べて検証するとき、テスト計画を残しておくと捗ります。
Copyright © CA ADvance .inc 2012
26/25
•許可なくサーバーに負荷をかけてはいけません。 •DoS攻撃と判断されアクセス禁止となる可能性が高いため、
避けましょう。
注意事項
Copyright © CA ADvance .inc 2012
27/25
•プログラムのチューニングする際、Jmeterを使えば、性能検証をする際、可視化することができます。
•楽するために使っちゃいましょう!
•再検証しやすいよう、テストパターンもあらかじめ、保存しておきしょう。
まとめ
Copyright © CA ADvance .inc 2012
28/25
ご清聴ありがとうございました。