12

私は会社のWebサイトを突然ストレス/負荷テストする任務を負っていますが、そうすることについては何も知りません。私がグーグルで「ウェブサイトの負荷テストを行う方法」を検索するたびに、さまざまな企業やソフトウェアが戻ってきて、物理的に負荷テストを実行します。

今のところ、負荷テストの前に何を考慮に入れるべきか、サイト内のどのページに対して負荷をテストする必要があるか、どのようなものが必要かなど、実際に負荷テストを設定する方法に興味があります。テストを行うときに監視します。私たちのWebサイトは、個別のデータベースサーバー(IIS 7 Webサーバー、SQL Server 2000 db)を備えた多層システム上にあります。負荷をテストするためにWebサーバーとデータベースサーバーの両方を監視したいと思いますが、Webサーバーの負荷テストを行うシナリオを設定するときは、データベースにクエリを実行するページを使用して、データベースサーバーの負荷を確認する必要があります。同時に。

Webサーバーとデータベースサーバーは通常同時にテストされますか、それとも別々のテストとして実行されますか?

ご覧のとおり、私は操作全体についてかなり無知なので、これをどのように行うかについての刺激は非常に役立ちます。

参考までに、私はPylotをいじくり回していて、サイトに対してシナリオを作成して実行することができましたが、結果で何を探すべきか、または作成したシナリオがサイトで測定する価値のあるシナリオであるかどうかはわかりません。

前もって感謝します。

4

7 に答える 7

3

JMeterをチェックしてください。始めるのは少し難しいと思いましたが、テストをセットアップしたら、簡単に実行できます。ここには、分散テストを設定する方法に関するチュートリアルがあります。

于 2009-12-02T16:46:09.287 に答える
2

一般的に言えば、負荷テストは、さまざまなユーザー負荷を伴う一般的なシナリオで実行されます。

たとえば、50 人のユーザーが毎秒 10 分間ログインするテストと、5 ユーザー/秒から 1000/秒まで、またはサイトにとって意味のある数字までスケールアップする別のテストを設定できます。

編集:
アイデアは、実際のアプリケーションがすべての層で使用されているときにどのように動作するかをテストすることです。
負荷テストを行う場合は、必ず (時間と費用を) 優れたツールに投資してください。

于 2009-12-02T16:50:13.180 に答える
1

これは、これを始めるのに役立つツールのリストです。あなたは最初にそれを読みたいと思うのは正しいです、ストレステストは複雑になる可能性があります。

http://www.softwareqatest.com/qatweb1.html

于 2009-12-02T16:46:10.083 に答える
1

既存のサイトまたはその代替サイトのステップ 1 は、収集して分析することです。統計学。

中央限界の外にある場合、最初のモデリング予測は意味がありません。(とにかく厳しいアプローチで出てきます)

いずれの場合も、NOC の誰かと協力して作業する必要があります。理由があまりにも明白であり、ヒーロー アプローチをサポートするここのスレッドは、あなたの会社にとって良くありません。特に、あなたが行くにつれて学ぶので。ヒーローになれないとは言いませんが、NOC は、意思決定会議でひざまずくパフォーマンス数値に対して好戦的であることで有名です。

于 2011-01-24T00:03:16.597 に答える
1

この質問への回答からわかるように、負荷テストに使用できるプログラムはたくさんあります。私の経験では、Siegeが私の個人的なお気に入りであることがわかりました。シンプルで、負荷テストを行うために必要なほとんどのオプションを提供します。使用例を次に示します。

seige -c 10 -t 1M http://www.google.com

これにより、1 分間に 10 件の同時リクエストが google.com に送信されます。複数のページをテストする場合は、URL のリストを含むファイルを提供することもできます。

テストしたい URL が 1 つまたは複数ある場合は、seige のようなツールが適していることに注意してください。より複雑なフロー (ユーザーのログイン、エントリの送信、ログアウトなど) をテストする場合は、selenium などを使用する必要があります。

于 2010-04-28T05:21:12.457 に答える
0

まず、 NeoloadのようなWebストレスツールを入手します。

多数のユーザーアクティビティをモデル化し、予測されたユーザーパターンに対応するようにテストにバイアスをかけ、適切と思われる負荷をスケールアップします。データベースに対してクエリを実行し、応答時間を測定しても、ユーザーエクスペリエンスについては何もわかりませんむしろ、ユーザーアクティビティをモデル化することで、実際の負荷の下でサーバー/システムがどのように応答するかを正確に測定できます。これが生成されるものです。

ユーザーアクティビティのモデリングはかなり複雑になる可能性がありますが、Neoloadのような優れたストレスツールを使用すると、サーバーにアクセスするマシンの正確な動作を厳密にモデリングできます。理想的には、通常と同じようにネットワークトラフィックを作成するので、ロードバランサーを持っている場合は必ずヒットしてください。

于 2009-12-02T16:46:11.883 に答える
0

Visual Studio Testエディションの方がテストしやすいことがわかりました(無料ではありませんが)。ブラウジングセッションを単一のテストとして記録することができ、Webサーバーとデータベースの両方からperfmon統計を簡単に読み取ることができます。

実行する必要がある最初のステップは、IISログを調べて、そこで何が起こっているかを確認することです。Log Parser 2は、IISログをデータベースに取り込むために使用するツールです。

これをクエリすると、ピーク負荷がわかります。

次のステップは、テストの目標を1つか2つ策定することです。Webサイトが1秒あたり1ページまたは2ページのXリクエストのスパイクロードを処理できることを確認する必要がありますか?

サイトの顧客を増やすつもりですか。その場合は、現在のIISログの読み込みを取得し、その範囲のページ要求をシミュレートできるWebテストをフォーラム化しますが、予想される同時ユーザーに対しては読み込みます。

サイトの機能を変更する場合は、ベースライン負荷テストを実行して、サイトに変更を加えた後のパフォーマンスを比較できます。

負荷テストの本当の目標は、アプリケーションとハードウェアが、ビジネスが許容できると判断したターゲット負荷を処理でき、それでも妥当な時間内にページを返すことができることを証明することです。

于 2009-12-02T18:46:32.320 に答える