詳解谷歌瀏覽器 performance 選項(xiàng)卡

本文要點(diǎn)

詳細(xì)介紹谷歌瀏覽器 performance 選項(xiàng)卡的各個(gè)指標(biāo)卖陵,讓你知道如何查看網(wǎng)頁性能。

谷歌瀏覽器版本為:79.0.3945.117(正式版本) (64 位)侧啼。

性能分析操作流程

1.在谷歌瀏覽器調(diào)式模式下牛柒,切換到 performance 選項(xiàng)卡。點(diǎn)擊刷新圖標(biāo)(或者Ctrl+Shift+E快捷鍵)痊乾。

2.出現(xiàn)如下網(wǎng)頁分析進(jìn)度條皮壁。


3.自動(dòng)停止后,會(huì)出現(xiàn)性能分析圖符喝。
注意點(diǎn)1:需要勾選屏幕快照選項(xiàng)闪彼,才會(huì)出現(xiàn)如下屏幕快照截圖(一般是默認(rèn)勾選)。


注意點(diǎn)2:整個(gè)分析圖出現(xiàn)的時(shí)間軸就是前面步驟中分析進(jìn)度條的時(shí)間协饲,而默認(rèn)出現(xiàn)的區(qū)域時(shí)間軸是首屏加載時(shí)間畏腕。


如圖所示:
(1)以上紅色框出的部分(也是整個(gè)時(shí)間軸)就是前面分析進(jìn)度條的分析時(shí)間。
(2)以上綠色框出的部分是首屏加載時(shí)間茉稠。
(3)首屏加載時(shí)間刻度與選項(xiàng)卡 SummaryTotal 總時(shí)間一致描馅。
(4)如下圖可通過左右邊界來調(diào)整時(shí)間軸區(qū)域。時(shí)間軸區(qū)域 2 是 時(shí)間軸區(qū)域 1 的放大版而线,便于查看時(shí)間軸區(qū)間的各項(xiàng)指標(biāo)性能情況铭污。

性能分析圖詳解

如下所示恋日,把整張分析圖劃分成 3 個(gè)區(qū)域。


區(qū)域1:網(wǎng)頁性能總覽圖

總覽圖包含 FPS(每秒幀數(shù)情況)嘹狞、CPU(CPU占用情況)岂膳、NET(網(wǎng)絡(luò)資源情況)HEAP(JS占用情況)一共四項(xiàng)指標(biāo)磅网。

FPS:全稱 Frames Per Second谈截,表示每秒傳輸幀數(shù),是速度單位涧偷,用來分析動(dòng)畫的一個(gè)主要性能指標(biāo)簸喂。1fps = 0.304 meter/sec(米/秒)。如下圖所示燎潮,綠色豎線越高喻鳄,F(xiàn)PS 越高。 紅色表示長時(shí)間幀确封,可能出現(xiàn)卡頓除呵。

如果能夠達(dá)到 >=60fps(幀)/s 的刷新頻率,就可以避免出現(xiàn)卡頓隅肥。
盡量保證頁面要有高于每秒60fps(幀)的刷新頻率竿奏,這與大多數(shù)顯示器的刷新率相吻合(60Hz)袄简。如果網(wǎng)頁動(dòng)畫能夠做到每秒60幀腥放,就會(huì)跟顯示器同步刷新,達(dá)到最佳的視覺效果绿语。

這意味著秃症,一秒之內(nèi)進(jìn)行 60 次重新渲染,每次重新渲染的時(shí)間不能超過1/60=0.01666s(秒)吕粹;0.01666s*1000=16.66ms(毫秒)种柑。

不同幀的體驗(yàn):
幀率能夠達(dá)到 50 ~ 60 FPS 的動(dòng)畫將會(huì)相當(dāng)流暢,讓人倍感舒適匹耕;
幀率在 30 ~ 50 FPS 之間的動(dòng)畫聚请,因各人敏感程度不同,舒適度因人而異稳其;
幀率在 30 FPS 以下的動(dòng)畫驶赏,讓人感覺到明顯的卡頓和不適感;
幀率波動(dòng)很大的動(dòng)畫既鞠,亦會(huì)使人感覺到卡頓煤傍。

CPUCPU 資源。此面積圖指示消耗 CPU 資源的事件類型嘱蛋。
下圖中顏色分別為(與數(shù)據(jù)統(tǒng)計(jì)中的顏色數(shù)據(jù)表示一致):
藍(lán)色(Loading):表示網(wǎng)絡(luò)通信和 HTML 解析時(shí)間蚯姆。
黃色(Scripting):表示 JavaScript 執(zhí)行時(shí)間五续。
紫色(Rendering):表示樣式計(jì)算和布局(重排)時(shí)間。
綠色(Painting):表示重繪時(shí)間龄恋。
灰色(other):表示其它事件花費(fèi)的時(shí)間疙驾。
白色(Idle):表示空閑時(shí)間。

NET:每條彩色橫杠表示一種資源郭毕。橫杠越長荆萤,檢索資源所需的時(shí)間越長。 每個(gè)橫杠的淺色部分表示等待時(shí)間(從請求資源到第一個(gè)字節(jié)下載完成的時(shí)間)铣卡。

HEAP:JavaScrip 執(zhí)行的時(shí)間分布链韭。

區(qū)域2:各項(xiàng)指標(biāo)的區(qū)塊圖

1.Network:表示每個(gè)服務(wù)器資源的加載情況。

2.Frames:表示每幅幀的運(yùn)行情況煮落。

3.Timings:上圖中有 4 條虛線敞峭,分別表示如下。
(1)DCL(DOMContentLoaded)表示 HTML 文檔加載完成事件蝉仇。當(dāng)初始 HTML 文檔完全加載并解析之后觸發(fā)旋讹,無需等待樣式、圖片轿衔、子 frame 結(jié)束沉迹。作為明顯的對比,load 事件是當(dāng)個(gè)頁面完全被加載時(shí)才觸發(fā)害驹。
(2)FP(First Paint)首屏繪制鞭呕,頁面剛開始渲染的時(shí)間。
(3)FCP(First Contentful Paint)首屏內(nèi)容繪制宛官,首次繪制任何文本葫松,圖像,非空白canvas 或 SVG 的時(shí)間點(diǎn)底洗。
(4)FMP(First Meaningful Paint)首屏有意義的內(nèi)容繪制腋么,這個(gè)“有意義”沒有權(quán)威的規(guī)定,本質(zhì)上是通過一種算法來猜測某個(gè)時(shí)間點(diǎn)可能是 FMP亥揖。有的理解為是最大元素繪制的時(shí)間珊擂,即同LCP(Largest Contentful Paint )。
其中 FP费变、FCP摧扇、FMP 是同一條虛線,三者時(shí)間不一致胡控。比如首次渲染過后扳剿,有可能出現(xiàn) JS 阻塞,這種情況下 FCP 就會(huì)大于FP昼激。
(5)L(Onload)頁面所有資源加載完成事件庇绽。
(6)LCP(Largest Contentful Paint )最大內(nèi)容繪制锡搜,頁面上尺寸最大的元素繪制時(shí)間。

4.Main:表示主線程瞧掺。
合成線程主要負(fù)責(zé):
Javascript 的計(jì)算與執(zhí)行耕餐;
CSS 樣式計(jì)算;
Layout 布局計(jì)算辟狈;
將頁面元素繪制成位圖(paint)肠缔,也就是光柵化(Raster);
將位圖給合成線程哼转。

5.Raster:光柵化(處理光柵圖明未,即位圖)。

6.GPU:表示 GPU 占用情況壹蔓。

7.Chrome_childIOThread:子線程趟妥。

8.Compositor:合成線程。
合成線程主要負(fù)責(zé):
將位圖(GraphicsLayer 層)以紋理(texture)的形式上傳給 GPU佣蓉;
計(jì)算頁面的可見部分和即將可見部分(滾動(dòng))披摄;
CSS 動(dòng)畫處理;
通知 GPU 繪制位圖到屏幕上勇凭。

JS Heap:表示 JS 占用的內(nèi)存大小疚膊。
Documents:表示文檔數(shù)。
Nodes:表示 Node 節(jié)點(diǎn)數(shù)虾标。
Listeners:表示監(jiān)聽數(shù)鹦筹。
GPU Memory:表示 GPU 占用數(shù)饭入。
下面的 4 條折線圖是以上 4 個(gè)指標(biāo)(沒有 GPU 消耗)對應(yīng)的時(shí)間消耗的內(nèi)存大小與節(jié)點(diǎn)數(shù)量伟姐。若將某項(xiàng)指標(biāo)前面的勾選去掉則不會(huì)出現(xiàn)對應(yīng)的折線拯钻。
注意這個(gè)折線圖只有在點(diǎn)擊 Main 主線程的時(shí)候才會(huì)有由蘑,選擇其他的指標(biāo)時(shí)折線圖區(qū)域時(shí)空白察绷。

區(qū)域3:數(shù)據(jù)統(tǒng)計(jì)與匯總

Summary:表示各指標(biāo)時(shí)間占用統(tǒng)計(jì)報(bào)表群扶;
Bottom-Up:表示事件時(shí)長排序列表(倒序)哥遮;
Call tree:表示事件調(diào)用順序列表续镇;
Event Log:表示事件發(fā)生的順序列表美澳;

Loading 事件

Scripting 事件

Rendering 事件

Painting事件

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市摸航,隨后出現(xiàn)的幾起案子制跟,更是在濱河造成了極大的恐慌,老刑警劉巖酱虎,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件雨膨,死亡現(xiàn)場離奇詭異,居然都是意外死亡读串,警方通過查閱死者的電腦和手機(jī)聊记,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進(jìn)店門撒妈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人排监,你說我怎么就攤上這事狰右。” “怎么了舆床?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵棋蚌,是天一觀的道長。 經(jīng)常有香客問我挨队,道長谷暮,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任盛垦,我火速辦了婚禮坷备,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘情臭。我一直安慰自己省撑,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布俯在。 她就那樣靜靜地躺著竟秫,像睡著了一般。 火紅的嫁衣襯著肌膚如雪跷乐。 梳的紋絲不亂的頭發(fā)上肥败,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天,我揣著相機(jī)與錄音愕提,去河邊找鬼馒稍。 笑死,一個(gè)胖子當(dāng)著我的面吹牛浅侨,可吹牛的內(nèi)容都是我干的纽谒。 我是一名探鬼主播,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼如输,長吁一口氣:“原來是場噩夢啊……” “哼鼓黔!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起不见,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤澳化,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后稳吮,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體缎谷,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年灶似,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了列林。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瑞你。...
    茶點(diǎn)故事閱讀 38,100評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖席纽,靈堂內(nèi)的尸體忽然破棺而出捏悬,到底是詐尸還是另有隱情,我是刑警寧澤润梯,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布过牙,位于F島的核電站,受9級特大地震影響纺铭,放射性物質(zhì)發(fā)生泄漏寇钉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一舶赔、第九天 我趴在偏房一處隱蔽的房頂上張望扫倡。 院中可真熱鬧,春花似錦竟纳、人聲如沸撵溃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽缘挑。三九已至,卻和暖如春桶略,著一層夾襖步出監(jiān)牢的瞬間语淘,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工际歼, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留惶翻,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓鹅心,卻偏偏與公主長得像吕粗,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子巴帮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內(nèi)容