chrome Dev Tools 性能分析 performance

chrome 的performance用來分析性能優化性能非常好用,下面以一個頁面來舉例

性能分析

性能分析最好使用隱私無痕模式,以保證乾淨的環境下,避免chrome插件對性能分析結果的影響

  • Performance 性能面板 :可看到白屏時間,FPS,資源加載曲線,內存變化
  • Memory 內存面板,記錄某個時刻的頁面內存情況,用於分析內存泄露

img

img

詳細拆分

overview- FPS

頁面每秒幀數。用來分析動畫的性能指標。fps=60性能很好

FPS(frames per second)是用來分析動畫的一個主要性能指標。讓頁面效果能夠達到>=60fps(幀)/s的刷新頻率以避免出現卡頓。能保持在60的FPS的話,那麼用戶體驗就是不錯的。

爲什麼是60fps?

我們的目標是保證頁面要有高於每秒60fps(幀)的刷新頻率,這和目前大多數顯示器的刷新率相吻合(60Hz)。如果網頁動畫能夠做到每秒60幀,就會跟顯示器同步刷新,達到最佳的視覺效果。這意味着,一秒之內進行60次重新渲染,每次重新渲染的時間不能超過16.66毫秒。

fps<24 會讓用戶感覺到卡頓,人眼的識別主要是24幀

FPS chrome最新版需要開啓

img

開啓後可以看到fps

img

紅色塊標識長時間幀,很容易遇到卡幀,有紅色的地方就是這塊有問題

img

overview-main火焰圖

Main中展示的是火焰圖,也就是函數調用的堆棧火焰圖
x軸表示時間,最上面的第一條就是事件觸發的地方,直到結束,這條線是最長的
y軸表示調用的函數,函數中還包含依次調用的函數,越到下面數量越少(瀑布)

不同顏色代表不同的事件類型,以下對常見的事件類型進行區分

Parse HTML(藍色): chrome 進行HTML解析

Event Script(橙色): Javascript事件(例如 mousedown)

Layout(粉色): 樣式計算和佈局,即重排

Recalculate style(粉色): 樣式計算和佈局,即重排

Paint(綠色): 合成的圖層被繪製到顯示畫面的一個區域

Composite(綠色): Chrome的渲染引擎合成了圖像層

識別問題

在火焰圖裏有很多的task,如果是耗時長的task ,右上角就有紅色三角號,這是chrome自動識別的有問題的部分,點擊任務,就可以在下面統計看到具體信息

img

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章