私は単純なASP.NETアプリケーションを持っていて、画像をImageResizerでサイズ変更するだけで何もしません。テスト目的のために、私はディスクキャッシングを無効にしたので、イメージはすべてのリクエストでサイズ変更されました。IIS 8.5シングルワーカープロセス対ウェブガーデンパフォーマンス
私はJMeterのとアプリのパフォーマンスをテストするとき、私は以下の平均応答時間を取得:
- 単一のワーカープロセス、1つの同時クライアント:〜200msの
- 単一のワーカープロセス、10の同時クライアント:〜1200msを
- 4ワーカープロセス、10の同時クライアント:〜300msの
私は、単一のワーカープロセスと10の同時クライアントを実行すると、応答時間がDRを増大させ、見ることができるように利用可能なハードウェアリソースにもかかわらず、パフォーマンステスト中のCPU使用率は〜30%、メモリ使用量は約150MBです。
としてはhere、
Webガーデンが1つの理由のために設計された議論 - CPU-バインドされていないアプリケーション を提供していますが、長時間実行を実行中のすべてのスレッドが使用可能に使い切るスケールではなく能力 を要求ワーカープロセス
これは私のケースではありません。
私はなぜこのような結果を得るのか分かりません。私が期待しているのは、単一のワーカープロセスであっても、リソース制限に達するまで、許容可能な応答時間を提供するということです。また、10人の同時クライアントは、重い負荷ではありません。誰かが私に説明することができます、どこが間違っていますか?
マイ設定:
- のWindows Server 2012 R2
- は(MaxWorkerThreadsを除く)すべてのデフォルト設定
- クアッドコアi3は3.4GHz以上のCPU
- 16ギガバイトのRAM
私のアプリケーションは空です。ImageResizerを持つASP.NET MVCアプリケーション。this instruction(オプション3 - マニュアルI nstallation)とDiskCacheプラグインをWeb.configで無効にした場合
ちょうどあなたが提供するこれらの数字に基づいて、およびImageResizerは単一THRでサイズ変更操作を実行しているようImageResizerについて何も知らなくても、それが見えますead、多分STA?複数のスレッドをサポートしていないCOMコンポーネントをベースにしていた場合、この(推測)の場合があります。 – Ben