天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

如何快速的呈現我們的網頁的技巧整理

前幾天小芳同學一直在群發起一些加速的話題,我已經把聊天記錄抽出來,正打算整理出份像樣的,沒想到小芳同學非常速度的出了這篇。我的就省掉了,挖哈哈。

特別說一下了,這些方案并非適合所有的網站,很多部分有的網站還是不要做反而會更好。如果你還有更多的想法,可以到這里討論或者評論,我只是歸檔成為方便閱讀的,對了論壇和群討論的另一些結果如果有價值我也會補充進來。

如何快速的呈現我們的網頁 作者:flashsoft,(內容被我略修刪過)。

一.我們需達解決的麻煩

  • 減少HTTP請求數. 減少HTTP請求數有什么好處
    • 降低服務器跟客戶端的建立和消除HTTP請求和響應Header的開銷
    • 減少服務器為HTTP連接的進程和線程的開銷,如果可能,還會包括GZIP壓縮的CPU開銷.
  • 減小被請求文件大小, 減少請求數據占用的網絡帶寬.
  • 讓用戶更快的看到想要的結果.
  • 提高客戶端渲染速度.
  • 讓瀏覽器同時能請求更多的數據.
  • 提高服務器相應速度.
  • 通過版本化控制客戶端Cache.

二.如何解決我們的麻煩

A.如何減少HTTP請求數

  1. 合并JS文件跟CSS文件。
  2. 合并框架圖片以及相對變動較少的圖片成一張,通過CSS背景切割來完成渲染,比如:加速圖片顯示。
  3. 合理使用本地Cache來緩存JS/CSS/IMAGE。
  4. 合理使用UserData緩存JS文件,對于FF用戶可以單獨請求服務器,這樣能解決80%用戶的問題.代碼可以蓉兒(meizz)的js framework1
  5. 把JS跟CSS合并成一個文件

B.減小被請求文件大小,減少請求數據占用的網絡帶寬

  1. 壓縮JS體積:刪除JS中空白換行,注釋,混淆把長變量換成短變量;
  2. 壓縮CSS體積:刪除CSS注釋、寫法盡量用簡寫;
  3. 使用(X)HTML+CSS方式搭建網站結構,提高CSS重用性,來減少(X)HTML文件大小;
  4. 使用服務器端GZIP壓縮JS/ CSS文件,縮小傳輸文件大小。附注:Apache1跟Apache2的GZIP的效率跟方式不一樣的,根據需要自行選擇。

嗷嗷補充說明:壓縮、合并JS和CSS都由程序處理。而不是自己手動去縮刪,不然不利于后期維護。

C.讓用戶更快的看到想要的結果

用戶對于一個站點的白頁的忍受時間根據統計是8-12秒。白頁的產生可能由于各種原因引起,我們能做的就是怎么讓用戶能變的稍微能等待更久。

  • 方案1.多做一個引導頁,讓用戶體會其中的變化
    案例:mail.aol.com中的loading引導頁
  • 方案2.優先載入頁面結構以及結構圖片,后一步載入當前頁面數據,再后一步載入Iframe,Flash等數據.讓用戶盡早的看到被打開頁面的希望.

D.提高客戶端渲染速度

這個問題就比較泛泛了,影響客戶端的渲染速度有多方面的,主要目的都是提高程序方面的效率.

  1. 對于大索引的結構,盡可能的少用索引訪問,能用訪問兄弟節點的方式盡可能用訪問兄弟節點的方式.
  2. 字符串拼接盡可能用數組方式
  3. 大規模添加節點數據,請不要使用appendChild方式,盡量使用類似innerHTML的insertAdjacentHTML方式,FF下需修正2

E.讓瀏覽器同時能請求更多的數據.

瀏覽器默認只是支持單域名同時有兩個HTTP請求,使用多域名將能把請求數提高,在網絡條件優良的情況下,能更快的下載數據,呈現結果.

F.提高服務器相應速度

對于需快速響應的文件,把其放入快速響應的服務器,應該是不錯的方案,優化方案請系統儲備組提供.

G.通過版本化控制客戶端Cache.

通常js/css這類文件改動比較頻繁,但是為了加載速度變快,我們有可能需要設定這類文件的過期時間為幾天后,這樣我們碰到的問題就是,如何及時更新這些在cache的文件?
通過一個簡單的配置,通過修改JS的版本來及時告訴瀏覽器,這些文件必須重新請求了,不要繼續使用瀏覽器cache中的數據. 方案有好幾個:

  1. 手動改這些js的文件名
  2. 手動改這些js的路徑
  3. 通過URL Rewrite方式來改重定位js路徑
  4. 通過一個在高響應服務器上的一個js配置告知頁面,這個頁面該鏈接哪些JS文件
  5. 大版本不變,小版本不斷追加,等一定時間后,統一更新,高效利用cache

標注

  1. meizz的js framework還沒出正式版,有興趣在CSDN的頁面翻一下
  2. Firefox修正方式
    function addHTML(oParentNode, sHTML) {
    if(window.addEventListener) {// for MOZ
    var oRange = oParentNode.ownerDocument.createRange();
    oRange.setStartBefore(oParentNode);
    var oFrag = oRange.createContextualFragment(sHTML);
    oParentNode.appendChild(oFrag);
    }
    else {// for IE5+
    oParentNode.insertAdjacentHTML("BeforeEnd", sHTML);
    }
    }

JavaScript技術如何快速的呈現我們的網頁的技巧整理,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 人妻美妇疯狂迎合 | 久久精品嫩草影院免费看 | 国产精品亚洲专区在线播放 | 日韩欧无码一区二区三区免费不卡 | 日本一区精品久久久久影院 | 久久理伦片琪琪电影院 | 亚洲一级电影 | 调教椅上的调教SM总裁被调教 | 亚洲欧美偷拍视频一区 | 色多多旧版污污破解版 | 顶级少妇AAAAABBBBB片 | 征服艳妇后宫春色 | 羞羞漫画视频 | 午夜国产一区在线观看 | 久久国产影院 | 伦理79电影网在线观看 | 在镜头里被CAO翻了H | 欧美精品成人一区二区在线观看 | 成人区在线观看免费视频 | 亚洲视频在线观看免费 | 亚洲精品蜜夜内射 | 午夜在线观看免费观看 视频 | 男人j进女人j一进一出 | 亚洲精品不卡在线 | 苍井空教师BD在线观看全集 | 贵妃高h荡肉呻吟np杨玉环 | 亚洲精品久久久无码AV片软件 | 扒开女人下面使劲桶动态图 | 中文字幕精品在线视频 | 国产精品久久久亚洲偷窥女厕 | 欧美大香线蕉线伊人久久 | 丰满女友bd高清在线观看 | 小黄鸭YELLOWDUCK7596| 98久久无码一区人妻A片蜜 | 久久久GOGO无码啪啪艺术 | 老熟风间由美AV在线一区二区 | 狠狠干福利视频 | 做你的爱人BD日本 | 午夜不卡久久精品无码免费 | 99国产精品白浆在线观看免费 | 日本漫画之无彩翼漫画 |