web-dev-qa-db-ja.com

アプリケーションをどのようにロードテストしますか?

アプリをロードテストするためにロードする最も効果的な方法は何ですか?主なポイントは、アプリケーションが適切な速度で実行されている状態で、一度にサポートできるユーザー数を決定することです。

22
Jacob Schoen

私が見つけた最も包括的な負荷テストソフトウェアは HP LoadRunner です(bit.lyリンクは申し訳ありませんが、HPリンクは恐ろしく、正しく動作しません)。これは非常に柔軟性があり、負荷テストからさまざまな種類のレポートを生成できます。また、負荷テストのためにマシンのグループを連携して動作させることもできます。他のツールが悪いわけではありませんが、 Apache JMeter がおもちゃのように見えます。

4
carson

httperf 主にまた ApacheベンチマークツールAB

(および重複クエリとキャッシュミスをキャッチするための大量の計装。)

シンプルで効果的であり、ギガビットイーサネット上のサーバーに接続されたクアッドコア+マシンから大量のトラフィックを生成できます。また、レート制限などのクールな機能も備えています。

本当に空想を得たい場合は、httperfを使用してHTTPトラフィックを記録および再生できます。

5
Aiden Bell

Microsoft Web Capacity Analysis Tool(WCAT)は 報告によると IISチームが選択したツールです

4
mvark

ツールを調べるための4つの基準を公開します。それらの多くは、パフォーマンステストアプリケーションのオープンソースと商用の領域で利用できます。

  1. アプリケーションでインターフェイスを実行しますか?無料ですが、インターフェイスは一体型であり、アプリを完全に実行できない可能性のあるツールがたくさんあります。商用ツールは、オープンソースのものよりも幅広いプロトコル/インターフェースをサポートしています
  2. レポートは私のニーズに合っていますか?テストを実行し、結果を分析のために何らかの意味のある形式にまとめて、要件を満たしているかどうかを判断するために何日も費やす必要があることほどイライラすることはありません。繰り返しになりますが、これは商用ツールがオープンソースツールの鼻を打つ領域です。
  3. 私のチームには、ツールを使用するための技術的なスキルがありますか?ハードルを乗り越えたり、パフォーマンステストのプロセス、分析、さらに別の言語/ツールを同時に学習したりするのは望ましくありません。現実的になります。
  4. テストインフラストラクチャで実行されますか?要件を確認してください。特定のOSとバージョンが記載されている場合は、それを使用するか、ツールを使用しないでください。インストールや操作の要件が無視されていることを発見するためだけに誰かが問題を抱えて電話/電子メールを送信する場合、ツールのサポートがよりイライラします。

番号1〜3は重要です。これらの3つのいずれかをお見逃しなく、最も高価な商用ツールを購入し、最も高価なコンサルティング会社を雇ってそれを展開している可能性があります-ドライバーのバットエンドで釘を打って捕まえられたくない単に、上司がネイルガンはあなたが建設するように依頼された家にとって高価なツールであるとあなたに言ったからです(注:市販のテストツールのように、ネイルガンはしばしばレンタル可能です)

3
James Pulley

グラインダー は、強力で柔軟性があり、スクリプト可能なオープンソースの負荷テストフレームワークです。積極的に開発されており、他のいくつかのオプションと比較して比較的浅い学習曲線を持っています。

2
JasonBirch

それはそれがどれほど複雑かによる。非常に複雑な場合、おそらくもっと複雑なものが必要になりますが、Webサイトのキーページを要求する複数の wget インスタンスを生成するスクリプトを使用する一般的な動的Webサイトでは機能します。

1
Thomas Bonini