成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

前端性能優(yōu)化總結(jié)

yanwei / 2115人閱讀

摘要:記錄性能優(yōu)化相關(guān)的知識。將加載和執(zhí)行分離開,不阻塞渲染和的事件提前加載指定資源使用告訴瀏覽器未來可能會使用到的某個資源,瀏覽器就會在閑時去加載對應(yīng)的資源。

記錄性能優(yōu)化相關(guān)的知識。

Chrome DevTools — Network

DOMContentLoaded: DOM樹構(gòu)建完成的時間
Load: 頁面加載完畢。即DOM樹構(gòu)建完成后,加載完圖片等外部資源的時間
Finish: 是頁面上所有 HTTP 請求發(fā)送到響應(yīng)完成的時間

Waterfall

根據(jù) HTTP 請求的不同階段來進(jìn)行排序

Start Time:請求開始的時間
Response Time:資源開始下載的時間
End Time:請求結(jié)束的時間
Total Duration:請求整個完整過程的時間
Latency?請求等待響應(yīng)的時間

如下圖所示,Waterfall 右鍵之后選擇 Total Duration,則請求按照整個持續(xù)時間排序,不同的顏色代表不同的資源文件,淺色的部分代表資源的等待時間,深色的部分代表下載時間。

懶加載 一、為什么要用懶加載?

二、懶加載的實(shí)現(xiàn)原理

首先,將圖片的地址放在其它屬性(data-url)中,而不是 src。

頁面加載時根據(jù) scrollTop 的值判斷圖片是否在可視區(qū)域,如果在可視區(qū)域,則將 data-url 屬性中的值取出存放到src屬性中(首屏的圖片可以直接加載)。

在滾動過程中,判斷圖片是否在可視區(qū)域,如果在,則將 data-url 屬性中的值放到 src 屬性中。

圖片優(yōu)化

圖片優(yōu)化的幾種方式:

CSS Sprite 和 BASE64 的對比

各個類型圖片的對比

延遲加載第三方 JS

defer 屬性:渲染 DOM 的過程將和 JS 腳本加載的過程異步進(jìn)行,但是?JS 腳本的執(zhí)行要在所有元素解析完成之后(只適用于外部腳本文件)

async 屬性:加載和渲染 DOM 的過程將和?JS 腳本的加載與執(zhí)行的過程異步進(jìn)行(只適用于外部腳本文件)

defer 按照加載順序執(zhí)行腳本文件,async 則不會按照聲明順序執(zhí)行

具體區(qū)別見下圖:

綠色線代表 HTML 解析;藍(lán)色線代表 JS 腳本讀取時間;紅色線代表 JS 腳本執(zhí)行時間。

Preload 和 Prefetch

preload 提供了一種聲明式的命令,讓瀏覽器提前加載指定資源(加載后并不執(zhí)行),在需要執(zhí)行的時
候再執(zhí)行。

將加載和執(zhí)行分離開,不阻塞渲染和 document 的 onload 事件

提前加載指定資源

使用:

prefetch: 告訴瀏覽器未來可能會使用到的某個資源,瀏覽器就會在閑時去加載對應(yīng)的資源。

使用:

Gzip -> Brotil

Brotli 壓縮算法具有多個特點(diǎn),最典型的是以下 3 個:

針對常見的 Web 資源內(nèi)容,Brotli 的性能相比 Gzip 提高了 17-25%;

當(dāng) Brotli 壓縮級別為 1 時,壓縮率比 Gzip 壓縮等級為 9(最高)時還要高;

在處理不同 HTML 文檔時,Brotli 依然能夠提供非常高的壓縮率。

DNS預(yù)解析

默認(rèn)情況下瀏覽器會對頁面中和當(dāng)前域名不在同一個域的域名進(jìn)行預(yù)獲取,并且緩存,這就是隱式的 DNS Prefetch。如果想對頁面中沒有出現(xiàn)的域進(jìn)行預(yù)獲取,那么就要使用顯示的 DNS Prefetch 。

DNS 預(yù)解析是瀏覽器試圖在用戶訪問鏈接之前解析域名,如果一個頁面有多個域名的鏈接,DNS 預(yù)解析會在用戶點(diǎn)擊鏈接之前,使用最少的CPU和網(wǎng)絡(luò)在后臺進(jìn)行解析。當(dāng)用戶點(diǎn)擊已經(jīng)預(yù)解析的域名時,可以平均減少 200 ms 的等待時間,提升用戶體驗(yàn) 。

 
 
參考文檔:

https://segmentfault.com/a/11...
DNS預(yù)解析: https://www.cnblogs.com/golov...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/109897.html

相關(guān)文章

  • 前端性能優(yōu)化常用總結(jié)

    摘要:前言對于前端的性能話題,從來都沒有斷絕過。作為一個前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。前端發(fā)展以來,優(yōu)化方式,琳瑯滿目,有雅虎軍規(guī)等。所以,接下來我會從三個方面就前端性能進(jìn)行總結(jié)網(wǎng)絡(luò)方面操作及渲染方面數(shù)據(jù)方面。 前言 對于前端的性能話題,從來都沒有斷絕過。因?yàn)檫@個東西沒有最好,只有更好。而且往往也是業(yè)務(wù)的繁雜程度去決定優(yōu)化程度的。作為一個前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。它直接影響著我們...

    oliverhuang 評論0 收藏0
  • 前端性能優(yōu)化常用總結(jié)

    摘要:前言對于前端的性能話題,從來都沒有斷絕過。作為一個前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。前端發(fā)展以來,優(yōu)化方式,琳瑯滿目,有雅虎軍規(guī)等。所以,接下來我會從三個方面就前端性能進(jìn)行總結(jié)網(wǎng)絡(luò)方面操作及渲染方面數(shù)據(jù)方面。 前言 對于前端的性能話題,從來都沒有斷絕過。因?yàn)檫@個東西沒有最好,只有更好。而且往往也是業(yè)務(wù)的繁雜程度去決定優(yōu)化程度的。作為一個前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。它直接影響著我們...

    walterrwu 評論0 收藏0
  • 前端性能優(yōu)化常用總結(jié)

    摘要:前言對于前端的性能話題,從來都沒有斷絕過。作為一個前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。前端發(fā)展以來,優(yōu)化方式,琳瑯滿目,有雅虎軍規(guī)等。所以,接下來我會從三個方面就前端性能進(jìn)行總結(jié)網(wǎng)絡(luò)方面操作及渲染方面數(shù)據(jù)方面。 前言 對于前端的性能話題,從來都沒有斷絕過。因?yàn)檫@個東西沒有最好,只有更好。而且往往也是業(yè)務(wù)的繁雜程度去決定優(yōu)化程度的。作為一個前端開發(fā)者,性能是我們關(guān)注的指標(biāo)。它直接影響著我們...

    luzhuqun 評論0 收藏0
  • 前端每周清單年度總結(jié)與盤點(diǎn)

    摘要:前端每周清單年度總結(jié)與盤點(diǎn)在過去的八個月中,我?guī)缀踔蛔隽藘杉?,工作與整理前端每周清單。本文末尾我會附上清單線索來源與目前共期清單的地址,感謝每一位閱讀鼓勵過的朋友,希望你們能夠繼續(xù)支持未來的每周清單。 showImg(https://segmentfault.com/img/remote/1460000010890043); 前端每周清單年度總結(jié)與盤點(diǎn) 在過去的八個月中,我?guī)缀踔蛔隽?..

    jackwang 評論0 收藏0
  • 不能錯過的web前端性能優(yōu)化總結(jié)

    摘要:是具有此屬性的域名不需要用戶點(diǎn)擊鏈接就在后臺解析,而域名解析和內(nèi)容載入是串行的網(wǎng)絡(luò)操作,所以這個方式能減少用戶的等待時間,提升用戶體驗(yàn)。 web前端性能優(yōu)化主要分為以下幾個板塊: 加載優(yōu)化 DNS預(yù)解析 合并img、css、javascript文件,減少http請求 緩存一切可緩存資源 使用長Cache 使用外聯(lián)式引用css、javascript文件 壓縮HTML、css、jav...

    wums 評論0 收藏0
  • 不能錯過的web前端性能優(yōu)化總結(jié)

    摘要:是具有此屬性的域名不需要用戶點(diǎn)擊鏈接就在后臺解析,而域名解析和內(nèi)容載入是串行的網(wǎng)絡(luò)操作,所以這個方式能減少用戶的等待時間,提升用戶體驗(yàn)。 web前端性能優(yōu)化主要分為以下幾個板塊: 加載優(yōu)化 DNS預(yù)解析 合并img、css、javascript文件,減少http請求 緩存一切可緩存資源 使用長Cache 使用外聯(lián)式引用css、javascript文件 壓縮HTML、css、jav...

    宋華 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<