2013-03-11 34 views
5

テキストベースのファイルを圧縮するためにtomcatを設定しています。 私の現在の構成があります。最大のtomcat gzip圧縮サイズを設定するには?

compression="on" 
compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript,application/xml,application/x-javascript,application/json" 

をしかし、私は〜の60キロバイト以上のJavaScriptファイルが圧縮されていないことに気付いています。 隠された設定がありませんか?

答えて

10

を検索するdocumentation for tomcat7compressionMaxSizeへの参照はありません。このような唯一のコマンドは、compressionMinSizeです。これは、定義された値よりも小さいファイルの圧縮を取り除くことを意図しています。これと同じように:ここで

compressionMinSize="2048" 

は私のserver.xmlが圧縮に関しては次のようになります。

compression="on" 
compressionMinSize="2048" 
noCompressionUserAgents="gozilla, traviata" 
compressableMimeType="text/html,text/xml" 

は、あなたの経験を説明するだろうこれに関連するドキュメントの隠されたビットは、実際にあります:

注:圧縮を使用して( の帯域幅を節約する)、sendfile機能を使用して(CPUサイクルを節約する)、トレードオフがあります。 の場合、コネクタはsendfile機能をサポートしています。 NIOコネクタ sendfileを使用すると、圧縮よりも優先されます。 症状が の場合、48Kbを超える静的ファイルは、 が圧縮されて送信されます。以下に示すようにuseSendfile 属性をコネクタの属性として設定するか、 sendfile使用率のしきい値をデフォルトのconf/web.xml またはWebのweb.xmlにDefaultServletの設定で変更してください応用。

あなたはCPU使用率を犠牲にして帯域幅を節約したいのであれば、あなたのweb.xmlにこの設定を追加することによって、このトリガーを無効にすることができ(seen here):

<init-param> 
    <param-name>sendfileSize</param-name> 
    <param-value>96</param-value> <!-- value in KB where compression is turned off in the name of CPU utilization --> 
</init-param> 
+0

は、私はこのことについて間違っているのですか?または悪いニュースの先駆者だけ? –

+0

これを深く見て、私はあなたの経験に関連するものを実際に見つけました。 –

+0

ありがとう、ジェイソン! –

関連する問題