protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,
application/javascript,text/css,text/plain,text/json"/>
參數(shù)說(shuō)明:
1、compression="on" 開(kāi)啟壓縮??蛇x值:"on"開(kāi)啟,"off"關(guān)閉,"force"任何情況都開(kāi)啟。
2、compressionMinSize="2048"大于2KB的文件才進(jìn)行壓縮。用于指定壓縮的最小數(shù)據(jù)大小,單位B,默認(rèn)2048B。注意此值的大小,如果配置不合理,產(chǎn)生的后果是小文件壓縮后反而變大了,達(dá)不到預(yù)想的效果。
3、noCompressionUserAgents="gozilla, traviata",對(duì)于這兩種瀏覽器,不進(jìn)行壓縮(我也不知道這兩種瀏覽器是啥,百度上沒(méi)找到),其值為正則表達(dá)式,匹配的UA將不會(huì)被壓縮,默認(rèn)空。
4、compressableMimeType="text/html,text/xml,application/javascript,text/css,text/plain,text/json"會(huì)被壓縮的MIME類(lèi)型列表,多個(gè)逗號(hào)隔,表明支持html、xml、js、css、json等文件格式的壓縮(plain為無(wú)格式的,但對(duì)于具體是什么,我比較概念模糊)。compressableMimeType很重要,它用來(lái)告知tomcat要對(duì)哪一種文件進(jìn)行壓縮,如果類(lèi)型指定錯(cuò)誤了,肯定是無(wú)法壓縮的。那么,如何知道要壓縮的文件類(lèi)型呢?可以通過(guò)以下這種方法找到。
四、檢查配置是否成功
修改完之后重啟下tomcat即可,最后去檢測(cè)網(wǎng)站:http://seo.chinaz.com/?host=iitshare.com查詢下效果
五、常見(jiàn)錯(cuò)誤(配置后沒(méi)效果)
可通過(guò)以下步驟排查:
1、tomcat中的配置參數(shù)寫(xiě)錯(cuò)位置了。注意配置參數(shù)應(yīng)該寫(xiě)到下圖中A區(qū)而不是B區(qū),就是protocol="HTTP/1.1"那個(gè)Connector中。
2、響應(yīng)數(shù)據(jù)不是compressableMimeType參數(shù)配置的類(lèi)型。我就遇到了這個(gè)坑,我們項(xiàng)目前后端傳輸用的是json。所以我最開(kāi)始以為是“text/json”,后來(lái)打開(kāi)Firebug的控制臺(tái),原來(lái)Content-Type的值是“application/json”。見(jiàn)圖三。
3、響應(yīng)數(shù)據(jù)的大小小于compressionMinSize的配置值。
附:優(yōu)化結(jié)果
可以看到 壓縮比率 = 65.6 / 8.4 = 7.810, 時(shí)間比率 = 96 / 16.2 = 5.926,已經(jīng)是很理想了。
看完上述內(nèi)容,是不是對(duì)GZIP壓縮Tomcat并提升web性能的方法有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注資訊頻道。
更多關(guān)于云服務(wù)器,域名注冊(cè),虛擬主機(jī)的問(wèn)題,請(qǐng)?jiān)L問(wèn)西部數(shù)碼官網(wǎng):www.ps-sw.cn