33

CPU負荷のパフォーマンスと圧縮に関して、次のスクリプトの違いを誰か教えてもらえますか?

<ifModule mod_gzip.c> 
mod_gzip_on Yes 
mod_gzip_dechunk Yes 
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$ 
mod_gzip_item_include handler ^cgi-script$ mod_gzip_item_include mime ^text/.* 
mod_gzip_item_include mime ^application/x-javascript.* 
mod_gzip_item_exclude mime ^image/.* 
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* 
</ifModule> 


<ifModule mod_deflate.c> 
<filesMatch "\.(js|css)$"> SetOutputFilter DEFLATE </filesMatch> 
</ifModule> 
4

6 に答える 6

10

一般的な圧縮についてではなく、これら 2 つの違いについて質問していると思います。その場合、まだアクティブなプロジェクト zlib に依存する mod_deflate を使用することをお勧めします。ところで、この 2 つを比較する古い記事 (6 ~ 7 年前) は、もはや関連性がありません。

于 2013-03-05T08:54:36.270 に答える
6

ほとんどの圧縮アルゴリズムをプレーンテキスト ファイルに適用すると、ファイルの内容にもよりますが、サイズを 70% 以上削減できます。圧縮アルゴリズムを使用する場合、特にこれらの余分な圧縮パスを処理するために必要な追加の CPU 時間を考慮すると、標準圧縮レベルと最大圧縮レベルの差はわずかです。これは、Web コンテンツを動的に圧縮する場合に非常に重要です。ほとんどのソフトウェア コンテンツ圧縮技術では、圧縮レベル 6 (9 レベルのうち) を使用して、CPU サイクルを節約します。通常、レベル 6 とレベル 9 のファイル サイズの違いは非常に小さいため、余分な時間を費やす価値はありません。

text/.* MIME タイプとして識別されるファイルの場合、ネットワーク上に配置する前にファイルに圧縮を適用できます。これにより、転送されるバイト数が減少し、パフォーマンスが向上します。テストでは、Microsoft Office および PostScipt ファイルを GZIP エンコードして、圧縮モジュールで転送できることも示されています。

GZIP エンコードできない重要な MIME タイプには、外部の JavaScript ファイル、PDF ファイル、および画像ファイルがあります。Javascript ファイルの問題は、主にブラウザー ソフトウェアのバグによるものです。これらのファイルは実際にはテキスト ファイルであり、転送用に圧縮することで全体的なパフォーマンスが向上するためです。PDF ファイルと画像ファイルは既に圧縮されており、再度圧縮しようとすると、サイズが大きくなり、ブラウザでレンダリングの問題が発生する可能性があります。

圧縮ファイルをクライアントに送信する前に、データを受信するクライアントが圧縮形式を正しく理解し、レンダリングすることをサーバーが保証することが重要です。圧縮されたコンテンツを理解するブラウザーは、次のクライアント要求ヘッダーのバリエーションを送信します。

Accept-encoding: gzip

Accept-encoding: gzip, deflate 

現在の主要なブラウザには、送信するすべてのリクエストにこのメッセージのバリエーションが含まれています。サーバーがヘッダーを見て、圧縮されたコンテンツを提供することを選択した場合、サーバー応答ヘッダーで応答する必要があります。

詳細については、次の記事を参照してください: http://www.linuxjournal.com/article/6802

于 2013-03-01T22:38:01.293 に答える
3

mod_deflate と mod_gzip を有効にすると、基本的に同じことが達成されます。どちらも、Web ファイルが Web サイトの訪問者に送信される前に圧縮されます。

ただし、両者には違いがあります。mod_deflateは、 mod_gzipよりもわずかに圧縮率が高い場合があります。mod_deflate を選択する必要があるもう 1 つの理由は、mod_gzip としてサポートされているため、文書化されているため構成が容易になるためです。詳細については、こちらをご覧ください

于 2014-11-12T10:49:28.970 に答える
1

linuxjournal.com のこの記事をチェックしてください。

http://www.linuxjournal.com/article/6802

それ以外は mod_deflate の方が設定が簡単で、一般的に apache パッケージに付属しています。

于 2013-08-20T07:49:10.843 に答える
-1

IMHO 静的ファイルに mod_deflate を使用することは避け、代わりに mod_rewrite を使用して事前に圧縮されたファイルを提供し、利用可能な最高の圧縮 (7zip によって gzip AFAIK が作成されました) を使用する必要があります。Apache は gzip された静的ファイルをキャッシュしていません。

動的ファイルの場合: 利用可能な帯域幅に依存します - mod_deflate は多くの処理能力を必要としますが、サーバーがネットワークをオーバーフローできる場合に使用できます。

于 2017-04-12T19:46:18.590 に答える