15

asp.net の新しいバンドルおよび縮小機能の使用方法を理解しています。これらは開発中に役立ちます。

ただし、本番環境でそれらを使用する利点はありますか? バンドルされた/縮小されたファイルを Web サーバーに配置した場合、システムのパフォーマンスは向上しますか? 全体として、静的ファイルだけの場合は実行されるコードが少なくなるようです。

注: js/css をバンドルして縮小する利点は理解しています。単にディスクに保存して静的ファイルとして参照するのではなく、アクティブなランタイム プロセスを使用して実稼働システムでこれらのファイルを生成することの価値を疑問視しているだけです。

4

4 に答える 4

19

バンドルと縮小は、開発よりも本番環境で役立ちます。最初のページ ヒットのダウンロード時間を大幅に改善できます。

  • バンドルは、複数の CSS ファイルと Javascript ファイルを 1 つの CSS ファイルと JavaScript ファイルに結合することで、サーバーへの個々の HTTP 要求の数を減らします。

  • 縮小は、空白、コメント、およびその他の不要な文字を削除することにより、CSS および JavaScript ファイルのファイル ダウンロード サイズを縮小します。

このような小さな利点は、開発環境よりも本番環境で顕著になります。したがって、本番環境ではバンドルとミニフィケーションを使用することをお勧めします。

あなたの質問に固有のことですが、実行時のバンドル/縮小には明白な利点はありません。この機能は、開発者の作業を容易にするためのものです。そのため、自分が何をしているのか確信がある場合は、実稼働環境で手動でバンドル/縮小されたアセットを使用することをお勧めします。

更新: MSDNに よると、実行時のバンドル/縮小には本当の利点があります。

ASP.NET 4.5 でのバンドルと縮小は実行時に実行されるため、プロセスはユーザー エージェント (IE、Mozilla など) を識別できるため、ユーザー ブラウザーをターゲットにして圧縮を改善できます (たとえば、コンテンツの削除など)。これは、リクエストが IE から来る場合の Mozilla 固有のものです)。

動的バンドルの利点は、静的 JavaScript だけでなく、JavaScript にコンパイルされる言語の他のファイルを含めることができることです。

たとえば、CoffeeScript は JavaScript にコンパイルされるプログラミング言語です。

于 2012-10-09T17:11:42.227 に答える
2

バンドルと縮小は、ページ読み込みのパフォーマンスを向上させるために 2 つの基本機能を提供します。

バンドル- 提供されたすべてのスクリプト/CSS を 1 つのファイルにバンドルして、ブラウザだけが複数ではなく 1 つのファイルをロードする必要があるようにします。
注->一般に、ブラウザはサーバーからリソースを取得するために 6 つの同時リクエストしか実行できません。追加のリクエストは、後で処理するためにブラウザによってキューに入れられます。したがって、複数のファイルがある場合は、リクエスト キューで待機する必要がある場合があります。

縮小- 縮小プロセスは、コメント、余分な空白を削除して、変数名の名前を変更することにより、縮小ファイルを生成します。したがって、これによりファイルサイズが縮小され、ダウンロードが高速になります。

于 2015-12-18T13:08:53.317 に答える
1

縮小 - ファイルが小さくなり、ネットワーク上のキロバイトが少なくなり、ページの読み込みが速くなります。

バンドル - ブラウザーは、http ホストごとに接続を制限します。これは、ユーザーがページにアクセスし、(たとえば) 24 個のスクリプトとリンク (css) タグがあり、ブラウザーが一度に 6 個 (ほとんどのブラウザーの制限) を処理していることを意味し、ページの読み込みが遅くなります。バンドルにより、ブラウザはすべてのファイルを 1 つのファイルとして扱い、この制限を無効にします。

于 2012-10-09T17:15:01.383 に答える
1

バンドルのもう 1 つの利点は、キャッシングの問題が軽減されることです。以下のように、ページへのロードをキーでバンドルする場合。

<script src="/bundles/jquery?v=FVs3ACwOLIVInrAl5sdzR2jrCDmVOWFbZMY6g6Q0ulE1"></script>

スクリプトを変更するたびに、異なるキーが生成されます。したがって、何かを変更すると、ファイルがキャッシュされます。しかし、スクリプト ファイルが同じ名前であるため、これを使用しない場合、変更を確認するためにキャッシュをクリアする必要がある場合があります。

于 2016-07-15T09:23:52.840 に答える