番外編
Visual StudioでのJava負荷テストをJMeterと比較してみた
株式会社アークウェイ
黒石高広
2011/1/6
.NETだけの開発ツールと思われがちなVisual Studio。実は、その負荷テスト機能はWebアプリ全般で使えるのでJMeterと比べてみました
Visual Studioは.NETだけの開発ツールではない
今回の主な内容 ・Visual Studioは.NETだけの開発ツールではない ・Visual StudioのWebアプリ向け負荷テスト機能とは ・Visual Studioを利用したJava負荷テストのやり方 ・JMeterとの違い |
皆さんはアプリケーションの負荷テストとしてどのようなツールを使っているだろうか。
Javaの負荷テストツールとしては「JMeter」が有名である。JMeterは、Apache Software Foundationで開発されているオープンソースのJavaアプリケーションであり、Webサーバに対して複数のHTTPリクエストを送信し、負荷を掛けることができるツールだ。
JMeterの詳細について知りたい方は、下記記事などを参考にしていただきたい。
今回紹介するのはJMeterではなく、Visual Studioを利用したJavaアプリケーションへの負荷テストだ。「え!? Visual Studioって.NETの開発にしか使えないのでは?」と思われる読者の方もいると思うが、実は今回紹介するテスト機能のようにVisual Studioのいくつかの機能は、.NET開発以外でも利用可能である。
まずは、Javaアプリケーションに対する負荷テストのツールとしても使用できるVisual Studioの負荷テスト機能の概要と、JMeterとどのように違うのか解説しよう。
Visual StudioのWebアプリ向け負荷テスト機能とは
Visual Studioでの負荷テストは下記2つの機能を組み合わせて実施できる。
■ Webパフォーマンステスト機能
Webパフォーマンステストは、Internet ExplorerからWebアプリケーションに対して行ったユーザーの操作を記録し、再現する機能だ。このWebパフォーマンステストは、Webサーバに対するHTTPリクエストを記録する仕組みである。そのため、Webサーバ側のアプリケーションで使われるプログラミング言語は、ASP.NETやJava、PHP、Ruby、Perlなどの技術に関係なくテストを実行できる。
また、このWebパフォーマンステスト機能では、あくまでHTTPリクエストだけが記録される点にも注意してほしい。つまり、Webブラウザ上のJavaScriptは再現できないので、「Ajaxアプリケーションの動作を記録させて再現する」というテストには使用できない。
■ 負荷テスト機能
負荷テスト機能は、Webパフォーマンステスト機能を実行する同時ユーザー数や使用するWebブラウザの割合、ネットワーク形態などを指定できるテスト機能だ。
Webパフォーマンステスト機能のように、ほかのテスト機能を呼び出せるため、HTTPだけでなくLDAPやSOAPなどのプロトコルを利用したテストも呼び出すことが可能な仕組みとなっている(ただし、C#などの.NETを利用した拡張が必要となる)。
■ まずは試用版で
これらのWebパフォーマンステスト機能と負荷テスト機能を組み合わせて利用することで、Visual StudioからJavaアプリケーションに対する負荷テストができるようになる。
なお、負荷テストの機能を利用するには、「Visual Studio Ultimate Edition」(バージョン 2010の場合)が必要となる。幸いなことにUltimate Editionは試用版をダウンロードできるので、まずは試用版で検証可能だ。
また本稿では、Visual Studio 2010のバージョンで執筆しているが、負荷テスト機能はバージョン2005から提供されているので、2010以前のバージョンを使っていても試すことができる。
次ページでは、Visual Studioを使った負荷テストの流れを確認してみよう。
1-2 |
Index | ||||||
|
Java Solution全記事一覧 |
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|