私はいくつかの動的ページを取得するテストページを持つASP.NET Webサイトを持っています。通常、すべての依存関係のための時間をロードすることは非常に高速です: IISの動的コンテンツのランダムな遅延
しかし、時には1または通常よりもはるかに遅いいくつかのページがロード: この減速が時間内にランダムにランダムなページのために起こります。テストページをリロードした後は、すべて正常に戻ります。
私は明示的に動的コンテンツキャッシュを使用しませんが、通常はリソースがキャッシュされているようですが、めったに間違っていないようです。
また、StopWatch
を入れて動的ページの実行時間を決定します。 web.configをリセットした後初めて、すべてのページが20〜50ミリ秒で実行され、それ以降毎回(このページの読み込みが遅い場合でも)わずか1ミリ秒かかるので、問題はIIS側にあると思います。 次はどうすればいいですか?
仕様:.NET 4.5、Windows Server 2012 R2、IIS 8.5。
ありがとうございます!
UPD: お返事ありがとうございます。このラグの主なバージョンは、アプリケーションプールのリサイクルです。私は、遅れが各2/3ページのリロードごとに起こる(F5を繰り返しクリックすると)ことを言及する必要があります。ほとんどの場合、リサイクルはサーバー上で頻繁に起こることはありません。
探しているものを「ウォームアップ」といいます。これはIIS 7.5以降のモジュールとして利用できます。以前のバージョンでは、アプリケーションの起動時に、たとえばデプロイ後にウォームアップスクリプトを実行する必要がありました。これはホームページを呼び出すような簡単なものでも、ルックアップキャッシュが確保されるようにいくつかのページを表示するものでもかまいません。 –