2017-01-08 31 views
-1

WebアプリケーションのパフォーマンステストにApache JMeterを使用しています。ロード時にブラウザのページを読み込むのに比べて応答時間が高すぎます。ロード中にページを開くと2秒後に開きますが、JMeterは70秒を報告します。私はブラウザのメモリキャッシュとディスクキャッシュがブラウザで使用されていることを理解していますが、JMeterのキャッシュマネージャは同じではありません。アサートする方法は、レスポンスヘッダーを比較することです。これに関するいかなる考えも高く評価されます。Apache Jmeterの応答時間がWebページで高すぎる

答えて

0

スクリプトで設定が間違っている可能性があります。 WebブラウザとJmeterの応答時間に大きな違いはありません(Jmeterではブラウザのレンダリング時間は無視されますが、大きな要因ではありません)。

Webページに単一のHttp Samplerを使用し、 HTTPのサンプラーの高度なセクションで、 "パラレルダウンロード"オプションを "6"に設定してください。したがって、.js、.css、画像などのリソースを並行してダウンロードするブラウザの動作をシミュレートしています。

Test Script Recorderを使用してスクリプトを記録した場合、各リソースリクエスタのHttp Samplerそのページは順番に送信されるため、応答時間が長くなります。この場合、httpサンプラーを並行して送信する機能やオプションはありません。ですから、サンプルサンプラーを1つ追加するというアプローチを使用することをお勧めします.Http Samplerの高度なセクションでは、リソースの並列ダウンロードを使用します。

また、キャッシュは応答時間を決定する重要な要素です。 HTTPキャッシュマネージャを追加すると、jmeterの問題を解決できます。これは、キャッシュのブラウザ動作をシミュレートします。私は大きな違いがあるとは思わないが、キャッシュを実装するにはブラウザーとjmeterが完璧ではないかもしれない。

0

JMeterマシンまたはJMeterのリソースが不足している可能性があり、高負荷を生成するために適切に構成されていない可能性があります。 JMeterのデフォルト設定は、負荷テストの開発とデバッグに適しています。一定量の仮想ユーザに負荷テストを実行できますが、負荷が非常に高い場合は、設定を変更する必要があります。

最初に、jvisualvmとオペレーティングシステムの監視ツール(テスト中のアプリケーションとJMeterの負荷ジェネレータ側で異なるメトリックを監視するために使用できるPerfMon JMeter Pluginがあります)を使用して私の推測を再確認してください。その場合は、JMeterインストールのパフォーマンスを最大限に引き出すために次の手順を実行してください。

  1. JVM Heap Size, NewSize, switch to ConcurrentMarkSweep Garbage Collectorを増やしてください。
  2. non-GUI modeでテストを実行してください。
  3. テスト中にlistenersをすべて無効にします。
  4. 9 Easy Solutions for a JMeter Load Test “Out of Memory” Failureの記事には他の推奨事項があります。
関連する問題