更新可能に設定されている場合、asp.net Web アプリケーションをプリコンパイルすると、パフォーマンス上の利点はありますか? プリコンパイラ更新可能フラグを設定すると、aspx、ascx などはプリコンパイルされないため、最初のページの読み込み時に実行時にコンパイルする必要があります。とにかく、ASP.NET Web アプリケーション プロジェクトの他のすべては既にコンパイルされているので、更新可能フラグを true に設定して WAP でプリコンパイラを実行するポイントは何ですか?
3 に答える
ASP.NETは、サーバー側のコードをWebサーバー上の1つ以上のDLLファイルにコンパイルすることにより、他のスクリプトベースのテクノロジ(クラシックASPを含む)よりもパフォーマンスを向上させることを目的としています。[18] このコンパイルは、ページが最初に要求されたときに自動的に行われます(つまり、開発者はページに対して個別のコンパイル手順を実行する必要はありません)。この機能は、スクリプト言語によって提供される開発の容易さと、コンパイルされたバイナリのパフォーマンス上の利点を提供します。ただし、新しく編集されたページが最初にWebサーバーから要求されたときに、コンパイルによってWebユーザーに目立つが短い遅延が発生する可能性がありますが、要求されたページがさらに更新されない限り、再度は発生しません。
ASPXおよびその他のリソースファイルは、インターネットインフォメーションサービスサーバー(またはその他の互換性のあるASP.NETサーバー。以下のその他の実装を参照)の仮想ホストに配置されます。クライアントが初めてページを要求すると、.NET Frameworkはファイルを解析して.NETアセンブリにコンパイルし、応答を送信します。後続の要求はDLLファイルから提供されます。既定では、ASP.NETは、最初の要求に応じてサイト全体を1000ファイルのバッチでコンパイルします。コンパイルの遅延が問題を引き起こしている場合は、バッチサイズまたはコンパイル戦略を微調整することができます。
開発者は、デプロイ前にコードをプリコンパイルすることを選択することもでき、本番環境でのジャストインタイムコンパイルの必要性を排除します。これにより、Webサーバーにソースコードを配置する必要もなくなります。
(ウィキペディアのページから直接取得)phpやクラスASPなどのスクリプトコードよりもコードをコンパイルすることの利点についての優れた説明。
この特定のケースで私が言えることから、質問に記載されている理由で更新可能に設定されている場合、WAP を事前にコンパイルしてもパフォーマンス上の利点はありません。