1

私のウェブサイトがますます大きくなるにつれて、私のラップトップが私のページを表示するのにかかる時間は、最小限の参照で新しいプロジェクトを言うよりもはるかに長いことに気付きました.

ASP.NET のウォームアップ時間に影響を与える変数が 2 つあります。

  • 外部参照の量
  • new()ワーカー プロセスがワーカー プロセスごとに各インスタンスを起動するのにかかる時間
  • ServiceHost が外部 DLL にある可能性があるため、WCF オブジェクトの追加の時間

まず、ASP.NET の起動時間を考慮する際に、これらの変数を考慮に入れるのは正しいでしょうか?

次に、web.config は、特定のファイル タイプ (*.svc、*.aspx、Windows Identity Foundation (WIF) など) で使用する他のオブジェクトをディスパッチする可能性があるようです。これも ASP.NET で遅延を引き起こす可能性があります。

最後に、私のプロジェクトは「Web サイト」ではなく「Web プロジェクト」として作成されます。これが影響するかどうかはわかりません。

私の理論は穴だらけですか、それとも古いラップトップでの開発を改善するためにできることはありますか?

4

1 に答える 1

1

ワーカー プロセスは、必要に応じてすべての参照を AppDomain に読み込みます。これは、アプリケーションが最初に起動したときに、参照されているアセンブリのすべてが読み込まれるとは限らないことを意味します。多くのブートストラップ時間 (最初のアプリケーションの起動時間) が増加していることがわかっている場合は、メソッドなどで何を行っているかを正確に確認することを検討しますApplication_Start。覚えておくべきもう 1 つのことは、この最初の起動時間は基本的に 1 回限りで、アプリケーションの起動ごとにのみ発生します (アプリケーション プールもいつリサイクルされるかを忘れないでください)。1回限りなので、起動時間は関係ありますか?サイトの最初のページ ビューが表示されると、その時点からの実行は非常に高速になります。

ANTS Profiler や dotTrace などを実行して、常に時間が費やされている場所を正確にプロファイルし、その情報に基づいてどのようなパフォーマンス改善を行うかを決定できます。

于 2010-08-06T13:57:48.530 に答える