問題タブ [locust]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 適切な POST ファイルのアップロード (Locust による負荷テスト)
Django ベースの Web サイトの負荷テストを作成しようとしています。
ローカスト 0.7.3 と python 2.7.10 を使用しています
ここで POST を作成します - フォームに入力し、いくつかのファイルを添付します。
すべて問題ないように見えましたが、サーバーのアップロード フォルダーにファイルがありません。
私が間違っていることは何ですか?
amazon-web-services - インスタンスが完全に正常な状態であっても、Elastic Beanstalk が 5xx エラーを報告する
レコメンデーション エンジンで使用するイベント データを収集するための API アプリケーションをセットアップする必要があります。これは私のセットアップです:
- ロードバランサーと自動スケーリング グループを含む Elastic Beanstalk env。
- ロードバランサーの背後で実行されている 2 つの t2.medium インスタンスがあります。
- EBS 構成は、Tomcat 8 Java 8 を実行する 64 ビット Amazon Linux 2016.03 v2.1.1 です。
- さらに、API の高負荷テストに使用する 8 つの t2.micro インスタンスがあり、API によって処理される 1 秒あたり数千のリクエストを送信します。
- 負荷テスト ツールとしてLocust ( http://locust.io/ ) を使用しています。
- Locust によって実行される各 t2.micro インスタンスは、最大約 500 リクエスト/秒を送信できます
reqs/sec が 1000 未満、おそらく 1200 未満である間は、すべて正常に動作します。それを超えると、ロード バランサーは、その背後にあるインスタンスの一部が 5xx エラー (添付) を報告していると報告します。また、ロード バランサーの背後にある 4 つのインスタンスを試してみました。最初は最大 3000req/sec でうまくいきましたが、その後すぐに、ebs ヘルス ツールと Locust の両方が 503 と 504 を報告しましたが、すべてのインスタンスは完全な状態でした。 ebs Health Overview の実際の数値によると、CPU 使用率は 10% ~ 20% しかありません。
環境の構成に欠けているものはありますか? ロードバランサーの背後にあるマシンの数に関係なく、env は 1 秒あたり 1000 ~ 2000 リクエストしか処理しないようです。
編集:インスタンスではなく、ELB が問題を引き起こしていることがわかりました。
10 人のシミュレートされたユーザーで負荷テストを実行しました。各ユーザーは約 1 リクエスト/秒を送信し、負荷は 10 ユーザー/秒ずつ増加して 4000 ユーザーになり、約 4000 リクエスト/秒に相当するはずです。それでも、3.5k req/sec を超えるリクエスト レートは好ましくないようです ( attachment1 )。
添付ファイル2からわかるように、ロード バランサーの背後にある 4 つのインスタンスは完全に正常ですが、それでも 503 エラーが発生し続けます。ロードバランサー自体が問題を引き起こしているだけです。ある時点で SurgeQueueLength と SpilloverCount が急速に増加する様子を見てください。(添付ファイル3 ) その理由を突き止めようとしています。
また、ロード バランサーを完全に削除し、1 つのインスタンスだけでテストしました。約 3k req/sec まで処理できます。( attachment4とattachment5 )、間違いなくロード バランサです。
1024 のキューサイズなど、ロードバランサーがデフォルトで持っている重要な制限を見逃しているのではないでしょうか? 1 つのロード バランサーの通常の処理速度は? ロードバランサーを追加する必要がありますか? アベイラビリティーゾーンに関連している可能性はありますか? あるゾーンの ELB リスナーが別のゾーンのインスタンスにルーティングしようとしていますか?
更新: クロスゾーン負荷分散が有効になっています
python-2.7 - Python - イナゴを使用してリクエストの概要統計をログに記録する
イナゴを使っています
http://docs.locust.io/en/latest/index.html
ランダムなサイト訪問とファイルのダウンロードを行う一連の Web ユーザーをシミュレートします。ロギング オプションは、次のように指定して設定します。
ただし、これはコード内の内部イベントと print ステートメントのサブセットのみをログに記録し、コンソール (オプションを使用する場合) または UI (オプション--no-webを指定しない場合)に出力されるリクエスト統計をログに記録しません。--no-web.
リクエストの統計情報をログ ファイルに記録するにはどうすればよいですか?
python - 2 つの異なる Linux ディストリビューションから python locust スクリプトを実行するとエラーが発生する
Web サイトをテストするイナゴ スクリプトを作成します。スクリプトは非常に単純で、リクエストを数回繰り返すだけです。
Linux Mint と Python 2.7.6 を搭載した仮想マシンでは、スクリプトは正しく、希望どおりに機能します。
たとえば、次のように Web インターフェイスなしでスクリプトを実行します。
ターミナルウィンドウで正しい統計を取得します。
CentOS と Python 2.7.11 を使用する別の仮想マシンで同じスクリプトを実行すると、次のエラーが発生します。
問題を理解するのを手伝ってくれませんか?どうもありがとう。






