連載
» 2015年01月23日 14時14分 公開

連載:アプリケーションの運用監視:第3回 APIの活用とロードテストの実施 (4/4)

[亀川和史,著]
前のページへ 1|2|3|4       

Visual Studio Onlineを使用した性能測定

Visual Studio Onlineを使ったクラウドベースのロードテスト

 以下では、本稿で使用したスクリーンショットを採取するためにVisual Studio Ultimate 2013のロードテスト機能を使用した。テストにローカルPCを使った場合、組織内のプロキシサーバーの性能や契約している回線の帯域がトラフィックの上限になるため、外部のWebサイトの負荷テストには制限が発生する。

 Visual Studio 2013では「Web パフォーマンスとロード テストのプロジェクト」を作成し、その設定画面でVisual Studio Onlineを指定することにより、Azureのデータセンターがある場所からアプリに負荷を掛けられる。Visual Studio Onlineを使用することにより、組織内の帯域が上限になるという問題を回避できるのだ。

Visual Studio Onlineロードテスト機能の設定画面 Visual Studio Onlineロードテスト機能の設定画面
ソリューションエクスプローラーで[Solution Items]フォルダーの下にある[Local.testsettings]項目をダブルクリックすることで、[テストの設定]ダイアログが表示される。なお、ロードテストを行う方法については「アプリのロード テスト」が参考になる。
  (1)負荷テストのコンピューターとしてVisual Studio Onlineを使用する。

 しかし、単一のURLに負荷を掛けたいだけであれば、Visual Studio OnlineのWeb UIを使用することにより、これをもっと簡単に実行できる。

Visual Studio Onlineの負荷テスト機能設定画面 Visual Studio Onlineの負荷テスト機能設定画面
  (1)負荷テスト対象のURL。
  (2) テストを識別する名前。
  (3) 負荷テストを実行する最大ユーザー数。
  (4) 負荷テストを実行する時間(短くすればそれだけ単位時間当たりのユーザー数が多くなり、負荷が高くなる)。
  (5) 思考時間(リクエストが発行される間隔)。
  (6) アクセスするブラウザーの比率。
  (7) テスト開始。

 テスト対象のURL、負荷テストを実行する最大ユーザー数、テスト時間、思考時間、ブラウザーの比率(IEとChromeを20%単位で設定可能)を設定し、[Test Now]ボタンをクリックすればテストが開始される。このテストでは単一のURLにしかアクセスできないこと以外にも最大同時実行ユーザー数、テスト実施時間が短めに設定されているなどの制約があるが、お手軽という意味ではお勧めだ。

 テスト対象のURLはDDoS攻撃と間違えられないように、自身が所有するサイトか、サイト所有者の許可を取った上で行おう。なお、Visual Studio(IDE)での負荷テストにはこのような制限事項はなく、Azureのデータセンターから負荷を掛けることが可能だ。

Visual Studio Onlineでの負荷テスト実行中の画面と完了画面
Visual Studio Onlineでの負荷テスト実行中の画面と完了画面 Visual Studio Onlineでの負荷テスト実行中の画面と完了画面
テスト実行中は上記の画面になり、実行中の様子が表示される。終了後は下の画面にロードテストの実行結果が表示される。
  (1)テスト結果概要。
  (2) 平均応答時間。
  (3) 平均リクエスト時間。
  (4) 実施したテストをVisual Studioのソリューションとしてダウンロード。

 実行完了すると、上記のレポートが表示される。Visual Studio Onlineで実行したテストのソリューションはダウンロードして、そのままVisual Studioで開くことが可能だ。ソリューションファイルをひな型として、高度な負荷テストを構築することも可能だ。

Azureポータルで負荷テスト結果を確認 Azureポータルで負荷テスト結果を確認
負荷テストを実施した結果はAzureの新ポータルもしくは、Visual Studioで確認することが可能だ。
  (1)Webテストの概要情報。
  (2) サーバー応答時間推移。

[コラム]Visual Studio 2015 Previewにおけるロードテスト機能の強化点

 Visual Studio 2015 Previewではロードテスト機能の実行結果をVisual Studioから直接参照できるようになった。まだプレビューであるため、正式版でどうなるかは分からないが、実行データをVisual Studioから参照できるのは非常に便利だ。ぜひ試してみてほしい。

Visual Studio 2015 Previewから参照したロードテストの実行結果 Visual Studio 2015 Previewから参照したロードテストの実行結果
  (1)性能/スループット/アプリ詳細を選択。
  (2) 時系列におけるグラフ。


[コラム]Application Insightsとモバイル統合

 第1回の記事で紹介したように、Application InsightsではiOSやAndroidアプリのモニタリングや障害解析を行えなかった。これに対応して、マイクロソフトはHotkeyAppを買収し、Application Insightsに統合することでiOSおよびAndroidに対応することを発表した(「Microsoft acquires HockeyApp」を参照)。

 早ければ来月にもApplication Insightsと統合されるとのことなので、近い将来Azureポータルで一元管理することも可能だろう。


 3回という短い間でNew RelicとApplication Insightsの紹介を行った。本記事はNewRelic、Application Insightsの一部を紹介したにすぎない。ここに紹介していない機能も多くあるし、日々機能強化が続けられている。どちらも無償で始められるので、どちらを使うにしてもサーバー運用情報取得効率化のためにぜひ試してみてほしい。

「連載:アプリケーションの運用監視」のインデックス

連載:アプリケーションの運用監視

前のページへ 1|2|3|4       

Copyright© Digital Advantage Corp. All Rights Reserved.

編集部からのお知らせ

8月8日10時30分〜16時30分の間、システムメンテナンスのため記事の一部表示や資料のダウンロードができなくなります。ご理解のほどよろしくお願いいたします。

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。