webkit 瀏覽器內幕之資源載入

lvrice_start發表於2018-08-29

webkit 資源載入

網路和資源載入是網頁載入和渲染的第一步,也是必不可少的第一步。網頁本身也是一種資源,而且網頁還需要很多其他資源,例如圖片、視訊等。

資源的快取

資源的快取機制是提高資源使用效率的方法。它的基本思想是建立一個資源的快取池,當webkit需要請求資源的時候,當請求資源的時候,先從資源池中查詢是否存在相應的資源,如果則在資源池中取取出使用,如果沒有則會建立一個新類去請求伺服器資源,webkit 在收到資源後將其設定該資源的類中的物件中去,以使快取後下次使用。這裡指的是記憶體快取。

資源載入器

資源載入器總共三種

  • 針對每種資源型別特定的載入器,其特點是僅載入某一種資源。例如 image
  • 資源快取機制的資源加器,特點是所有的載入器都共享它來查詢並插入快取資源。
  • 能用資源載入器,webkit 需要從網路或者檔案系統獲取資源的時候,只負責獲取資源。

高效使用資源使用策略

  • 減少連結的重定向,大量的重定向,不僅要求瀏覽器多次建立連線,同時也需要多次DNS 解析,這會阻礙DNS 預取技術的應用。
  • 利用DNS 預取機制。讓瀏覽器知道瀏覽器的url,開發者指定需要預取的 URl
  • 搭建支援 SPDY 協議的伺服器
  • 避免錯誤的連結請求。如網頁中包含一些失效的連結,當瀏覽試圖獲取這些對應的資源的時候,也點佔用網路資源。
  • 在HTML 網頁中內嵌小型資源,當資源比較小的時候,開發者可以直接將它們放到網頁中
  • 合交一些資源,如 css js image
  • 使用瀏覽器本地磁碟快取機制,當http 協義支援的資源失效機制,可以通過對資源設定適當的失效期來減少對資源的重複獲取。
  • 啟用資源壓縮技術。可以使用zip 壓縮技術,然後在http 訊息頭說明此資源已經壓縮,這樣可以減少網路傳輸的資料量。

相關文章