2016-05-26 3 views
0

100k APIコールが同時に(500ms以内に)行われるように残りのAPIをテストする必要があります。どのようにシミュレートするのですか?同時に100kのHTTPリクエストを受信

+0

いくつかのクラウドベースの製品があります – NimChimpsky

+0

このサイズと時間枠は、人間のユーザーがいると思われます。人間は混沌とした機器であり、そのような調整には一般的にクロックティックと自動化されたエージェントが必要です。あなたのWeb/Webサービス要求で検証することは、到着モデルをクロスチェックとしてログに記録することを考慮してください。送信される情報がアーキテクチャ上同一であれば、100Kのすべてのユーザーがホストに要求負荷をかけずにほぼ即時に情報を受信できるように、プッシュモデルをCDNと組み合わせて考えることもできます。 –

答えて

0

JMeter

のApacheのJMeter™アプリケーションは、オープンソースソフトウェア、テスト機能の動作をロードし、 パフォーマンスを測定するために設計された100%純粋な Javaアプリケーションです。もともとWebアプリケーションのテスト用に設計されたもので、他のテスト機能にも拡張されています。

2

私はJMeterも使用することをお勧めします。これは、複数の同時jmeterサーバーを作成するテストを可能にします。 1つのJMeterクライアントから複数のリモートJMeterエンジンを制御し、多数のコンピュータにテストを複製することで、ターゲットサーバの負荷を大きくシミュレートできます。

あなたのターゲットはかなり高いです(500k以内で100k APIコールが同時に発生します)。つまり、たくさんのjmeterサーバーが必要です。ストレステストを作成するときは、魔法のレシピ、ガイド、マニュアルはありません。試行錯誤はこの種の問題を解決する基本的な方法です。

私の経験では、まず少数の同時ユーザーで試し、サーバーがどのように反応するかを見ていきます。その後、パフォーマンスが低下したり、最悪の場合、ボトルネックに至るまで同時ユーザーの数を増やしてください。

http://jmeter.apache.org/usermanual/remote-test.html

enter image description here

1

あなたは明らか即ち1つのコントローラとX負荷発生器は同じテストを実行する、分散モードで実行することができる負荷テストツールが必要になります。

  • Grinder - スクリプトは、いくつかのPythonの方言で書かれている
  • Apache JMeter - この男は、あなたが簡単なGUI
  • Tsungを使用してテストを作成することができます任意の特定の知識を必要としない - 能力のために知られ、Erlangで書かれていますローエンドのハードウェアでも高い負荷が発生します。

上記のツールの詳細については、を参照してください。

関連する問題