隨筆-57  評論-129  文章-0  trackbacks-0
          剛剛修正了一個JSA的bug。

          順便測試了一下文本壓縮的性能,和純packer 壓縮,ShrinkSafe+packer壓縮。
          壓縮大小:
          jquery-jsa-s.js(JSA的語法壓縮):29766
          jquery.compressed.js(ShrinkSafe語法壓縮):33992

          jquery-jsa-st.js(JSA的語法壓縮+文本壓縮):19526
          jquery-packer.js(Packer文本壓縮):20977
          jquery.compressed-packer.js(ShrinkSafe語法壓縮+Packer文本壓縮):21839

          有點奇怪的是,文本壓縮和語法壓縮是有一定互補性的,但是ShrinkSafe+Packer比單純的Packer文本壓縮效率還低??
          我想可能是ShrinkSafe做的一些語法補全(可省略的 {、}、;、),jQuery編碼的風格導(dǎo)致。

          Firefox測試數(shù)據(jù)(10次壓縮時間的毫秒數(shù),連續(xù)5回測試數(shù)據(jù))

          jquery-jsa-st.js:784
          jquery-packer.js:1265
          jquery.compressed-packer.js:1529

          jquery-jsa-st.js:718
          jquery-packer.js:922
          jquery.compressed-packer.js:766

          jquery-jsa-st.js:753
          jquery-packer.js:872
          jquery.compressed-packer.js:828

          jquery-jsa-st.js:1438
          jquery-packer.js:1484
          jquery.compressed-packer.js:1735

          jquery-jsa-st.js:687
          jquery-packer.js:1236
          jquery.compressed-packer.js:1234


          IE5 測試數(shù)據(jù)(連續(xù)三回測試數(shù)據(jù))

          jquery-jsa-st.js:766
          --------------------------------------------------------------------------------
          jquery-packer.js:9765
          --------------------------------------------------------------------------------
          jquery.compressed-packer.js:10547


          jquery-jsa-st.js:671
          --------------------------------------------------------------------------------
          jquery-packer.js:9002
          --------------------------------------------------------------------------------
          jquery.compressed-packer.js:10265


          jquery-jsa-st.js:704
          --------------------------------------------------------------------------------
          jquery-packer.js:8232
          --------------------------------------------------------------------------------
          jquery.compressed-packer.js:10314

          總結(jié)

          文本壓縮是個比較耗時的操作,像JQuery這樣大的類庫普遍需要接近100毫秒的解壓時間。
          如果需要兼容IE5這種老古董,那么最好不要用packer的文本壓縮,太耗時。
          JSA1 對文本壓縮做了些改進,表現(xiàn)還可以。

          如果要計較腳本文本壓縮后的解壓開銷,建議使用JSA的語法壓縮,配合服務(wù)器端的gzip壓縮。
          不推薦dojo 的ShrinkSafe,原因是它的幾個安全問題。
          posted on 2007-05-24 09:28 金大為 閱讀(968) 評論(0)  編輯  收藏 所屬分類: JavaScript
          主站蜘蛛池模板: 松阳县| 来凤县| 保康县| 成安县| 桦川县| 宜宾市| 沂南县| 济源市| 农安县| 娱乐| 福泉市| 瑞金市| 霍山县| 侯马市| 中宁县| 上饶县| 宜兰县| 瑞金市| 同心县| 伊川县| 蒙城县| 绥阳县| 七台河市| 琼结县| 临西县| 壶关县| 佛冈县| 海口市| 遵义县| 普定县| 古浪县| 鲁甸县| 理塘县| 巴南区| 那坡县| 遂川县| 宝山区| 石嘴山市| 潢川县| 大洼县| 开远市|