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

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

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

    Open-Source World

    let's learn and study.
    posts - 28, comments - 23, trackbacks - 0, articles - 1

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

    現(xiàn)在的問題是這種動態(tài)的壓縮會導(dǎo)致服務(wù)器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
    web.xml中的配置

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

     

    測試prototype.js是否正常的代碼

    代碼
    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


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 成人性做爰aaa片免费看| 欧亚一级毛片免费看| 91免费福利精品国产| 亚洲VA中文字幕不卡无码| 在线观看免费黄色网址| 亚洲成AV人片在线观看无码| 国产一区二区三区免费观在线| 亚洲日韩欧洲乱码AV夜夜摸 | 久久精品九九亚洲精品天堂| 国产日韩在线视频免费播放| 亚洲精品乱码久久久久66| 国产麻豆一精品一AV一免费| 亚洲精品综合一二三区在线| 亚洲免费视频观看| 精品亚洲成在人线AV无码| 精品国产一区二区三区免费看 | 抽搐一进一出gif免费视频| 国产gv天堂亚洲国产gv刚刚碰| 日韩精品无码免费专区网站| 亚洲国产老鸭窝一区二区三区| 每天更新的免费av片在线观看| 亚洲国产精品日韩在线| 色视频色露露永久免费观看| 黄床大片30分钟免费看| 亚洲老妈激情一区二区三区| 2021国内精品久久久久精免费| 亚洲一卡二卡三卡四卡无卡麻豆| 狠狠久久永久免费观看| 国产成人无码区免费网站| 亚洲免费观看网站| 免费在线精品视频| 久久久久成人片免费观看蜜芽| 亚洲成_人网站图片| ZZIJZZIJ亚洲日本少妇JIZJIZ| 亚洲精品免费视频| 亚洲美国产亚洲AV| 亚洲国产成人高清在线观看| 好先生在线观看免费播放| 中文字幕在线成人免费看| 亚洲日本久久久午夜精品| 中文字幕专区在线亚洲|