まあ、失敗の理由はたくさんあります。 JMeterとサーバーを同じマシンに置いていましたか?
はいの場合、JMeter &サーバがリソースを消費するため、おそらくそれが原因です。
そうでない場合は、次の設定を確認してください。続き
はChecklist/Suggestions/Pointers
です:
クライアント側:が予想される負荷をシミュレート - より少ないどちらもない(予想以上の負荷/以下になった間違ったテスト設計/スクリプティングの可能性がありますがあります)
- ランプアップ:25個のスレッドが起動する方法を確認します。 Stree/Spikeテストを実施していない限り、十分な立ち上がり時間(2分で25スレッド)が必要です。
- ユーザーの考え時間:トランザクションを使用してタイマーを追加したかどうかを確認します。そうでない場合は、予想より多くの負荷が発生しています。タイマーb/wトランザクションを追加して、リアルタイムシナリオを複製します。
- ペーシング:各反復に時間が与えられているかどうかを確認します。そうではない、実行速度を固定する。
- タイマーが間違っている(範囲):タイマーがすべてのサンプラー/トランザクションに適用できるかどうかを確認してください。
- キャッシュ構成:HTTPキャッシュ・マネージャを使用して静的リソースのキャッシュを構成します。その結果、2回目の繰り返しから、JMeterはサーバーを要求するのではなくキャッシュを使用します。この決定は、サーバーがクライアントにリソースのキャッシュを許可している(キャッシュ制御およびその他の関連ヘッダーをチェックする)場合にのみ実行する必要があります。それ以外の場合、この構成は無視できます。
- パラレルリクエスト:HTTPサンプラで
Parallel Downloads
フィールドを使用している場合、最新のブラウザではマルチスレッドを使用して並列にリソースをダウンロードします。
上記の要因は、誤って構成すると、望ましくない負荷を招く可能性があります。
サーバーサイド:サーバー・マシン内のリソースの
- 希少:使用
nmon for Linux, PerfMon for Windows
。結果を分析して、問題の原因となっているリソース、つまりCPU、メモリ、ネットワーク、ハードディスクのI/Oを探します。(サーバクラッシュの最も一般的な理由)
- サーバの設定ミス:maxThreads、minThreads、maxConnections、キープアライブタイムアウト、接続タイムアウトなどをチェックし、必要に応じて調整します。
考えられる解決策:
リソースがボトルネックであり、あなたが予想される負荷を生成している場合は、あなたがscale in
(既存のマシンにボトルネックとなっているリソースを追加)、またはscale out
に持っているのいずれか(展開
キャッシング、デマンドでデータをロードする – VadimB
すでにソファのベースにキャッシュされています – SmartestVEGA