1


新しく生まれたWebアプリに対して、単純で基本的な読み込みテストを実行するのは興味深いことです。複雑すぎないでください。サイトでのログインやナビゲーションは必要ありません。事前定義されたURLのリストへの多数の同時取得要求でWebを爆撃するだけです。

私はapacheabとsiegeを探していましたがそれ本当に素晴らしく見えます-セットアップするのにほんの数分で、私のサイトに多くのgetリクエストを受け取りました、それらのプラットフォームの問題は、私がいくつかに「GET」リクエストを定義するときですこのページにアクセスするだけで、内部リソース(images、css、js)を要求することはありません。もちろん、これらのリソースをURLリストに追加することはできますが、実際の結果(#rpmなど)は得られません。

何か提案はありますか?
apache abまたはsiegeでやりたいことができますか?
私にそれをさせてくれる同様のツールを知っていますか?JMeterを見たところ、少しやり過ぎのようです。

どうも。

4

3 に答える 3

0

ブラウザでセッションを記録できるツールを試してみることをお勧めします。これらのツールは通常、各ページのすべてのリソースをキャプチャし、それらをテストに含めます。「負荷テストソフトウェア」を検索すると、多くのオプションが表示されます。私たちの製品の無料バージョン(Load Tester LITE)のプラグを挿入します。これは、説明したシナリオでうまく機能し、無制限の数のユーザーでテストできるようになります。

于 2012-09-26T13:18:02.850 に答える
0

まず、答えは次のとおりです。SiegeFAQには2つのオプションがあります。どちらも簡単です。

コメントには、「Siegeは各URLを個別に処理する」と書いています。これは、Siegeだけでなく、ブラウザの動作方法でもあります。HTMLファイルをダウンロードすることから始め、そのHTMLファイル内に他のアセット(画像、JavaScriptファイルなど)へのリンクが表示され、それらがダウンロードされます。sproxyを使用すると、ブラウザの動作を再作成して、Siegeの手順として保存できます。

次に、提案-JMeterでBadBoyを使用ます。そうすれば、Webサイトをクリックしてダウンロードをキャプチャし、JMeterを使用して再生できます。

第三に、注意点です。すべての画像やリンクなどをダウンロードすることで、Webアプリのパフォーマンスではなく、Webサーバー(Apache、IISなど)のパフォーマンスを効果的にテストできます。最も堅固な皮肉屋でさえ、おそらくあなたのウェブサーバーのパフォーマンスがすでに他の人によって確立されていることを受け入れており、ほとんど間違いなく問題になることはないでしょう。本当にこれをテストしますか?

于 2012-09-26T13:26:42.950 に答える
0

httperfを使用することになりました。
多くのセグメンテーション違反でプロセスを破壊する多くのバグがありますが、セッション(--wsesslog)を使用できる優れた機能があります。

もう1つのオプションは、siegeを使用して1つのクライアントをシミュレートし、複数のクライアントを並行して実行
することです。たとえば、テストするすべてのURLを含むurl.txtと、各ファイルの汎用リソースを含むresources.txtファイルがあるとします。 import(images、css、js)なので、このスクリプトを使用して、並行してクライアントの数をシミュレートできます。

#run X users in parallel:
i=1; 
for line in $(head -|NUMBER OF CLIENTS| urls.txt); do 
    echo $line > client$i;
    cat resources.txt >> client$i;
    let "i += 1";
done;

for f in $(ls client*); do 
    siege -c |NUMBER OF CALLS| -r 100 -f $f -b &
done;
于 2012-09-30T08:40:16.530 に答える