前端性能優化

前面若不優化處理,則會出現加載耗時好久,用戶懶得等待就切換到其餘網站,從而網站流量丟失javascript

 

 

目錄css

一、前端優化規則html

二、前端優化工具前端

 

一、前端優化規則java

通常來講提升網頁效率依照下面14條準則web

第一條:Make Fewer HTTP Requests 儘量的減小HTTP的Request請求數。後端

1:用一個大圖片代替多個小圖片。瀏覽器

2:合併你的css文件。緩存

3:合併你的javascript文件。服務器

第二條:Use a Content Delivery Network 使用CDN

第三條:Add an Expires Header 添加週期頭

第四條:Gzip Components 啓用Gzip壓縮(Gzip的思想就是把文件先在服務器端進行壓縮,而後再傳輸)

第五條:Put CSS at the Top 把CSS樣式放在頁面的上方。(因此CSS到上方的話,那麼瀏覽器解析結構的時候,就已經能夠對頁面進行渲染)

第六條:Move Scripts to the Bottom 將腳本放在底部(腳本和CSS正好相反,腳本應該放在頁面的底部)

第七條:Avoid CSS Expressions 避免使用CSS中的Expressions(第七條:Avoid CSS Expressions 避免使用CSS中的Expressions)

第八條:Make JavaScript and CSS External 將javascript和css獨立成外部文件(由於外部的引用文件會被瀏覽器緩存)

第九條:Reduce DNS Lookups 減小DNS查詢(DNS域名解析系統)

第十條:Minify JavaScript and CSS 減小JavaScript和CSS文件的體積(在你的最終發佈版本中把沒有必要的空行、空格和註釋所有去掉)

第十一條:Avoid Redirects 避免跳轉(可是顯然,中間多浪費了一些時間)

第十二條 Remove Duplicate Scripts 移除重複的腳本

第十三條:Configure ETags 配置你的實體標籤(經過Etag,瀏覽器就能夠知道如今的緩存中的內容是否是最新的,需不須要從新從服務器上從新下載)

第十四條:Make Ajax Cacheable 上面的準則也適用Ajax(拙劣的使用Ajax不會讓你的網頁效率更高,反而會下降你的網頁效率)

 

 

二、前端優化工具

早期能夠使用yslow查看前端可優化項目,可是yslow已經不更新了,不過還能夠經過其餘網站

第一種:免費測試網址

https://www.webpagetest.org/

 

 

主要的指標數據

  • First Byte Time

適用對象:訪問頁面的第一字節時間(後端處理+重定向)

檢查內容:目標時間包括DNS尋址時間+創建鏈接時間(Socket) + SSL認證時間 + 100ms。當超過目標時間每100ms時, 性能評定將下降一個等級

  • Keep-Alive

適用對象:同一個域名下多個頁面對象使用了同一個鏈接(Socket)

檢查內容:響應頭文件包含"Keep-Alive"的指令或者在給定的主機中多個對象中使用同一個鏈接

  • GZIP Text

適用對象:工具會將MIME 類型爲"text/*" 或"*java*"的全部對象

檢查內容:檢查Transfer-encoding來看是否爲GZIP,若是不是則結果中會提供說明該文件是壓縮過以及提供壓縮比率(所以一個文件能夠節省30%的大小,經過壓縮即產生了源文件70%大小的文件)

  • Compress Images

適用對象:JPEG圖片

檢查內容:對比使用photoshop質量選擇爲50後的文件大小,尺寸超出10%爲達標,10%~50%爲警告,超出50%爲不達標,整體評分爲圖片重壓縮後佔原文件的百分比

  • Use Progressive JPEGs

適用對象:全部JPEG圖片

檢查內容:檢查每一個JPEG圖片文件並計算分數,分數爲圖片的壓縮比(壓縮文件大小/原文件大小)

  • Cache Static

適用對象: 符合如下的狀況的任意的非html對象數據,這個工具會將MIME類型爲"text/*","*java*"或者"image/*",此類沒有明確標明過時時間(0或者-1),cache-controlheader設置爲private,non-store 或者non-cachepragma header 設置爲no-cache

檢查內容:存在一個」Expires「 header(而不是0或者-1),或者設置cache-control: max-age並設置爲一個小時或超過一個小時。當過時時間設置小於30天,將評定爲警告

  • Use A CDN

適用對象:全部靜態的非HTML內容(css, js 以及圖片)

檢查內容:檢查是否託管在一個已知的CDN上(CName映射到一個已知的CDN網絡上).超過總體頁面80%爲靜態資源時,則須要考慮使用CDN,將靜態資源託管在CDN上,你能夠從這裏知道當前已知的CDN

 

第二種:

免費測試網址二:https://developers.google.com/speed/pagespeed/insights/?hl=zh-CN

 

 

相關文章
相關標籤/搜索