最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于JavaScript的gzip靜態(tài)壓縮方法

 更新時(shí)間:2007年01月05日 00:00:00   作者:  
一個(gè)頁面減少10KB對(duì)于一個(gè)小網(wǎng)站來說,算不上什么,但對(duì)于大型站點(diǎn)來說,累計(jì)起來卻是一個(gè)很大的流量......gzip壓縮是一個(gè)有效可行的方法,但需要Apache的支持(Apache與IIS共用一個(gè)端口解決方法)。
  傳統(tǒng)的JS壓縮(刪除注釋,刪除多余空格等)提供的壓縮率有時(shí)還是不盡不意,幸虧現(xiàn)在的瀏覽器都支持壓縮傳輸(通過設(shè)置http header的Content-Encoding=gzip),可以通過服務(wù)器的配置(如apache)為你的js提供壓縮傳輸,或是appfuse中使用的GZipFilter使tomcat也提供這種能力
現(xiàn)在的問題是這種動(dòng)態(tài)的壓縮會(huì)導(dǎo)致CPU占用率過高,現(xiàn)在我想到的解決辨法是通過提供靜態(tài)壓縮(就是將js預(yù)先通過gzip.exe壓縮好)

一.下面描述在tomcat中的應(yīng)用

1.將prototype.js通過gzip.exe壓縮保存成prototype.gzjs 2.設(shè)置header,我編寫了一個(gè)簡(jiǎn)單的AddHeadersFilter來將所有以gzjs結(jié)尾的文件增加設(shè)置header Content-Encoding=gzip web.xml中的配置 
復(fù)制代碼 代碼如下:
<filter> 
        <filter-name>AddHeaderFilter</filter-name> 
        <filter-class> 
            badqiu.web.filter.AddHeaderFilter 
        </filter-class> 
        <init-param> 
            <param-name>headers</param-name> 
            <param-value>Content-Encoding=gzip</param-value> 
        </init-param> 
    </filter>    <filter-mapping> 
        <filter-name>AddHeaderFilter</filter-name> 
        <url-pattern>*.gzjs</url-pattern> 
    </filter-mapping> 
測(cè)試prototype.js是否正常的代碼

復(fù)制代碼 代碼如下:
<html>   
<head>   
<!-- type="text/javascript"不可少,有些瀏覽器缺少這個(gè)不能運(yùn)行,具體已經(jīng)忘記了 -->   
<script src="prototype.gzjs" type="text/javascript"></script>   
</head>   
<body>   
    <input id="username" name="username" value="badqiu"/><br />   
    <input id="email" value="badqiu@gmail.com"/>   
<script>   
    <!-- 測(cè)試prototype的方法是否正常-->   
    alert($F('username'))    
</script>   
</body>   
</html> 

在Apache中可以直接通過在httpd.conf增加AddEncoding x-gzip .gzjs來映射.gzjs文件的header

二.壓縮率 

prototype.js 1.5.0_rc0原始大小56KB,未經(jīng)任何處理直接使用gzip壓縮為12KB,總壓縮率79% 
2. 通過js壓縮工具壓縮過的protytype.js為20KB,使用gzip壓縮為10KB,總壓縮率為83%
3. 實(shí)際項(xiàng)目中的多個(gè)js合并成的文件 439KB,直接通過gzip壓縮為85KB,總壓縮率81%

4. 439KB經(jīng)過js壓縮為165KB,再經(jīng)過gzip壓縮為65KB,總壓縮率86%

基本上你都可以忽略js壓縮工具的壓縮率,直接使用gzip壓縮
gzip下載地址 http://www.gzip.org

tomcat的壓縮配置示例下載地址: http://www.blogjava.net/Files/badqiu/gziptest.rar

相關(guān)文章

最新評(píng)論

宾阳县| 噶尔县| 璧山县| 云和县| 鄂托克旗| 富顺县| 平度市| 财经| 龙江县| 安泽县| 宜兰市| 云梦县| 海丰县| 平乡县| 山东省| 巴马| 长岛县| 榕江县| 台北县| 拉萨市| 康保县| 白朗县| 澳门| 临安市| 禄劝| 郓城县| 南宁市| 汉源县| 万源市| 隆子县| 成武县| 什邡市| 定陶县| 台东市| 柘城县| 德化县| 迁安市| 水富县| 望奎县| 中西区| 当阳市|