提高網站效能中內容有關的10條原則

來源:互聯網
上載者:User

英文地址:http://developer.yahoo.com/performance/rules.html

Yahoo!的Exceptional Performance團隊為改善Web效能帶來最佳實務。他們為此進行了一系列的實驗、開發了各種工具、寫了大量的文章和部落格並在各種會議上參與探討。最佳實務的核心就是旨在提高網站效能。

Excetional Performance團隊總結出了一系列可以提高網站速度的方法。可以分為7大類34條。包括內容、伺服器、cookie、CSS、JavaScript、圖片、行動裝置 App等七部分。

其中內容部分一共十條建議:

一、內容部分

  1. 盡量減少HTTP請求
  2. 減少DNS尋找
  3. 避免跳轉
  4. 緩衝Ajxa
  5. 延後載入
  6. 提前載入
  7. 減少DOM元素數量
  8. 用網域名稱劃分頁面內容
  9. 減小iframe的大小
  10. 避免404錯誤

1、盡量減少HTTP請求次數

終端使用者響應的時間中,有80%用於下載各項內容。這部分時間包括下載頁面中的映像、樣式表、指令碼、Flash等。通過減少頁面中的元素可以減少HTTP請求的次數。這是提高網頁速度的關鍵步驟。

減少頁面組件的方法其實就是簡化頁面設計。那麼有沒有一種方法既能保持頁面內容的豐富性又能達到加快回應時間的目的呢?這裡有幾條減少HTTP請求次數同時又可能保持頁面內容豐富的技術。

合并檔案是通過把所有的指令碼放到一個檔案中來減少HTTP請求的方法,如可以簡單地把所有的CSS檔案都放入一個樣式表中。當指令碼或者樣式表在不同頁面中使用時需要做不同的修改,這可能會相對麻煩點,但即便如此也要把這個方法作為改善頁面效能的重要一步。

CSS Sprites 是減少映像請求的有效方法。把所有的背景映像都放到一個圖片檔案中,然後通過CSS的background-image和background-position屬性來顯示圖片的不同部分;

圖片地圖是把多張圖片整合到一張圖片中。雖然檔案的總體大小不會改變,但是可以減少HTTP請求次數。圖片地圖只有在圖片的所有組成部分在頁面中是緊挨在一起的時候才能使用,如導覽列。確定圖片的座標和可能會比較繁瑣且容易出錯,同時使用圖片地圖導航也不具有可讀性,因此不推薦這種方法;

內嵌影像是使用 data:URL scheme 的方法把映像資料載入頁面中。這可能會增加頁面的大小。把內嵌影像放到樣式表(可緩衝)中可以減少HTTP請求同時又避免增加分頁檔的大小。但是內嵌影像現在還沒有得到主流瀏覽器的支援。點擊這裡查看網頁製作教程頻道內容

減少頁面的HTTP請求次數是你首先要做的一步。這是改進首次訪問使用者等待時間的最重要的方法。如同Tenni Theurer的他的部落格Browser Cahe Usage - Exposed!中所說,HTTP請求在無緩衝情況下佔去了40%到60%的回應時間。讓那些初次訪問你網站的人獲得更加快速的體驗吧!

2、減少DNS尋找次數

網域名稱系統(DNS)提供了網域名稱和IP的對應關係,就像電話本中人名和他們的電話號碼的關係一樣。當你在瀏覽器地址欄中輸入www.dudo.org時,DNS解析伺服器就會返回這個網域名稱對應的IP地址。DNS解析的過程同樣也是需要時間的。一般情況下返回給定網域名稱對應的IP地址會花費20到120毫秒的時間。而且在這個過程中瀏覽器什麼都不會做直到DNS尋找完畢。

緩衝DNS尋找可以改善頁面效能。這種緩衝需要一個特定的快取服務器,這種伺服器一般屬於使用者的ISP供應商或者本地區域網路控制,但是它同樣會在使用者使用的電腦上產生緩衝。DNS資訊會保留在作業系統的DNS緩衝中(微軟Windows系統中DNS Client Service)。大多數瀏覽器有獨立於作業系統以外的自己的緩衝。由於瀏覽器有自己的緩衝記錄,因此在一次請求中它不會受到作業系統的影響。點擊這裡查看網頁製作教程頻道內容

Internet Explorer預設情況下對DNS尋找記錄的緩衝時間為30分鐘,它在註冊表中的索引值為DnsCacheTimeout。Firefox對DNS的尋找記錄緩衝時間為1分鐘,它在設定檔中的選項為network.dnsCacheExpiration(Fasterfox把這個選項改為了1小時)。

當用戶端中的DNS緩衝都為空白時(瀏覽器和作業系統都為空白),DNS尋找的次數和頁面中主機名稱的數量相同。這其中包括頁面中URL、圖片、指令檔、樣式表、Flash對象等包含的主機名稱。減少主機名稱的數量可以減少DNS尋找次數。

減少主機名稱的數量還可以減少頁面中並行下載的數量。減少DNS尋找次數可以節省回應時間,但是減少並行下載卻會增加回應時間。我的指導原則是把這些頁面中的內容分割成至少兩部分但不超過四部分。這種結果就是在減少DNS尋找次數和保持較高程度並行下載兩者之間的權衡了。



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。