天天看點

減少HTTP請求的方法

    最近在看《高性能網站建設指南》,學習一些網站優化的技術,讀到關于減少http請求的一些方法:

   1. 圖檔地圖

        圖檔地圖允許你在一個圖檔上并聯多個URL,目标URL的選擇取決于使用者單擊了圖檔上的哪個位置。 使用圖檔地圖這種放手就既能減少HTTP請求,又無需改變頁面外觀感受,

圖檔地圖有兩種類型:伺服器端圖檔地圖将所有點選送出到同一個目标URL,向其傳遞使用者單擊的x、y坐标。web應用程式将該x、y坐标映射為适當的操作。用戶端圖檔地圖更加典型,因為它可以将使用者的點選映射到一個操作。而無需向後端應用程式發送請求。映射通過HTML的MAP标簽實作。

       使用圖檔地圖也有缺點。在定義圖檔地圖的區域坐标時,如果采取手工的方式則很難完成且容易出錯,而且除了矩形之外幾乎無法定義其他形狀。通過DHTML建立的圖檔地圖則在Internet Explorer中無法工作。

2. CSS Sprites

      和圖檔地圖一樣,css sprites也可以合并圖檔,但更為靈活。又降低了下載下傳量。合并後的圖檔會比分離的圖檔的總和要小,這是因為它降低了圖檔自身的開銷,如果需要在頁面中為背景、按鈕、導航攔、連結等提供大量圖檔,css sprties絕對是一種優秀的解決方案---幹淨的标簽、很少的圖檔和很短的響應時間。

3. 内聯圖檔

   通過使用data:URL模式可以在Web頁面中包含圖檔但無需任何額外的HTTP請求,盡管Internet Explorer 目前還不支援這種方式,但它能給其他浏覽器帶來的節省使得它值得關注。

   data: URL模式的主要缺陷在于不受IE的支援,另外一個缺陷是可能存在資料大小上的限制,

4. 合并腳本和樣式表

     和圖檔地圖及css sprites的優點一樣,将那些單獨的檔案合并到一個檔案中,可以減少http的請求數量并縮短最終使用者響應時間。