What’s New in MySQL Cluster 5.1

Similar documents
MySQLにおけるシステム運用時のポイント

Apache JMeterで負荷試験をしよう!

Microsoft Word - XOOPS インストールマニュアルv12.doc

目次 1. Azure Storage をインストールする Azure Storage のインストール Azure Storage のアンインストール Azure Storage を使う ストレージアカウントの登録... 7

SAMBA Stunnel(Windows) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxx 部分は会社様によって異なります xxxxx 2 Windows 版ダウンロード ボ

SAMBA Stunnel(Mac) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxxxx 部分は会社様によって異なります xxxxx 2 Mac OS 版ダウンロー

PC にソフトをインストールすることによって OpenVPN でセキュア SAMBA へ接続することができます 注意 OpenVPN 接続は仮想 IP を使用します ローカル環境にて IP 設定が被らない事をご確認下さい 万が一仮想 IP とローカル環境 IP が被るとローカル環境内接続が行えなくな

もくじ 1. 全国統一小学生テストのシステムをご利用になる前に PC の初期設定について P3 2. よくあるご質問 (1) 生徒の申し込みについて (2) 実施要項について (3) 受験票 QRコードの印刷について (4) スキャン送信について (5) 実施後報告について P4 P5 P6 P7

Cuoreテンプレート

目次 1. はじめに WEB インタフェース... 4 アクセス方法... 4 操作方法 FTP クライアント FFFTP(WINDOWS) インストール方法 アクセス方法 操作方法 CYBERD

OS の bit 数の確認方法 - Windows0 及び Windows8. Windows のコントロールパネルを開きます Windows0 の場合 スタート から Windows システムツール の コントロールパネル をクリックします Windows8. の場合 スタート から PC 設定

ご利用のブラウザのバージョンによっては 若干項目名が異なる場合があります 予めご了承ください Windows をお使いの場合 [ 表示 ] [ エンコード ] [ 日本語 ( 自動選択 )] を選択 [ 表示 ] [ エンコード ] [Unicode(UTF-8)] を選択 Firefox をご利用

memcached 方式 (No Replication) 認証情報は ログインした tomcat と設定された各 memcached サーバーに認証情報を分割し振り分けて保管する memcached の方系がダウンした場合は ログインしたことのあるサーバーへのアクセスでは tomcat に認証情報

intra-mart ワークフローデザイナ

3 アドレスバーに URL を入力し ( 移動ボタン ) をタップします 入力した URL のホームページに移動します ネットワークへのログオン 画面が表示された場合は ユーザー名 を確 認し パスワード を入力して OK をタップしてください ホームページがうまく表示されないときは Opera B

DBMSリポジトリへの移行マニュアル

WebARENA SuiteX V2 EC-CUBE 2.13 インストールマニュアル ( 標準 MySQL+ 非 SSL ) 作成 :2014 年 2 月 Ver.1.1

ダウンロードページアップデートマニュアル.ppt

目次. ご利用上の注意. アプリをインストールする. アプリを起動する. アプリの初期設定を行う. アプリのログインパスワードを変更する 6. アプリのメニューを操作する 7. ステータスを送信する 8. 定期位置通知間隔を変更する 9. 随時検索をする 0. メッセージ連絡をする. メッセージの連

KDDI ホスティングサービス G120 KDDI ホスティングサービス G200 WordPress インストールガイド ( ご参考資料 ) rev.1.2 KDDI 株式会社 1

3 ハイパーサーバサービスの諸設定を行う為の コントロールパネル のメイン画面が表示されます ウェブサイトとドメイン タブの データベース 欄にある 新規データベースを追加 をクリックします ( 新規データベースを追加 ボタンがない場合は データベース をクリックし データベース画面にある 新しいデ

提案書

ヘルスアップWeb 簡単操作ガイド

目次 メールの基本設定内容 2 メールの設定方法 Windows Vista / Windows 7 (Windows Live Mail) Windows 8 / Windows 10 (Mozilla Thunderbird) 3 5 Windows (Outlook 2016) メ

Microsoft Word - FTTH各種設定手順書(鏡野地域対応_XP項目削除) docx

メール設定

Shareresearchオンラインマニュアル

Windows 7ファイル送信方法 SMB編

ファイルのアップロード. 上メニューから [ アップロード ] を選択します. [ アップロード ] 画面に移行しますので, 以下の手順で操作を行います アップロードするファイルを選択し, 指定場所へ [ ドラッグ & ドロップ ] します ドラッグ & ドロップ ファイルがリストアップされたことを

XAMPP で CMS のお手軽 テスト環境を手に入れよう 2011/5/21 上村崇 1

( 目次 ) 1. PukiWiki インストールガイド はじめに 制限事項 サイト初期設定 PukiWiki のインストール はじめに データベースの作成 PukiWiki

アーカイブ機能インストールマニュアル

SciFinder (Web版) のエラーへの対処法

ClientManager ユーザズマニュアル

2 1: ネットワーク設定手順書 が完了後に行なってください 鏡野町有線テレビ 各種設定手順書 この手順書では以下の内容の手順を解説しています メール設定 ホームページの掲載 お客様がご利用の OS により設定方法が異なる部分があります OS をご確認の上 作業を行なってください お客

更新用証明書インポートツール 操作マニュアル 2011 年 10 月 31 日 セコムトラストシステムズ株式会社 Copyright 2011 SECOM Trust Systems CO.,LTD. All rights reserved. P-1

Microsoft Word - シャットダウンスクリプトWin7.doc

ADempiere (3.5)

2. FileZilla のインストール 2.1. ダウンロード 次の URL に接続し 最新版の FileZilla をダウンロードします URL: なお バージョンが異なるとファイル名が

Microsoft Word Proself-guide4STD+Prof.docx

改版履歴 版数 改版日付 改版内容 /03/14 新規作成 2013/03まで製品サイトで公開していた WebSAM DeploymentManager Ver6.1 SQL Server 2012 製品版のデータベース構築手順書 ( 第 1 版 ) を本 書に統合しました 2

( 目次 ) 1. WordPressインストールガイド はじめに 制限事項 サイト初期設定 WordPressのインストール ( コントロールパネル付属インストーラより ) WordPressのインストール ( 手動インス

新環境への移行手順書

クライアント証明書導入マニュアル

1 本ドキュメントが想定するネットワーク環境 本ドキュメントが想定するネットワーク環境を図に示す 各種モダリティで撮像した DICOM データは DICOM サーバに送信され データベースに登録される クライアントパソコンには InVesalius がインストールされている これらの機器はすべてネッ

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成

9 WEB監視

SimLab Plugins for SketchUp 評価版インストールおよびアクティベート方法 注意事項 評価版をお使い頂くには 評価用ライセンスでのアクティベートが必要です 評価用ライセンスファイルの取得を行い 手動でアクティベートする必要があります 各 SimLab プラグインは 評価用とし

Microsoft Word - バーチャルクラス(Blackboard)ログイン方法ガイド.docx

CubePDF ユーザーズマニュアル

OpenAM 9.5 インストールガイド オープンソース ソリューション テクノロジ ( 株 ) 更新日 : 2013 年 7 月 19 日 リビジョン : 1.8

目次 共通 ( ログイン画面 メニュー説明 パスワード再発行 ) ファイル送信 ( 九州地方整備局職員へファイルを送信する場合 ) ファイル受信 ( 九州地方整備局職員からファイルが送信された場合 ) 8 ワンタイムファイル受信 ( 九州地方整備局職員からファイル送信要求のメールを受け取った場合 )

新規インストールガイド Sophos Anti-Virus for Mac 9.7 学内利用版 本書は Download Station から Sophos Anti-Virus for Mac 9.7 の学内利用版 ( 以下 Sophos Anti-Virus とする ) をダウンロ ドし 新規イ

ログ取得についてのお願い お客様のご都合でログの内容を修正してご提供いただいた場合には 正確な調査ができかねる場合が ございます ログの内容は修正をせずにそのままお送りいただけますようお願い致します LifeKeeper ログ取得方法 ログ採取にはサーバへの多少の負荷が予想されますので 比較的に負荷

LAN DISK NarSuSの登録方法

SAMBA Remote(Mac) 編 PC にソフトをインストールすることによって OpenVPN でセキュア SAMBA へ接続することができます 注意 OpenVPN 接続は仮想 IP を使用します ローカル環境にて IP 設定が被らない事をご確認下さい 万が一仮想 IP とローカル環境 IP

改版履歴 版 発行年月日 改版内容 作成者 /02/08 初版 NEC ビッグローブ /02/ クライアント AP のバージョンアップを追加 NEC ビッグローブ /07/ 接続設定にメッシュストレージ ST/HA の場合を追加

Microsoft Word - CBSNet-It連携ガイドver8.2.doc

9. システム設定 9-1 ネットワーク設定 itmはインターネットを経由して遠隔地から操作を行ったり 異常が発生したときに電子メールで連絡を受け取ることが可能です これらの機能を利用するにはiTM 本体のネットワーク設定が必要になります 設定の手順を説明します 1. メニューリスト画面のシステム設

フォルダの作成 使用率 (%) が表示されます 新規フォルダの作成をクリック フォルダ名 を入力し 作成 ボタンをクリック ユーザー設定で 使用言語の選択ができます ( 日本語 英語 中国語 ) ファイルのアップロード 1 ファイルをアップロードするフォルダをダブルクリックする このフォルダにアップ

Attain3 インストール説明書

インストールマニュアル

スライド 1

(Microsoft Word - VisionPro\203C\203\223\203X\203g\203\214\201[\203V\203\207\203\223\203}\203j\203\205\203A\203\ doc)

共有フォルダ接続手順 1 共有フォルダ接続ツールのダウンロード 展開 CSVEX のトップページから共有フォルダ接続ツールの zip ファイルをダウンロードします ダウンロードした zip ファイルを右クリックして すべて展開 を選択します (Windows 環境では zip ファイルを解凍しなくて

新規インストールガイド Sophos Anti-Virus for Mac 9.7 学外利用版 本書は Download Station から Sophos Anti-Virus for Mac 9.7 の学外利用版 ( 以下 Sophos Anti-Virus とする ) をダウンロ ドし 新規イ

Microsoft Word - クライアントのインストールと接続設定

Microsoft Word - ManagerIPChange.doc

ServerView RAID Manager VMware vSphere ESXi 6 インストールガイド

PowerPoint プレゼンテーション

SimLabプラグインは各機能を15回分評価版として試用できます

目次 1. はじめに... 1 動作環境... 1 その他 他の人が利用する ID を発行したい... 2 ユーザー ID 作成を作成しましょう パソコンのデータを自動でアップロードしたい... 4 PC 自動保管機能を使用してみましょう 不特定多数の

1. 信頼済みサイトの設定 (1/3) この設定をしないとレイアウト ( 公報 ) ダウンロードなどの一部の機能が使えませんので 必ず設定してください 1 Internet Explorer を起動し [ ツール ]-[ インターネットオプション (O)] を選択します 2 [ セキュリティ ] の

注 ) CDをセットしてから プログラムが起動するまでの時間はパソコン CDドライブの性能によって差がありますが 概ね10 秒程度です 1 分間待ってもプログラムが起動しない場合は もう一度 CDをセットしなおしてください それでも起動しない場合 CDからの自動起動が無効になっている可能性があります

パソコンソフト使い放題 クライアントユーザーマニュアル 最終更新日 2013 年 10 月 21 日

任意の間隔での FTP 画像送信イベントの設定方法 はじめに 本ドキュメントでは AXIS ネットワークカメラ / ビデオエンコーダにおいて任意の間隔で画像を FTP サー バーへ送信するイベントの設定手順を説明します 設定手順手順 1:AXIS ネットワークカメラ / ビデオエンコーダの設定ページ

Thunderbird 利用 Windows Mac 共通 Thunderbird を利用した移行は Web メールのフォルダを階層化している場合 移行ができない場合があります この場合の移行は Outlook を利用した移行で行ってください メールの移行マニュアル 本書は Office 365 導

注意 インストール中に ユーザアカウント制御 ( 以下 UAC といいます ) の実行確認画面が表示されることがあります 表示された場合ははいをクリックして インストールを進めてください なお 管理者以外の場合 管理者への昇格を求める UAC 画面が表示される場合がありますので 管理者アカウントのパ

<MW-400k > InterSec/MW400k アップデート適用手順書 2017 年 8 月 1 版

インストール要領書

目次 第 1 章 リモート接続手順 ログイン SSL-VPNシステムにアクセスする ACTIVEXモジュールのインストール ( 初回接続時 ) ActiveXモジュールのインストール

Microsoft Word - CBESNet-It連携ガイドver8.1.doc

Microsoft PowerPoint ï½žéł»å�’å–¥æœ�ㇷㇹㅃㅀ㇤ㅳㇹㅋㅼㅫ曉逃.ppt [äº™æ‘łã…¢ã…¼ã…›]


目次 第 1 章概要....1 第 2 章インストールの前に... 2 第 3 章 Windows OS でのインストール...2 第 4 章 Windows OS でのアプリケーション設定 TP-LINK USB プリンターコントローラーを起動 / 終了するには

ServerView RAID Manager VMware vSphere ESXi 5 インストールガイド

<4D F736F F D208AC888D B836A F C91808DEC837D836A B81698AC7979D8ED A E646F6

<8B9E93738CF092CA904D94CC814090BF8B818F B D836A B B B816A2E786C73>

インストール手順 2 セットアップの種類 [ 標準インストール (S)] [Thunderbird を既定のメールプログラムとして使用する (U)] にチェックを入れ [ 次へ (N)] をクリックします インストール手順 3 セットアップ設定の確認 [ インストール (I)] をクリックします 2

Microsoft Word - winscp-LINUX-SCPを使用したファイル転送方法について

PowerPoint プレゼンテーション

Transcription:

オープンソースカンファレンス 2006 Tokyo/Fal Apache JMeter で性能試験をしよう! 水野浩典オープンソース コンピテンシ センター日本ヒューレットパッカード株式会社 2006 年 10 月 28 日 2006Hewlet-PackardDevelopmentCompany,L.P. Theinformationcontainedhereinissubjecttochangewithoutnotice 内容 性能試験の重要性 ApacheJMeter 性能試験方法 AP サーバのチューニングのヒント 2 平成 18 年 10 月 30 日 1 Copyright 2006HPcorporatepresentation.Alrightsreserved.

性能 負荷試験の重要性 必要な理由 性能 負荷試験は 単体テストや結合テストでは発見することが出来なかった問題を見つけるために必ず行う必要があります 必要な理由 ( その 2) 実際には 想定外の負荷が掛かることも考慮し 想定外の負荷試験を実施することも重要となります 本当の理由 システムのカットオーバー後の夜中や休日に 緊急に呼び出されないようにするため! 3 平成 18 年 10 月 30 日 現実に発生している問題 性能試験が そもそも計画に入っていない 納期に間に合わないので 機能試験はしたが性能試験まで出来なかった 性能 負荷試験を実施するには 商用製品が必要なことが分かったが 高いので買えない 性能 負荷試験の重要性をプロジェクト内で認識して 実施するようにして下さい Free で使用できる ApacheJMeter を御使用下さい 試験ツールの使い方が良く分からない とりあえず 性能 負荷試験をしてみたが 試験結果が正しいかよく分からない? 以前に性能試験をしてみたが 大変だったので出来ればやりたくない なんだか性能が出ない... 今から 御説明致します 経験によるところも多いのですが 性能 負荷試験のセオリーについて御説明致します 4 平成 18 年 10 月 30 日 2 Copyright 2006HPcorporatepresentation.Alrightsreserved.

ApacheJMeter 概要 JMeter とは JMeter は Jakarta プロジェクトが開発しているパフォーマンス計測 / 負荷テストツール オープンソース 無償 100% purejava なので Windows Linux など 実行環境に依存しない GUI を用いて操作できる 大量のクライアントからのリクエスの生成 / 実行が可能 HTTP(HTTPS) データベース FTP WEB サービスなどの様々なプロトコルでのパフォーマンス検証が可能 エラー発生の有無 期待したデータがレスポンスに含まれているかの確認なども簡単に行うことが可能 Web ブラウザ上で行った操作をテストのシナリオとして記録し それをテスト スクリプトとして繰り返し利用 簡単に編集可能 6 平成 18 年 10 月 30 日 3 Copyright 2006HPcorporatepresentation.Alrightsreserved.

web システムの性能 負荷試験 通常 web システムにおいては複数の web ブラウザからの多くのリクエストを送出 複数のブラウザの代わりに JMeter から擬似的にリクエストを送出 web ブラウザ Load Balancer Apache WebServer Database Storage 7 平成 18 年 10 月 30 日 JMeter の動作概要 実行 JMeter にテストプランを設定して これを実行する テストプラン 手動で作成するか プロキシ機能を用いて自動で作成 テストプランの中で 生成するスレッド数と実行回数を指定 複数クライアントの実行 Java のスレッドを用いて 複数クライアントの同時実行を実現 テストプラン *.jmx 結果ファイル *.jtl Thread (Client) HTTP リクエスト 測定対象の web サーバ 8 平成 18 年 10 月 30 日 4 Copyright 2006HPcorporatepresentation.Alrightsreserved.

ApacheJMeter 入門 JMeter のインストール ファイルをダウンロードし 適当なディレクトリに展開するだけです 1.JMeter のダウンロード Jakarta サイトの以下ページより最新の JMeter バイナリをダウンロード htp://jakarta.apache.org/site/binindex.cgi#jmeter_binaries 最新版は JMeter2.2 です ここでは jakarta-jmeter-2.2.zip をダウンロード 2.JMeter のインストールダウンロードした zip/tar ファイルを JMeter をインストールしたいディレクトリに展開 10 平成 18 年 10 月 30 日 5 Copyright 2006HPcorporatepresentation.Alrightsreserved.

JMeter の起動 JMeter を展開してできたディレクトリにある bin ディレクトリの JMeter 起動ファイル jmeter.bat をダブルクリックして下さい jmeter.bat 正しく起動されていれば コマンドプロンプトと以下の通りの画面が表示されます テスト計画実際のテストシナリオを作成する場所 ワークベンチテストに使用しない要素を一時的保管 HTTP プロキシを動作させる場所 11 平成 18 年 10 月 30 日 1. スレッドグループの作成 JMeter のテスト実行計画を作成する場合 まずユーザ ( スレッドグループ ) を作成します テスト計画を選択して 右クリックします 追加 スレッドグループを選択します わかりやすい名前を付けます 実施すべきテストプランに沿ったスレッド数 ( ユーザ数 ) 等の設定をします 12 平成 18 年 10 月 30 日 6 Copyright 2006HPcorporatepresentation.Alrightsreserved.

2. デフォルト HTTP リクエストの作成 スレッド共通の HTTP リクエストのデフォルト値を設定エレメントの作成より設定します その他設定すべき設定エレメントがあれば設定します 作成したスレッドグループを選択して 右クリックします 追加 設定エレメント HTTP リクエスト初期値設定を選択します テスト対象のサーバ名 /IP を定義します 13 平成 18 年 10 月 30 日 3. サンプラーの作成 実際に HTTP リクエスト処理を行うものとして サンプラーを作成します 作成したスレッドグループを選択して 右クリックします 追加 サンプラー HTTP リクエストを選択します わかりやすい名前を付けます アクセス対象は 設定エレメントで設定してます ここでは 実際の HTTP リクエストのパス等のみ設定します 14 平成 18 年 10 月 30 日 7 Copyright 2006HPcorporatepresentation.Alrightsreserved.

4. リスナーの作成 テスト結果の表示と保存のためにリスナーを追加します リスナーは 各々のテストプランにおいて必要なものを設定します 作成したスレッドグループを選択して 右クリックします 追加 リスナー 統計レポートを選択します 結果をファイルに保存できます サンプラーの処理結果がそれぞれのリスナーに応じた形で動的に表示されます 15 平成 18 年 10 月 30 日 5. テストプランの保存 テストプランを実行する前に テストプランの保存をします メニューのファイル テスト計画を保存または ファイル テスト計画に名前をつけて保存を選択します わかりやすい名前をつけて保存します 16 平成 18 年 10 月 30 日 8 Copyright 2006HPcorporatepresentation.Alrightsreserved.

6. テストプランの実行 テストプラン実行開始の準備が完了後 テストプランの実行を開始します メニューの実行 開始を選択 または Ctrl + R を押します テストプランの実行後 テストが正常に行われているかどうかを確認するには 設定したリスナーを参照します 17 平成 18 年 10 月 30 日 7. 実行結果の確認 テストが終了したらリスナーにおいて テスト実行結果を確認します 追加 リスナー 統計レポートを選択します 18 平成 18 年 10 月 30 日 9 Copyright 2006HPcorporatepresentation.Alrightsreserved.

実行イメージ テスト計画スレッドグループ (3 スレッド 4 回 ) リクエスト初期値設定統計レポートスレッド Ramp-up 期間 19 平成 18 年 10 月 30 日 HTTP リクエスト ApacheJMeter 実践編 10 Copyright 2006HPcorporatepresentation.Alrightsreserved.

内容 1.JMeter のチューニング 2. タイマ 3. テストプランの自動生成 21 平成 18 年 10 月 30 日 JMeter のチューニング 問題 JMeter で数多くのスレッド ( クライアント ) を実行すると 容量不足になり以下のようなエラーが発生することがあります ERROR-jmeter.threads.JMeterThread:Testfailed! java.lang.outofmemoryerror:javaheapspace JMeter のチューニングが必要です! 起動スクリプト ($JMETER_HOME/bin/jmeter.bat) を編集します Java ヒープの大きさを大きくして下さい setheap=-xms256m -Xmx256m テストとマシンのスペックに応じてチューニングします 22 平成 18 年 10 月 30 日 11 Copyright 2006HPcorporatepresentation.Alrightsreserved.

タイマ JMeter がリクエストを送信するときデフォルトでは 間髪を入れずにリクエストを送信します タイマを利用することで それぞれの処理の間に間隔を入れることが出来ます 左フレームの スレッドグループ を選択した後 右クリックまたは 編集 メニューか追加 タイマを選択して 定数タイマ や 定数スループットタイマ 等を追加します 定数タイマ は 待ち時間をミリ秒で指定します 定数スループットタイマ は 1 分間に送出するリクエスト数で指定します 例 )60 を設定すると 1 秒間に 1 つのリクエストが送出されます 23 平成 18 年 10 月 30 日 タイマを使用したときの実行イメージ テスト計画スレッドグループ (1 スレッド 4 回 ) リクエスト初期値設定統計レポートスレッド タイマ HTTP リクエスト 24 平成 18 年 10 月 30 日 12 Copyright 2006HPcorporatepresentation.Alrightsreserved.

テストプランの自動生成 JMeter には ブラウザから行った操作をテスト計画に自動的に変換してくれる HTTP プロキシサーバ機能があります プロキシを設定 シナリオの実行 手順 1. スレッドグループの作成手順 2.HTTP リクエスト初期値設定エレメントの追加手順 3.HTTP プロキシサーバエレメントの追加手順 4.Web ブラウザのプロキシサーバを設定手順 5. テスト計画の記録手順 6. テスト計画の編集手順 7. リスナーの追加手順 8. テスト計画の保存手順 9. テストの実行 port:8080 port:80 25 平成 18 年 10 月 30 日 プロキシモードで動作 テストプランの 自動生成 テスト対象サーバ 性能試験 13 Copyright 2006HPcorporatepresentation.Alrightsreserved.

性能試験概要 性能試験を実施する時のフローの概要 1. 事前調査 ( 想定負荷 試験環境 試験項目 ) 2. 環境の準備 (HW SW 試験データ ) 3. 試験プラン作成と実施 4. 結果の分析と確認 ここで性能が出ないと大変です! 27 平成 18 年 10 月 30 日 性能試験での実例 実際のプロジェクトでの実例 (with 脚色 ) A さんは 下記のシステム用件で性能試験をすることになりました 応答時間は 2 秒以内 最大同時ユーザー数は 100 人 試験シナリオ ( ログイン 商品検索 カートに商品を入れる 購入 ログアウト ) 試験環境とシナリオは 完璧に準備しました ところで どのような試験をすればよいのだろう??? 最大同時ユーザが 100 人なので JMeter を用いて 100 スレッドで試験すれば良いだろう あまり多く実行すると危ないので とりあえず 実行回数は 1 人につき 1 回にしよう! そして 全てのリクエストの応答時間が 2 秒以内であればシステム要件を満たすことになる これで僕の仕事も終了だ! 試験開始! 28 平成 18 年 10 月 30 日 14 Copyright 2006HPcorporatepresentation.Alrightsreserved.

結果 応答時間がとんでもない値になってしまいました キャッシュが原因かなぁ!? もう一回実施しよう! あれ? 変わらないなぁ? あと もう一回実施する うんん 変わらないなぁ! やっぱ JMeter はだめだなぁ! 高いけど商用製品を買うしかない! 待ってください! JMeter は悪くありません なぜ このようなことになってしまったのでしょうか? 何が悪かったのでしようか? 29 平成 18 年 10 月 30 日 A さんが実施した試験とは? どのような試験を実施したことになるの? 100 人が同時に 下記シナリオを実施 ログイン 商品検索 カートに挿入 購入 ログアウト その上 100 人が 各操作を必死で休み無く実行 これってどんな負荷? 人気商品を特定の時刻に売り出した時のような負荷 30 平成 18 年 10 月 30 日 15 Copyright 2006HPcorporatepresentation.Alrightsreserved.

A さんが実施した試験の概要 テスト計画 スレッドグループ リクエスト初期値設定 統計レポート 連続実行 100 スレッド : : 同時実行 31 平成 18 年 10 月 30 日 A さんの試験の改善方法 テスト計画スレッドグループリクエスト初期値設定統計レポートスレッド Ramp-up 期間 : : 32 平成 18 年 10 月 30 日 16 Copyright 2006HPcorporatepresentation.Alrightsreserved.

負荷試験方法のセオリー 実際の試験では 何スレッドで試験をすれば良いのでしょうか? シナリオは何回実施すれば良いのでしょうか? よほど自信がある場合以外は 以下のように小さな負荷から試験を実施して下さい 1. 想定負荷の検討 2. 基礎データの取得 3. 小さな負荷試験 4. 想定負荷の負荷試験 5. 高負荷試験 高負荷で問題が発生した場合は 基礎データと比較することにより 解決の糸口を見つけることが出来ます 33 平成 18 年 10 月 30 日 想定負荷の検討 実際のプロジェクトなどでは 性能の目標値が無かったり 不明確であることが多々あります 実例 最大ユーザー数は 100 人 応答時間は 2 秒以内 同時ユーザ数は? ユーザー数は 100 人 秒間 50 個の処理 50 個の単位は? 最低 確認すべき項目 ユーザー数はシステムに登録される人数? それとも同時にシステムにアクセスする人数? JMeter で試験をする場合のスレッド数とは 同時アクセス数に対応します スループットの単位は HTTP リクエスト? それともシナリオ単位? JMeter での試験結果の集計は HTTP リクエスト単位で行われます 応答時間の目標値 34 平成 18 年 10 月 30 日 17 Copyright 2006HPcorporatepresentation.Alrightsreserved.

基礎データの取得 1 ユーザがシナリオを 1 回だけ実行した時のリクエストの応答時間を測定します 1.1 つのブラウザからシナリオを実行した時の応答時間の測定 2.JMeter から 1 スレッド 1 回のシナリオ リクエストの間隔 1 秒で実施し 各リクエストの応答時間を計測 何が分かるの? システムにおける最高の応答時間が分かります 1 の試験の結果が 応答時間の要件を満たしていない場合 これ以上試験をする必要はありません 早速 遅い原因を調査して下さい 2 の試験の結果が 1 の試験結果と大きく異なっている場合は JMeter の設定などを確認してください 35 平成 18 年 10 月 30 日 性能基礎試験 いよいよ負荷をかけていきます あせる気持ちを抑えて以下の順番で試験を実施しましょう 試験 A :1 多重複数回 (1 スレッド 100 シナリオ ) 応答時間が だんだん悪くなるようなことはありませんか? スループットを記録して下さい 試験 B:2 多重複数回 (2 スレッド 100 シナリオ ) 平均応答時間は どの程度悪くなりましたか? スループットは 試験 Aの 2 倍ぐらいの値になっていますか? 試験 C:4 多重複数回 (4 スレッド 100 シナリオ ) 平均応答時間は どの程度悪くなりましたか? スループットは 試験 Aの 4 倍ぐらいの値になっていますか? 36 平成 18 年 10 月 30 日 18 Copyright 2006HPcorporatepresentation.Alrightsreserved.

性能基礎試験って? 疑問? 試験 A 試験 B 試験 C を実施しましたが これらの試験は何のために行ったのでしょうか? 次にどのような試験をすれば良いのでしょうか? 基礎性能試験を実施した意味 システムの限界性能に対して 試験 A から試験 C による負荷がどの程度の負荷になっているかを見るために実施しています 分析方法 システムが限界性能に達したときに スループットの値や応答時間の値がどのように変化するかの傾向を知ることによって 試験 A から試験 C の負荷の程度を予想することが出来ます 37 平成 18 年 10 月 30 日 典型的な性能試験結果 18 スループットと応答時間 スループット (request/ 秒 ) 応答時間 ( 秒 ) 16 14 12 10 8 6 4 要求性能 4 8 16 12 5 15 12.5 2 0 2 1 0.50.6 0.7 1.2 0 5 10 15 20 25 30 クライアント ( スレッド ) 数 スループット理想性能スループット応答時間 基礎データ 1 スレッドで試験 1 秒間に 1 つのリクエストを送信 平均応答時間は 0.5 秒 38 平成 18 年 10 月 30 日 19 Copyright 2006HPcorporatepresentation.Alrightsreserved.

試験結果の例 スループット ( リクエスト / 秒 ) 応答時間 ( 秒 ) 9 8 7 6 5 4 3 限界性能 スループットと応答時間 性能の劣化 4 3.5 2 2 1.4 1 1 基礎データ 0.5 0.6 0 0 1スレッドで試験 0 1 2 3 4 5 6 7 8 9 1 秒間に1つのリクエストクライアント ( スレッド ) 数を送信 スループット理想性能スループット応答時間 8 6 4 平均応答時間は 0.5 秒 39 平成 18 年 10 月 30 日 性能試験のコツ シナリオの作成 各リクエストの間には間隔を入れる 各スレッドの開始時間をずらす スレッドグループの Ramp-up 時間は長めに設定する 基礎データの取得 最初に ブラウザから実行して見てください 期待する応答時間内で処理できていますか? 1 スレッドでシナリオを 1 回だけ実行して 各リクエストの応答時間が要件を満たしていることを確認してください 性能基礎試験 1 スレッド複数回の実行 2 スレッド 4 スレッドと 徐々に負荷をかけて下さい 実施している性能試験が 限界性能に対してどの程度の負荷を与えているかを把握しながら試験を実施して下さい 40 平成 18 年 10 月 30 日 20 Copyright 2006HPcorporatepresentation.Alrightsreserved.

性能試験のコツ : その 2 早めの性能試験のすすめ 出来れば プロトタイプの作成時や 開発時から負荷試験を実施することをお勧めします 単体機能の負荷試験も可能です 41 平成 18 年 10 月 30 日 ApplicationServer チューニングのヒント 21 Copyright 2006HPcorporatepresentation.Alrightsreserved.

基礎的なチューニング JVM のヒープメモリーの拡張 どのような時に拡張する必要があるの? OutOfMemory エラーの発生 java verbosegc でヒープの使用量を確認すると 最大値の 80% ぐらい使用している 設定 -Xmx でヒープメモリーの最大値を設定して下さい リクエストの通り道の確保 試験の多重度と同程度ありますか? AP サーバのスレッド数 JDBC コネクション数 43 平成 18 年 10 月 30 日 性能が出ない場合の対処 AP サーバの CPU の使用率が低い場合 データベースの応答時間の問題 データベースへのクエリに遅いクエリはありますか? Java アプリケーション内での共有リソースに対するロックの問題 データベースへのクエリの応答時間に問題がない場合は 調査してみて下さい AP サーバの CPU の使用率が高い場合 アプリケーション内で CPU を消費 ( 浪費 ) する処理の有無を調査して下さい 44 平成 18 年 10 月 30 日 22 Copyright 2006HPcorporatepresentation.Alrightsreserved.

AP サーバチューニングのヒント 性能が出ない場合 Java Xmx の設定はされていますか? AP サーバのスレッド数 JDBC コネクション数はリクエストの多重度と同程度確保されていますか? データベースの応答時間に問題はないですか? Java アプリケーション内で共有リソースのロックの問題は発生していませんか? 45 平成 18 年 10 月 30 日 まとめ 性能試験の重要性 ApacheJMeter 性能試験方法 AP サーバのチューニングのヒント 46 平成 18 年 10 月 30 日 23 Copyright 2006HPcorporatepresentation.Alrightsreserved.

付録 参考 URL URL ApacheJMeter htp://jakarta.apache.org/jmeter/ ApacheJakarutaProjectUserManual htp://jakarta.apache.org/jmeter/usermanual/index.html ApacheJakarutaProject ユーザマニュアル ( 日本語訳 ) htp://cgi0.biwa.ne.jp/~yabuta/study/jmeter/usermanual/ JMeter エンコード指定パッチ htp://testkei.secret.jp/blog/jablog/archives/cat163/java/jmeter/index.html 動的リクエストの利用 ( 複数のリクエストパラメータの利用方法 ) htp://wiki.apache.org/jakarta-jmeter/jmeterfaq#head-1680863678257fbcb85bd97351860eb0049f19ae 書籍 月刊 JavaWorld( ジャバワールド )2005 年 12 月号 48 平成 18 年 10 月 30 日 24 Copyright 2006HPcorporatepresentation.Alrightsreserved.

関連 URL 日本ヒューレットパッカード オープンソース &Linux htp://www.hp.com/jp/linux/ 49 平成 18 年 10 月 30 日 エレメント : スレッドグループ クライアントの設定 全てのテストプランはこれから始まります この下にサンプラーやリクエストといったエレメントを追加していくことで様々な設定を行います 名前 : テストケース名 サンプラーエラー後のアクション : サンプラー実行中にエラーが発生した際のアクション続行 ( デフォルト )/ スレッド停止 / テスト停止 スレッド数 :( デフォルト 1) JMeter が生成するクライアント数 ( アクセスユーザ数 ) Ramp-Up 期間 ( 秒 ):( デフォルト 1) 全てのスレッドが起動するまでの時間 ループ回数 :( デフォルト 1) 各スレッドにて実行するテストケースの回数 スケジューラ : チェックを入れると時間指定などの詳細な設定が可能 ( デフォルト OFF) 50 平成 18 年 10 月 30 日 25 Copyright 2006HPcorporatepresentation.Alrightsreserved.

Ramp-up 期間の設定について スレッドグループの Ramp-up 期間 ( 秒 ) とは? 最初のスレッドが起動してから 最後のスレッドが起動するまでの時間を指定します スレッド数秒以上の値を設定することをお勧めします 例えば スレッド数 3 で Ramp-up 期間が 6 秒 の場合は 6 3=2 秒間隔でスレッドが生成されます 2 秒 6 秒 スレッド 51 平成 18 年 10 月 30 日 プロキシサーバの使用 ファイヤーウォールやプロキシサーバ越しにテストする場合 ファイヤーウォールやプロキシサーバの名前やポート情報を JMeter の起動コマンドに与えて起動します jmeter.bat H [ プロキシサーバのホスト名 ] P[ ポート ] u[ ユーザ名 ] p[ パスワード ] port:8080 port:80 プロキシーサーバ テスト対象サーバ 52 平成 18 年 10 月 30 日 26 Copyright 2006HPcorporatepresentation.Alrightsreserved.

タイマ タイマを スレッドグループ に付け加えるか あるいは HTTP リクエスト 等に付け加えるかによって そのタイマの影響の範囲が異なります HTTP リクエスト に 定数タイマ をつけた例 この場合 タイマが適用されるのは リクエスト A のみです リクエスト B には タイマは適用されません したがって 右の例の場合は 以下のように動作します 実行 10 秒待機 リクエスト A リクエスト B スレッドグループ に 定数タイマ をつけた例 この場合は スレッドグループ 以下の全てのサンプラー ( この例では リクエスト A と リクエスト B ) との間で タイマによって指定された分だけ待機時間が発生します したがって 右の例の場合は 以下のように動作します 実行 10 秒待機 リクエスト A 10 秒待機 リクエスト B 53 平成 18 年 10 月 30 日 リクエストパラメータの文字化け 問題 問題 シナリオ作成の際 HTTP リクエストに日本語データを含むと文字化けを起こしてしまう 例 ) パラメータ 123456ABCabc あ と入力する リクエストパラメータが 123456ABCabc /b> と文字化けする 原因 URL エンコード & デコードは UTF-8 を使用しており 日本語に対応していない仕様 対策 以下のどちらかの対応をすることで本問題に対応することができます ただし オープンソースですので 参考程度とし 使用の際は個人責任となります サーバー側でもリクエスト エンコーディングを UTF-8 で揃える 修正モジュールの適用 (J@Blog) 詳細手順に関しては 別紙をご覧下さい 参考 URL:htp://testkei.secret.jp/blog/jablog/archives/cat163/java/jmeter/index.html 54 平成 18 年 10 月 30 日 27 Copyright 2006HPcorporatepresentation.Alrightsreserved.

HTTP 認証マネージャ HTTP 認証マネージャは HTTP 認証 (Basic 認証 ) を利用できます 追加 設定エレメント HTTP 認証マネージャを選択します 例えば htp://localhost/admin/ に HTTP の Basic 認証がかけられているとします また その認証 ID とパスワードがそれぞれ admin と admin だとします その場合は 上記のような設定すれば HTTP の Basic 認証をパスすることができます パスワード の部分は自動的に伏字になります 55 平成 18 年 10 月 30 日 動的リクエスト 3. 動的リクエストの利用 事前に登録しておいた複数のユーザをスレッド起動毎に動的に切り替えたい場合に ユーザ変数を利用すると大変便利です 1 人のユーザではなく 複数のリクエストパラメータとしてユーザを用いて負荷試験をする際に使用します パラメータ情報を記述した外部ファイルを読み込ませ 動的にユーザパラメータを切り替える方法を使います 手順としては ユーザパラメータと外部ファイルの利用となります この手順は JMeter の FAQ で紹介されています 詳しくは 下記 URL 先をご参考下さい JMeterFAQ How doiuseexternaldatafilestoinmytestscripts? htp://wiki.apache.org/jakarta-jmeter/jmeterfaq#head-1680863678257fbcb85bd97351860eb0049f19ae 56 平成 18 年 10 月 30 日 28 Copyright 2006HPcorporatepresentation.Alrightsreserved.

動的リクエスト 手順 1.JMeter の起動を起動して スレッドグループを作成します 手順 2. スレッドグループを選択し 前処理 ユーザパラメータを追加します 変数の追加 を選択して 変数を設定します 記述形式 :${_StringFromFile( ファイル名 )} 名前 user_id password ユーザ _1 ${_StringFromFile(userid.txt)} ${_StringFromFile(password.txt)} 57 平成 18 年 10 月 30 日 動的リクエスト 手順 3. スレッドグループを選択し サンプラー HTTP リクエストを追加します リクエストで送るパラメータの 追加 を選択して 変数を設定します 記述形式 :${ 名前 } 名前は 手順 2 のユーザパラメータの名前 名前 user_id password 値 ${user_id} ${password} 58 平成 18 年 10 月 30 日 29 Copyright 2006HPcorporatepresentation.Alrightsreserved.

動的リクエスト 手順 4.$JMETER_HOME/bin 以下にパラメータを記述したファイルを配置します $JMETER_HOME とは JMeter をインストールしたフォルダを示します ファイルの中身は テキスト形式で以下のような記述となります 日本語も OK です -user_id.txttaro jiro saburo -password.txtpass1 pass2 pass3 手順 5. テストを実行します ファイルの内容は スレッド起動毎に上から 1 行づつ読み込み 最後まで行くと最初のパラメータを再度読み込みます 上の例では START 1 回目 :taro/pass1 2 回目 :jiro/pass2 3 回目 :saburo/pass3 4 回目 :taro/pass1( 最初のパラメータ ) 59 平成 18 年 10 月 30 日 テストプランの自動生成 手順 1.JMeter の起動を起動して スレッドグループを作成します まず テスト計画 の中にスレッドグループを作成します テスト計画 を右クリックし 追加 スレッドグループを選択します テスト計画 の下に スレッドグループ が追加されます 60 平成 18 年 10 月 30 日 30 Copyright 2006HPcorporatepresentation.Alrightsreserved.

テストプランの自動生成 手順 2.HTTP リクエスト初期値設定エレメント 共通設定がある場合は スレッドグループにあらかじめ追加しておきます スレッドグループ上で右クリックした後 追加 設定エレメントより HTTP リクエスト初期値設定を追加します 61 平成 18 年 10 月 30 日 テストプランの自動生成 手順 3.HTTP プロキシサーバエレメント ワークベンチ上で右クリックした後 追加 NonTest エレメントより HTTP プロキシサーバを追加します 62 平成 18 年 10 月 30 日 31 Copyright 2006HPcorporatepresentation.Alrightsreserved.

テストプランの自動生成 手順 3.HTTP プロキシサーバエレメント ポートの指定 JMeter がプロキシサーバとしてリクエストを受け付けるポート番号を指定します ( デフォルトは 8080 番 ) テスト計画に挿入するパターンと 除外するパターンの指定テスト計画に必要な URL と 除外したい URL のパターンを指定します URL の指定は Perl 形式の正規表現を用います [ テスト計画に挿入する URL パターンの例 ] *index.jsp [ テスト計画から除外する URL パターンの例 ] 画像ファイル :*.gif や *.jpg や *.png など CSS ファイル :*.css Java スクリプト :*.js 63 平成 18 年 10 月 30 日 テストプランの自動生成 手順 4.Web ブラウザのプロキシサーバの設定をします JMeter がインストールされているマシンのブラウザのプロキシサーバの設定をします 例えば InternetExplorer であれば ツール インターネットオプション 設定 LAN の設定より行えます 入力欄 ポート には HTTP プロキシサーバ詳細設定画面で入力したのと同じポート番号を指定してください [InternetExplorer のプロキシ設定 ] LAN にプロキシサーバを使用するにチェックを入れます アドレスは 自分自身のアドレス (127.0.0.1) ポートは HTTP プロキシサーバで設定した値を入れます ここでは 8080 番 64 平成 18 年 10 月 30 日 32 Copyright 2006HPcorporatepresentation.Alrightsreserved.

テストプランの自動生成 手順 5. テスト計画の記録 HTTP プロキシサーバ画面の 開始 ボタンを押すと JMeter がプロキシサーバとして動作し始めます 65 平成 18 年 10 月 30 日 テストプランの自動生成 手順 5. テスト計画の記録 手順 4 にてプロキシの設定を行ったブラウザにて 実際にテスト対象ページを閲覧 操作します 注意点 1.URL にミスがあったり余分なページを閲覧してしまった場合は 手動で修正や削除が可能です 2.Web ブラウザによる巡回が終わったら JMeter の HTTP プロキシサーバ で [ 停止 ] ボタンをクリックして記録を終了します もし 停止する前にブラウザを閉じてしまうとその動作も記録されてしまいます 66 平成 18 年 10 月 30 日 33 Copyright 2006HPcorporatepresentation.Alrightsreserved.

テストプランの自動生成 手順 5. テスト計画の記録 プロキシサーバ を停止させ テスト計画が記録されていることを確認します プロキシサーバ の起動後から 停止 ボタンを押し プロキシサーバ を停止します テスト計画の スレッドグループ 以下に結果が組み込まれているのが確認できます 67 平成 18 年 10 月 30 日 テストプランの自動生成 手順 6. テスト計画の編集 自動的に追加された スレッドグループ 下の HTTP リクエスト に余分なものがある場合は そのリクエストを右クリックして [ 削除 ] を選択します リクエストをクリックすれば URL の修正などが行えます CGI などの動的コンテンツで サーバに渡すパラメータがある場合はここで指定を行います 68 平成 18 年 10 月 30 日 34 Copyright 2006HPcorporatepresentation.Alrightsreserved.

テストプランの自動生成 手順 7. リスナーの追加 試験結果を見るために 必要なリスナーを追加します ここでは [ グラフ表示 ] と [ 統計レポート ] のリスナーを追加しました 手順 8. テスト計画の保存 作成したテスト計画を保存します 69 平成 18 年 10 月 30 日 テストプランの自動生成 手順 9. テストの実行 スレッドグループ の [ スレッド数 ] や [ ループ回数 ] などの値を調整してから実行します また 実行結果をクリアするには 実行 メニューの 全て消去 を選択します 70 平成 18 年 10 月 30 日 35 Copyright 2006HPcorporatepresentation.Alrightsreserved.

スループットとユーザ数の関係 例えば スループットの目標値が 100 リクエスト / 秒である場合 JMeter でこの負荷を実現するにはどのような試験をすればよいのでしょうか? 100 スレッドで実行する場合は? 各リクエストが 1 秒おきに実行されるように設定します 定数スループットタイマー で 60req/ 分に設定します 200 スレッドで実行する場合は? 各リクエストが 2 秒おきに実行されるように設定します 定数スループットタイマー で 30req/ 分に設定します 50 スレッドで実行する場合は? 1 秒で 2 つのリクエストが実行されるように設定します 定数スループットタイマー で 120req/ 分に設定します thread このようにスレッド数とリクエストの間隔を調整します 1 秒 リクエスト 71 平成 18 年 10 月 30 日 試験を実施する前に 注意 各試験の前には以下のような事前試験を実施して下さい 試験前の事前処理 測定するシナリオを複数回実行する 理由 システムが保持しているキャッシュに値を入れたり Java のコードのコンパイル動作を事前に実施するため 注意 試験時にかける負荷に合わせた事前処理をすることをお勧めします 72 平成 18 年 10 月 30 日 36 Copyright 2006HPcorporatepresentation.Alrightsreserved.

37 Copyright 2006HPcorporatepresentation.Alrightsreserved.