15618377005

15618377005 / 15618377005

wj@zuoshouyoudaili.com

contact
上海市嘉定區德富路1199号太湖世家環球大(dà)廈1602室
聯系我(wǒ)(wǒ)們

            

        
全部 公司新聞行業動态觀點資(zī)訊
網站優化,需要用到哪些工(gōng)具?

一(yī)、概要

 

關于優化工(gōng)具,我(wǒ)(wǒ)們主要從兩方面說起:「性能評估工(gōng)具」和「優化工(gōng)具」。

 

1.性能評估工(gōng)具

 

Lighthouse

 

PageSpeed

 

YSlow

 

2.優化工(gōng)具我(wǒ)(wǒ)們主要依賴「Chrome DevTools」,大(dà)緻如下(xià):

 

Network

 

Performance

 

Show Third Party Badges

 

Block Request URL

 

Coverage

 

DOM

 

Rendering

 

Layer

 

二、Lighthouse

 

1.Lighthouse 安裝

 

Chrome Setting - 更多工(gōng)具 - 擴展程序 - 打開(kāi) Chrome 網上應用店(diàn) - Lighthouse

 

2.插件 - 生(shēng)成報告

 

報告是我(wǒ)(wǒ)們的一(yī)個重要參考指标,這是網站評估的通用方法。

 

當然,網站也會有不同的類别,關注指标也不盡相同,後續我(wǒ)(wǒ)們會繼續探讨「如何制定合理的網站優化性能指标」。

 

3.優化建議

 

Lighthouse 比較人性化的點在于他既提出了問題,同時也提出了解決建議。

 

三、PageSpeed

 

1.使用 PageSpeed

 

2.分(fēn)析報告

 

四、Chrome DevTools - Network

 

1.關于 Network 我(wǒ)(wǒ)們重點關注标注的 3 處

 

2.Timing 也是優化不可缺少的工(gōng)具:

 

補充說明一(yī)下(xià):TTFB:等待初始響應所用的時間,也稱爲第一(yī)字節的時間,這是我(wǒ)(wǒ)們判斷服務器以及網絡狀況的重要指标。

 

此時間将捕捉到服務器往返的延遲時間,以及等待服務器傳送響應所用的時間。

 

五、Chrome DevTools - Performance

 

1.概覽

 

2.版面主要由 4 部分(fēn)構成

 

控制面闆:錄制,清除,配置記錄期間需要捕獲的信息

 

Overview:頁面性能的高級彙總,以及頁面加載情況

 

火(huǒ)焰圖:CPU 堆疊追蹤的可視化

 

總覽:餅圖記錄各部分(fēn)耗時情況

 

3.Overview 詳解

 

FPS每秒幀數。綠色豎線越高,FPS 越高。FPS 圖表上的紅色塊表示長時間幀,很可能會出現卡頓。

 

CPUCPU 資(zī)源。此面積圖指示消耗 CPU 資(zī)源的事件類型。

 

NET每條彩色橫杠表示一(yī)種資(zī)源。橫杠越長,檢索資(zī)源所需的時間越長。每個橫杠的淺色部分(fēn)表示等待時間(從請求資(zī)源到第一(yī)個字節下(xià)載完成的時間)。深色部分(fēn)表示傳輸時間(下(xià)載第一(yī)個和最後一(yī)個字節之間的時間)。

 

需要特别注意,Performance 工(gōng)具中(zhōng)的每一(yī)種顔色其實都有自己的含義。

 

HTML 文件爲藍(lán)色。

 

腳本爲黃色。

 

樣式表爲紫色。

 

媒體(tǐ)文件爲綠色。

 

其他資(zī)源爲灰色。

 

小(xiǎo)技巧:

 

使用無痕模式,減少 Chrome 擴展程序會給應用的幹擾。

 

4.火(huǒ)焰圖

 

NetworkNetwork 這裏我(wǒ)(wǒ)們可以看出來,我(wǒ)(wǒ)們資(zī)源加載的一(yī)個順序情況。什麽時間加載了什麽資(zī)源,通過這些,我(wǒ)(wǒ)們更直觀的知(zhī)道資(zī)源是否并行加載。

 

Frames上文提及到的頁面幀情況。

 

Interactions

 

Timings 中(zhōng)如下(xià) 5 個指标是我(wǒ)(wǒ)們優化的方向

 

First Paint

 

DOMContentLoaded Event

 

Onload Event

 

First Contentful Paint

 

First Meaningful Paint

 

Main:展示了主線程運行狀況。X 軸代表着時間,每個長條代表着一(yī)個 event。長條越長就代表這個 event 花費(fèi)的時間越長。Y 軸代表了調用棧 call stack 。

 

在棧裏,上面的 event 調用了下(xià)面的 event。

 

JS Heap

 

JavaScript 運行過程中(zhōng)的大(dà)部分(fēn)數據都保存在堆 Heap 中(zhōng),所以 JavaScript 性能分(fēn)析另一(yī)個比較重要的方面是内存,也就是堆的分(fēn)析。

 

打開(kāi) Performance 監視器

 

六、Chrome DevTools - Show Third Party Badges

 

很多情況下(xià),并不是我(wǒ)(wǒ)們網站本身的問題,有可能你使用的三方資(zī)源拖累了站點性能。所以,我(wǒ)(wǒ)們需要使用 Show Third Party Badges 來進行排查。

 

1.測試站點:https://techcrunch.com/

 

2.打開(kāi)控制面闆:Command + Shift + P

 

3.打開(kāi) Network,注意資(zī)源前面的彩色标志(zhì)

 

三方資(zī)源都被标記出來了,移除或者替換那些影響性能的東西。

 

網站優化

 

七、Chrome DevTools - Block Request URL

 

對于項目中(zhōng)不确定是否有用的資(zī)源,我(wǒ)(wǒ)們可以使用 Block Request URL 來排除。

 

1.選中(zhōng)資(zī)源 - 右鍵 - Block Request URL

 

阻止某些資(zī)源加載,控制變量法來排查頁面性能問題。

 

八、Chrome DevTools - Coverage

 

1.打開(kāi)控制面闆:Command + Shift + P

 

2.輸入:Show Coverage

 

3.找到相應的文件,可以看到文件左側已經标記出了部分(fēn)代碼的使用情況

 

解決思路也很簡單:盡可能去(qù)通過 Webpack 來拆包,控制大(dà)小(xiǎo)在 40KB 以下(xià),移除那些未使用代碼。

 

九、Chrome DevTools - DOM

 

我(wǒ)(wǒ)們經常提到要優化 Dom,那麽節點控制在什麽範圍才合理呢?

 

總共少于 1500 個節點

 

最大(dà)深度爲 32 個節點

 

不要存在子節點超過 60 個節點的父節點

 

查看所有 DOM 節點數:

 

document.querySelectorAll('*').length

 

查看子元素個數:

 

document.querySelectorAll('body > *').length

 

通常,隻在需要時查找創建 DOM 節點的方法,并在不再需要時銷毀它們。

 

十、Chrome DevTools - Rendering

 

關于重渲對頁面的影響,我(wǒ)(wǒ)們就不多說了。那麽如何知(zhī)道頁面的渲染過程呢?我(wǒ)(wǒ)們可以通過 Rendering 來可視化查看。

 

1.打開(kāi) Rendering 選項

 

2.刷新頁面

 

綠色區域越重,說明重複渲染的次數越多,通過優化 DOM 來減少無效渲染。

 

十一(yī)、Chrome DevTools - Layer

 

你可能會很好奇,爲什麽要查看圖層?

 

這是因爲,我(wǒ)(wǒ)們經常會在不知(zhī)不覺的情況下(xià)搞亂了圖層關系,或者增加了不合适的圖層。

 

1.打開(kāi)控制面闆:Command + Shift + P2.選擇 Layer 選項

 

是不是圖層問題就清清楚楚的擺在眼前了~

 

十二、總結

 

通過優化工(gōng)具,我(wǒ)(wǒ)們可以輕而易舉的對網站進行定位分(fēn)析。之後就可以快速展開(kāi)優化,讓網站高性能的運轉起來。優化,也不過如此。


銷售顧問
王經理
聯系電(diàn)話(huà)
15618377005
微信二維碼

服務時間:周一(yī)至周六 8:30-18:00

聯系電(diàn)話(huà):15618377005

COPYRIGHT © 2024 上海網頁設計公司|上海網站建設|上海網站制作|微信小(xiǎo)程序開(kāi)發|上海勁晟網絡科技有限公司 ALL RIGHTS RESERVED
一(yī)鍵撥打