2016-07-26 4 views
3

対私は本当にWebPACKのgzipの間の違いを知っていると私は唯一圧縮パッケージを使用してGZIPを表現使用していたのgzipWebPACKのgzipの特急はgzip

を表現したかったです。 GZIPをmy homepageのクロムデベロッパーツールのコンソールでこのよう 、

app.use(compression()); 

しかしseo analyzerは私がコンテンツのエンコーディングを見ることができます ものの、より多くのJavaScriptファイルを圧縮できることを言います。 私はファイルを圧縮する方法を探し始め、gzipファイルを作る圧縮webpack-pluginパッケージが見つかりました。私はすでにwebpackを使用していますが、圧縮webpack-pluginは使用していません。私はこのプラグインを追加することが私のファイルをより多く圧縮するのに役立つと思っています。

質問が

  1. ですが、私は特急とWebPACKの両方のgzipパッケージを必要とする、またはちょうど1か?
  2. webpack gzipとexpress gzipの違いは何ですか?

答えて

4

違いは、Webpack圧縮ではファイルを一度だけ圧縮します。 - ビルド実行中です。圧縮されたこれらのバージョンは、ディスクに保存されます。

Expressプラグインは、ファイルを要求時点で圧縮します()。特定のパッケージにキャッシュ機能が組み込まれているため、パフォーマンスペナルティが1回(またはまれに)発生するだけですが、一般的にはHTTP要求に応答する時点で発生します。

上流のプロキシ(Nginxなど)がgzipとキャッシュを処理するようにするのは、リアルタイムでジッパーを付ける方がパフォーマンスが良いです。なぜなら、そのために特別に構築されており、 Cで書かれている)。

Webpackがファイルを圧縮し、非圧縮ファイルの.gzバージョンを作成する方法もあります。 express-static-gzipなどのパッケージは、あらかじめコンパイルされたバージョンを提供することができます。したがって、要求時点でgzippingのパフォーマンスが低下することはありません。これは、Node.jsがHTTPリクエストに直接応答し、上流のプロキシ/ロードバランサを使用していない場合に便利です。

Webpackを使用するメリットは、ビルドプロセスに数秒かかることはありませんが、それと同時に、最大の圧縮設定(またはファイルをクランチするのに時間がかかるアルゴリズム)を使用できることですより複雑な圧縮を可能にしてHTTP訪問者にサービスを提供することは、より大きな問題になります。