41
日本コンピュウェア株式会社 シニアソリューションアーキテクト 福田慎 2012216テスト革命! パフォーマンステストの 画期的アプローチ

【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

日本コンピュウェア株式会社

シニアソリューションアーキテクト

福田慎

2012年2月16日

テスト革命! パフォーマンステストの 画期的アプローチ

Page 2: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

アジェンダ

1. パフォーマンステストとは?

2.より簡単に、より効果的に問題の原因を分析するは?

3.より簡単に、より効果的に負荷をかける方法は?

4. 最も効果的なパフォーマンステストとは?

Page 3: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

パフォーマンステストとは?

3

Page 4: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

Web のパフォーマンスは ビジネスの成果に直結

Source: Steve Souders @ Velocity Conference 2009 http://radar.oreilly.com/2009/07/velocity-making-your-site-fast.html

2 秒のレスポンスタイム低下 4.3 ユーザあたりの 売り上げが減少

%

400 ミリ秒の遅延

0.59 % ユーザあたりの 検索回数が減少

50 % 訪問回数あたりのページ参照回数が増加

ユーザが読み込み 時間の速いページを 経験した場合、

ページ読み込み時間を 7 秒から 2 秒に 短縮した場合、

売り上げ の増加 7–12 %

ハードウエア 費用の削減 50 %

4

Page 5: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

まだまだ大きい「地域格差」

5

5

5

Page 6: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

クラウド

プライベート パブリック

なぜパフォーマンス管理は難しくなったのか

従業員

メインフレーム

ストレージ

データセンター

Web サービス

携帯 コンポーネント

Web サーバ

App サーバ

DB サーバ

ロード バランサ

WAN 最適化

仮想/物理環境

ネット ワーク

ISP

携帯キャリア

CDN

サードパーティ/ クラウドサービス

ブラウザ

デバイス

ISP

エンド ユーザ

従業員

6

複雑化するデータセンター

仮想化 WAN最適化

他システムとの連携

複雑化するインターネット環境

クラウド SaaS CDN

携帯端末

Page 7: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

クラウド

プライベート パブリック

パフォーマンステストの定義

メインフレーム

ストレージ

データセンター

Web サービス

携帯 コンポーネント

Web サーバ

App サーバ

DB サーバ

ロード バランサ

WAN 最適化

仮想/物理環境

ネット ワーク

ISP

携帯キャリア

CDN

サードパーティ/ クラウドサービス

ブラウザ

デバイス

ISP

エンド ユーザ

従業員

7

負荷をかける

負荷テスト用 仮想ユーザ

パフォーマンスを

分析する

Page 8: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

クラウド

プライベート パブリック

パフォーマンステストの現状

メインフレーム

ストレージ

データセンター

Web サービス

携帯 コンポーネント

Web サーバ

App サーバ

DB サーバ

ロード バランサ

WAN 最適化

仮想/物理環境

ネット ワーク

ISP

携帯キャリア

CDN

サードパーティ/ クラウドサービス

ブラウザ

デバイス

ISP

エンド ユーザ

従業員

8

負荷をかける

CPU使用率・

メモリ使用率

Webサーバ

アクセス数 DB監視

負荷テスト ツールを設置

Page 9: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

クラウド

プライベート パブリック

パフォーマンステストの課題

メインフレーム

ストレージ

データセンター

Web サービス

携帯 コンポーネン

Web サーバ

App サーバ

DB サーバ

ロード バランサ

WAN 最適化

仮想/物理環境

ネット ワーク

ISP

携帯キャリア

CDN

サードパーティ/ クラウドサービス

ブラウザ

デバイス

ISP

エンド ユーザ

従業員

9

負荷をかける

CPU使用率・

メモリ使用率

Webサーバ

アクセス数 DB監視

負荷テスト ツールを設置

問題の原因が 分からない・・

推測に基づいた チューニング

クラウド環境の テストができない

不要なリソースの追加

ファイヤウォール内の ユーザしか再現できない

テスト期間が長期に及ぶ

地域毎のパフォー マンスの差が 把握できない

負荷をかけるために、 多数のサーバの設置が

必要

Page 10: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

クラウド

プライベート パブリック

パフォーマンステストをより効果的にするには

メインフレーム

ストレージ

データセンター

Web サービス

携帯 コンポーネン

Web サーバ

App サーバ

DB サーバ

ロード バランサ

WAN 最適化

仮想/物理環境

ネット ワーク

ISP

携帯キャリア

CDN

サードパーティ/ クラウドサービス

ブラウザ

デバイス

ISP

エンド ユーザ

従業員

10

負荷をかける

CPU使用率・

メモリ使用率

Webサーバ

アクセス数 DB監視

負荷テスト

ツールを設置

より簡単に、 より効果的に 問題の原因を 分析するには?

より簡単に、 より効果的に 負荷をかける

方法は?

Page 11: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

より簡単に、より効果的に 問題の原因を分析するは?

11

Page 12: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テスト時のパフォーマンス分析は難しい・・・

Webサーバ アプリケーション データベース

×

どのトランザクションが、どこで、いつエラーになったのか・・・

どこがボトルネックになっているのか・・・

CPU使用率?

アプリのログ?

Webサーバのログ? ネットワーク

使用率?

12

Page 13: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

パフォーマンス分析の次のトレンドは?

13 1993

1995

2004

2000

2007

2012

サーバ

パフォーマンス分析

ネットワーク

パフォーマンス分析

Java/.NET

パフォーマンス分析

エンドユーザ

レスポンス分析

ビジネス

サービス分析 ?

Page 14: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

クラウド

プライベート パブリック

サーバパフォーマンス分析

メインフレーム

ストレージ

データセンター

Web サービス

携帯 コンポーネン

Web サーバ

App サーバ

DB サーバ

ロード バランサ

WAN 最適化

仮想/物理環境

ネット ワーク

ISP

携帯キャリア

CDN

サードパーティ/ クラウドサービス

ブラウザ

デバイス

ISP

エンド ユーザ

従業員

14

CPU使用率・

メモリ使用率

Webサーバ

アクセス数 DB監視

Page 15: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

クラウド

プライベート パブリック

エンドユーザレスポンスの分析

メインフレーム

ストレージ

データセンター

Web サービス

携帯 コンポーネント

Web サーバ

App サーバ

DB サーバ

ロード バランサ

WAN 最適化

仮想/物理環境

ネット ワーク

ISP

携帯キャリア

CDN

サードパーティ/ クラウドサービス

ブラウザ

デバイス

ISP

エンド ユーザ

従業員

15

エンドユーザレスポンスを計測する

Page 16: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

クラウド

プライベート パブリック

パフォーマンス分析の新しいトレンド 「トランザクションパス分析」

メインフレーム

ストレージ

データセンター

Web サービス

携帯 コンポーネン

Web サーバ

App サーバ

DB サーバ

ロード バランサ

WAN 最適化

仮想/物理環境

ネット ワーク

ISP

携帯キャリア

CDN

サードパーティ/ クラウドサービス

ブラウザ

デバイス

ISP

エンド ユーザ

従業員

16

トランザクションパス分析では、各トランザクションが、どのサーバの、どのアプリケー

ションで実行されたのかを正確に記録し、問題箇所を瞬時に特定します

Page 17: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

トランザクションパス分析とは

17

CICS

MQ

EAI

SOA

DBMS

Webサーバ C/C++ Java

クライアント

Page 18: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

dynaTraceのコンセプト

18

ライフサイクル ・開発

・テスト

・運用

ビジネス ・ユーザ体感

・サービスレベル管理

・インパクト分析

分析 ・問題箇所の特定

・再現テスト不要 フルカバレッジ ・全トランザクション分析

・全ユーザ分析

エンドツーエンド ・全ての階層

・トランザクションの視点

Page 19: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

19

dynaTraceの構成と特徴

Webサーバ アプリケーション サーバ

データベース サーバ

dynaTraceは、ユーザがアクセスしたトランザクションがどこで遅延したかを特定します

dynaTrace Analysis Server

dynaTrace Client

1つのライブラリ、1つの引数、1回のリスタート

簡単なインストール

ソースコードの変更なし

自動ディスカバリーによる迅速なインプリ

スケーラビリティ

効率的なデータ保持

運用時においても利用可能な安全性

データのエクスポートとレポート

Java/.NETエージェント

Webサーバエージェント

ブラウザ エージェント

Javaスクリプト エージェント

Page 20: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

トランザクションパスのボトルネックを特定する

20

Webサーバでの処理

アプリケーションサーバでの処理

DBサーバでの処理

クライアント から実行

されたトランザクション

Page 21: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

トランザクションパスのボトルネックを特定する

21

アプリケーションサーバでエラーが発生している

サーバ内での実行時間

DBサーバ

J2EEサーバ .NETサーバ

クライアント

Page 22: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

トランザクションパスのボトルネックを特定する

22

サーバ・サーバ間の遅延分析

メソッドレベルの遅延分析

Page 23: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

問題のあるソースコードをデコンパイルする

23

デコンパイルしたソースコードを参照

CPU時間や処

理時間からボトルネックを特定

Page 24: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

より簡単に、より効果的に

負荷をかける方法は?

24

Page 25: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テストの種類

Webサーバ アプリケーション データベース

負荷テストは、その形態によって3つに分類されます

負荷テスト1.5

負荷テスト1.0

負荷テスト2.0

25

Page 26: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テスト1.0

Webサーバ アプリケーション データベース

負荷テスト1.0

短所:

• 製品として提供される(ソフトウェア、ハードウェアの導入が必要)

• 大規模な負荷テストの場合多数のサーバが必要

• “エンドユーザ”の体感を計測できない

• サードパーティの外部コンポーネント(クラウド、CDNなど)の計測ができない

• 地域によるレスポンスの違いを把握することが できない

ファイヤウォール内での負荷生成

長所:

• ファイヤウォール内のリソース管理に 優れている

• 内部システムでの負荷テストに適して いる

26

Page 27: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テスト1.5

Webサーバ アプリケーション データベース

負荷テスト1.5

短所:

• “エンドユーザ”の体感を計測できない

• アプリケーションデリバリチェーン全体での問題把握ができない

• 地域によるレスポンスの違いを把握する ことができない

• 外部からアクセスできないシステムに 対応できない

クラウドからの負荷生成

長所:

• 大規模な負荷テストが可能

• SaaSとして提供(ソフトウェア、ハードウェアが不要)

27

Page 28: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テスト2.0

Webサーバ アプリケーション データベース

短所:

• 外部からアクセスできないシステムに対応できない

クラウドからの負荷生成と

一般ユーザからの計測と分析

負荷テスト2.0

長所:

• SaaSとして提供(ソフトウェア、ハードウェアが不要)

• 大規模な負荷テストが可能

• エンドツーエンドで問題の検知が可能

• サードパーティの外部コンポーネント(クラウド、CDNなど)をすべて計測可能

• アプリケーションデリバリチェーン全体で問題の 検知と分析が可能

• 「セルフサービス」によって、任意の時間帯に 負荷テストを実施

28

Page 29: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

Compuware GomezTM Web Load Testing

Webサーバ アプリケーション データベース

Compuware GomezTM Web Load Testingは、Compuwareが準備するクラウド環境から

お客様の対象システムに負荷をかけます。同時に、一般ユーザのPCにインストールした

計測用エージェントからレスポンスタイムを計測します。

クラウドから負荷を生成

一般ユーザのPCから

パフォーマンスを計測 29

Page 30: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

最も効果的な パフォーマンステストとは?

30

Page 31: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テストとdynaTraceの統合

Webサーバ アプリケーション データベース

パフォーマンスボトルネックの分析(dynaTrace)

負荷テスト実施

31

Page 32: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テストツールとdynaTrace連携の仕組み

Webサーバ アプリケーション データベース

負荷テストツールが生成するトランザクションのヘッダにタグを付加することにより、dynaTrace

はすべてのトランザクションを個別に把握することが出来ます

dynaTrace Analysis Server

dynaTrace Client

WebサーバエージェントがHTTPヘッダのタグを認識し、APサーバに送るパ

ケットに同様のタグを付ける

dynaTraceのエージェントは同様の処理を繰り返す

32

負荷テストツールが生成するトランザクションのヘッダに「タグ」を付加して送信する

Page 33: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

遅延した負荷テスト・トランザクションを分析する

33

トランザクションID

このトランザクションは

どの処理で遅延したのか?

Page 34: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テストで発生したボトルネックを分析

34

どこでエラーに

なっているのか

Page 35: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

負荷テストで発生したボトルネックを分析

35

Page 36: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

テストログ参照 ログ内容の修正

再テスト テストログ参照 ログ内容の修正

再テスト テストログ参照

開発・運用

テスト テストログ参照 ログ内容の修正

再テスト テストログ参照 ログ内容の修正

再テスト テストログ参照 問題の分析

問題の解決

時間

問題の解決

開発・運用

テスト

時間

問題の分析

テストの繰り返し

•ダイレクトな問題分析

•テスト回数を削減

•確かな品質を確保し、

開発・運用者の作業

時間を削減

従来の手法

dyn

aTrace

による手法

従来のパフォーマンステストと dynaTraceを利用したパフォーマンステストの違い

36

Page 37: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

37

まとめ

・ITシステムの複雑化に伴い、パフォーマンステストの重要性が増しています

・パフォーマンス分析は、「トランザクションパス」のレベルまで 分析できるツールが注目されています

・負荷テスト時にトランザクションパス分析ソリューションを併用することで、負荷テストの効果を最大化し、またテスト期間を大幅に短縮することが可能です

Page 38: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

お知らせ

38

Page 39: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

39

dynaTrace AJAXエディション

dynaTrace AJAXエディションダウンロードサイト:

http://ajax.dynatrace.com/ajax/en/

dynaTrace ブラウザエージェントのほとんどの機能を無料でご利用いただくことが可能

です。下記URLからダウンロードしてご利用ください。

Page 40: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

40

dynaTrace体験セミナー開催!

Javaや.NETアプリケーションの設計・開発・テストに従事されている方を 対象としたdynaTraceの体験セミナーを開催します。 実機を用いて実際にdynaTraceに触れることができます。 この機会をぜひご利用ください。

◆日時 2012年2月29日(水)15:00-17:00(14:30開場) ◆会場 ネクストワークスラーニングセンター 東京都品川区上大崎2-27-1 サンフェリスタ目黒8F JR「目黒」駅より徒歩1分 ◆お申込み 以下のURLよりご登録ください http://offers.compuware.com/register?cid=70170000000gdsB ◆お問い合わせ 日本コンピュウェア㈱ マーケティング本部 セミナー担当 TEL:03-5473-4530 Email:[email protected]

Page 41: 【16-E-4】 テスト革命!パフォーマンステストの画期的アプローチ

Thank You