<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,comments - 227,trackbacks - 0

    傳統(tǒng)的JS壓縮(刪除注釋,刪除多余空格等)提供的壓縮率有時還是不盡不意,幸虧現(xiàn)在的瀏覽器都支持壓縮傳輸(通過設(shè)置http header的Content-Encoding=gzip),可以通過服務(wù)器的配置(如apache)為你的js提供壓縮傳輸,或是appfuse中使用的GZipFilter使tomcat也提供這種能力

    現(xiàn)在的問題是這種動態(tài)的壓縮會導(dǎo)致CPU占用率過高,現(xiàn)在我想到的解決辨法是通過提供靜態(tài)壓縮(就是將js預(yù)先通過gzip.exe壓縮好)

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

    1.將prototype.js通過gzip.exe壓縮保存成prototype.gzjs
    2.設(shè)置header,我編寫了一個簡單的AddHeadersFilter來將所有以gzjs結(jié)尾的文件增加設(shè)置header Content-Encoding=gzip

     1    web.xml中的配置
     2     <filter>
     3         <filter-name>AddHeaderFilter</filter-name>
     4         <filter-class>
     5             badqiu.web.filter.AddHeaderFilter
     6         </filter-class>
     7         <init-param>
     8             <param-name>headers</param-name>
     9             <param-value>Content-Encoding=gzip</param-value>
    10         </init-param>
    11     </filter>
    12 
    13     <filter-mapping>
    14         <filter-name>AddHeaderFilter</filter-name>
    15         <url-pattern>*.gzjs</url-pattern>
    16     </filter-mapping>

    測試prototype是否正常的代碼

     1 <html>
     2 <head>
     3 <!-- type="text/javascript"不可少,有些瀏覽器缺少這個不能運行,具體已經(jīng)忘記了 -->
     4 <script src="prototype.gzjs" type="text/javascript"></script>
     5 </head>
     6 <body>
     7     <input id="username" name="username" value="badqiu"/><br />
     8     <input id="email" value="badqiu@gmail.com"/>
     9 <script>
    10     <!-- 測試prototype的方法是否正常-->
    11     alert($F('username'))
    12 </script>
    13 </body>
    14 </html>


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

    二.相關(guān)壓縮率數(shù)據(jù)
    1. prototype.js 1.5.0_rc0原始大小56KB,未經(jīng)任何處理直接使用gzip壓縮為12KB,總壓縮率79%
    2. 通過js壓縮工具壓縮過的protytype.js為20KB,使用gzip壓縮為10KB,總壓縮率為83%
    3. 實際項目中的多個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.tkk7.com/Files/badqiu/gziptest.rar

    posted on 2008-04-03 19:57 SIMONE 閱讀(1051) 評論(0)  編輯  收藏 所屬分類: JAVA 、JavaScript
    主站蜘蛛池模板: 中文字幕av免费专区| 亚洲精品不卡视频| 亚洲aⅴ天堂av天堂无码麻豆 | 中文字幕亚洲一区| 亚洲AV无码成人精品区日韩| 91久久精品国产免费一区| 久久精品国产精品亚洲艾草网| 人与动性xxxxx免费| 成人午夜亚洲精品无码网站| 污污的视频在线免费观看| 四虎成人精品在永久免费| 韩国亚洲伊人久久综合影院| 在线免费观看韩国a视频| 国产成人亚洲精品播放器下载| 四虎影院永久免费观看| 免费国产草莓视频在线观看黄| 免费在线黄色网址| 久久久精品国产亚洲成人满18免费网站 | 亚洲精品一区二区三区四区乱码 | 好湿好大好紧好爽免费视频| 亚洲日本在线观看视频| 青草草在线视频永久免费| 国产成人久久精品亚洲小说| 亚洲人成无码www久久久| 久久国产精品国产自线拍免费| 亚洲爆乳无码专区| 久久久久国色AV免费观看性色 | 国产不卡免费视频| 香蕉免费看一区二区三区| 久久亚洲熟女cc98cm| 成人午夜18免费看| 全黄大全大色全免费大片| 亚洲毛片基地日韩毛片基地| 日韩视频在线免费| 最近高清中文字幕免费| 羞羞视频免费观看| 亚洲国产福利精品一区二区| 婷婷亚洲天堂影院| 日本一区二区三区免费高清| 国产人成网在线播放VA免费| 精品亚洲国产成人|