XSサイズのインスタンスで、Azure WindowsでホストされているASP.NET(Webフォーム)アプリがあります。しばらく使用していなかった後に初めてサイトに移動するとき、45秒以上かかるなど、すべてがうまく機能しています!! 起動して実行すると、ページは素晴らしく高速です。時間がかかるのは初期ロードだけです。
この時間が費やされている場所をどのように診断できますか? 私はすでにSessionStartイベント内で(データベースへの)ロギングを行っており、異なるブラウザーで10秒離れて開始された2つのリクエストは両方とも同じ秒でログに記録されます. または、データベース接続に非常に長い時間がかかっている可能性があります。
これに影響を与える可能性が高いことがいくつかあることを認識しています。
XS インスタンス上にあります。彼らは大きくありません。
私のコードは現在、デバッグ モードでビルドされています。これにより、ロードする必要のあるアセンブリと pdb ファイルが大きくなるため、実際よりも遅くなります。
サイトの読み込みには少し時間がかかります。これが、人々が idleTimeoutを変更し、場合によってはリサイクル間隔を変更する理由です。
私は 32 MB の dll を含む、かなり大きい Telerik コントロールを使用しています。(ただし、最初のページでは何も使用されていません)。
しかし、何が起こっているのか、どれくらいの時間がかかっているのかを測定したり、起動を速くするためにできることを増やしたりするなど、常に何がかかっているかを特定するために使用できるアプローチが必要です。
ローカル データベースと Web を備えた私の開発マシンでは、起動時間はおそらく 5 秒です。XS インスタンスよりも 10 倍速いだけかもしれませんが、その場合、ローカル マシンで時間がかかっている原因を突き止めて、改善を試みるにはどうすればよいでしょうか?