chrome devtools使用详解——Performance

栏目: JavaScript · 发布时间: 5年前

内容简介:本文是学习&研究笔记,若有错误还请指正!相关文章当页面卡顿、慢时可以使用Performance来分析问题原因所在。

本文是学习&研究笔记,若有错误还请指正!

相关文章

当页面卡顿、慢时可以使用Performance来分析问题原因所在。

面板

Performance,即运行时性能表现,面板如下:

chrome devtools使用详解——Performance

使用

  • 使用隐身窗口,打开项目(比如在线测试DEMO)
  • 点击录制按钮(黑点),开始记录此段时间内页面运行性能
  • 点击 stop 停止
chrome devtools使用详解——Performance

面板功能分析

如下划分成4个区域

chrome devtools使用详解——Performance

区域1:控制面板

  • Screenshots 截图:默认勾选,每一帧都会截图。关闭后区域二下面部分会去除(下图红框标记那里)
    chrome devtools使用详解——Performance
    通过在时间线上移动观察页面的变化
  • Memory 内存消耗记录:勾选后可以看到各种内存消耗曲线
    chrome devtools使用详解——Performance

【以下配置都是用来模拟手机、慢网络下使用的,无需可以跳过】

  • Disable javaScript samples 关闭javaScript样本:减少在手机运行时的开销,模拟手机运行时勾选
  • Network 网络模拟:可以模拟在3G,4G等网络条件下运行页面
  • Enable advanced paint instrumentation(slow) 记录渲染事件的细节:选择frames中的一块,可以看到区域四多了个 Layers
    chrome devtools使用详解——Performance
  • CPU CPU限制:主要为了模拟底CPU下运行性能

区域2:概览面板(overview)

chrome devtools使用详解——Performance

1 . FPS

FPS :每秒帧数,对于动画而言标准是保持在60FPS

☆ 优化

绿色越高越好,出现红色则表示FPS低(这就是你为啥觉得页面卡顿了),你可以在区域三 Frames 中看到具体的FPS值(见下面第二图)。

☆ 测试

多点几次DEMO的 ADD 10 按钮,直到感觉画面不流畅为止,开启分析记录,如下

chrome devtools使用详解——Performance

点击方块可以看到57.1ms内共有18fps

chrome devtools使用详解——Performance

2 . CPU

CPU : 处理各个任务花费的时间,选择一段CPU统计可以在区域四的 Summary 看到统计表格

chrome devtools使用详解——Performance
Scripting
Rendering
Painting
Loading
ldle

☆ 优化

比重占的大的颜色可能有问题,如上图中的紫色部分 Rendering ,表示渲染耗费时间久

3 . NET

NET :各个请求花费时间 这块可以再 network 里看,更清晰些

chrome devtools使用详解——Performance

区域3:线程面板

chrome devtools使用详解——Performance

1 . Frames

Frames :帧线程,鼠标悬浮绿色块可以看到fps

2. Main

Main :主线程,负责执行Javascript, 解析HTML/CSS, 完成绘制。 可以看到主线程调用栈和耗时情况,每个长条都是一个事件,悬浮可以看到耗时和事件名

  • x轴指时间 最上面的第一条就是事件触发的地方,直到结束,这条线是最长的
  • y轴指调用栈 上面的event调用了下面的子event,越到下面数量越少(瀑布)
chrome devtools使用详解——Performance

颜色代表各个事件类型,以下列出一些常见的事件

chrome devtools使用详解——Performance

3. Raster

Raster :Raster线程,负责完成某个layer或者某些块(tile)的绘制。

chrome devtools使用详解——Performance

区域4:统计面板

统计面板选择因点击选择不同的目标统计的内容不同

chrome devtools使用详解——Performance
  • Summary 统计图:展示各个事件阶段耗费的时间

  • Bottom-Up 排序:可以看到各个事件消耗时间排序 (1) self-time 指除去子事件这个事件本身消耗的时间 (2) total-time 这个事件从开始到结束消耗的时间(包含子事件)

  • Call Tree 调用栈: Main 选择一个事件,可以看到整个事件的调用栈(从最顶层到最底层,而不是只有当前事件)

  • Event Log 事件日志 (1) 多了个 start time ,指事件在多少毫秒开始触发的 (2) 右边有事件描述信息


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C#入门经典

C#入门经典

[美] Karli Watson、Christian Nagel / 齐立波、黄静 / 清华大学出版社 / 2008-12 / 118.00元

这是一本成就无数C#程序员的经典名著,厚而不“重”,可帮助您轻松掌握C#的各种编程知识,为您的职业生涯打下坚实的基础,《C#入门经典》自第1版出版以来,全球销量已经达数万册,在中国也有近8万册的销量,已经成为广大初级C#程序员首选的入门教程,也是目前国内市场上最畅销的C#专业店销书,曾两次被CSDN、《程序员》等机构和读者评选为“最受读者喜爱的十大技术开发类图书”!第4版面向C#2008和.NET......一起来看看 《C#入门经典》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具