浏览器Performance性能监控使用详解

news2024/12/24 9:23:44

文章目录

      • 1.Performance
      • 2.测试性能操作流程
      • 3.Performance检测结果详解
        • 区域1:controls【控制栏】
        • 区域2:overview【网页性能总览图】
        • 区域3:火焰图【各项指标的堆叠追踪可视化】
        • 区域4:统计汇总【以图表的形式汇总数据】
      • 4 其他监控性能小工具
        • 4.1 Performance monitor面板:页面性能的实时监控
        • 4.2 实时FPS面板:可以实时展示页面的FPS指标

1.Performance

Performance 是 Chrome 开发者工具中的一个功能,用于记录网页从初始化到运行时的所有性能指标。

可把performance理解为对性能评估领域的一个接口,可以通过performance拿到很多性能上的参数,通过performance去定位哪里有问题,哪里有问题改哪里。

2.测试性能操作流程

1、在谷歌浏览器调式模式下(F12),切换到 Performance 选项卡。
在这里插入图片描述
2.点击刷新图标,重新加载页面,出现网页分析进度条。
在这里插入图片描述
3.停止后,会出现性能分析图
在这里插入图片描述

3.Performance检测结果详解

1.将整个Performance面板划分成 4 个区域
在这里插入图片描述

区域1:controls【控制栏】

在这里插入图片描述
1、录制、停止按钮可实时绘制一段时间当前页面时间轴的性能轨迹,时间为秒,停止后生成一张性能分析图。
2、屏幕快照选项,需要勾选才会出现屏幕快照截图(一般是默认勾选)
在这里插入图片描述
3、内存复选框:指标对应的时间资源状态。
这个折线图只有在点击 Main 主线程的时候才会有,选择其他的指标时折线图区域时空白。
在这里插入图片描述
在这里插入图片描述
JS Heap:表示 JS 占用的内存大小。
Documents:表示文档数。
Nodes:表示 Node 节点数。
Listeners:表示监听数。
GPU Memory:表示 GPU 占用数。

4、表示网速控制,可选3G快、3G慢、或者自定义网速。

5、表示是否对CPU进行减速,可选4倍减速、6倍减速,可用来测试CPU在极端环境下对页面性能的影响。

区域2:overview【网页性能总览图】

FPS(每秒帧数情况)、CPU(CPU占用情况)、NET(网络资源情况)、HEAP(JS占用情况)一共四项指标。
在这里插入图片描述

ps: 在性能报告中,有很多的数据。可以通过双击,拖动、鼠标选取、滚轮滚动等等动作来放大缩小报告范围,从各种时间段来观察分析报告。
在这里插入图片描述
1、FPS【Frames Per Second】:表示每秒传输帧数,是速度单位,用来分析动画的一个主要性能指标。
帧率能够达到 50 ~ 60 FPS 的动画将会相当流畅,让人倍感舒适;
帧率在 30 ~ 50 FPS 之间的动画,因各人敏感程度不同,舒适度因人而异;
帧率在 30 FPS 以下的动画,让人感觉到明显的卡顿和不适感;
帧率波动很大的动画,亦会使人感觉到卡顿。
在这里插入图片描述
绿色竖线越高,FPS 越高。 红色表示长时间帧,可能出现卡顿。
2、CPU 资源:此面积图指示消耗 CPU 资源的事件类型。
在这里插入图片描述
颜色分别为(与数据统计中的颜色数据表示一致):

蓝色(Loading):表示网络通信和 HTML 解析时间。
黄色(Scripting):表示 JavaScript 执行时间。
紫色(Rendering):表示样式计算和布局(重排)时间。
绿色(Painting):表示重绘时间。
灰色(other):表示其它事件花费的时间。
白色(Idle):表示空闲时间。

3、NET:每条彩色横杠表示一种资源。横杠越长,检索资源所需的时间越长。 每个横杠的浅色部分表示等待时间(从请求资源到第一个字节下载完成的时间)。
在这里插入图片描述
4、HEAP:JavaScrip 执行的时间分布。
在这里插入图片描述

区域3:火焰图【各项指标的堆叠追踪可视化】

在这里插入图片描述

1、Network:表示每个服务器资源的加载情况。
2、Frames:表示每幅帧的运行情况。
3、Timings:

图中虚线与标记表示如下:
FP(First Paint) 首屏绘制,页面刚开始渲染的时间。
FCP(First Contentful Paint) 首屏内容绘制,首次绘制任何文本,图像,非空白canvas 或 SVG 的时间点。
LCP(Largest Contentful Paint ) 最大内容绘制,页面上尺寸最大的元素绘制时间
DCL(DOMContentLoaded) 表示 HTML 文档加载完成事件。当初始 HTML 文档完全加载并解析之后触发,无需等待样式、图片、子 frame 结束。作为明显的对比,load 事件是当个页面完全被加载时才触发。
L(Onload) 页面所有资源加载完成事件。
FMP(First Meaningful Paint) 首屏有意义的内容绘制,这个“有意义”没有权威的规定,本质上是通过一种算法来猜测某个时间点可能是 FMP。有的理解为是最大元素绘制的时间,即同LCP(Largest Contentful Paint )。

其中 FP、FCP、FMP 是同一条虚线,三者时间不一致。比如首次渲染过后,有可能出现 JS 阻塞,这种情况下 FCP 就会大于 FP。

4、Main:表示主线程,主要负责:Javascript 的计算与执行;CSS 样式计算;Layout 布局计算;将页面元素绘制成位图(paint);将位图给合成线程。
X轴代表时间,每个长条代表着event,长条越长就代表花的时间越多,Y轴代表调用栈。在栈里,上面的event调用了下面的event。

如果在性能长条中的右上角出现了红色的三角形,说明这个事件存在问题,需要特别留意。双击这个带有红色小三角的的事件。在Summary面板会看到详细信息。注意reveal这个链接,双击它会让高亮触发这个事件的event。如果点击了angular-1.4.7.min.js:1135这个链接,就会跳转到对应的代码处。
在这里插入图片描述

区域4:统计汇总【以图表的形式汇总数据】

记录页面后,无需仅依靠Main部分来分析活动。DevTools还提供了三个表格视图来分析活动。每个视图您提供有关活动的不同视点:
在这里插入图片描述
1、Summary:表示各指标时间占用统计报表;
在这里插入图片描述
2、Bottom-Up:表示事件时长排序列表(倒序)=> 可直接查看花费最多时间的活动;
在这里插入图片描述
3、Call tree:表示事件调用顺序列表=>可直接查看导致最多工作的根活动 ;
在这里插入图片描述
4、Event Log:表示事件发生的顺序列表=>记录期间的活动顺序查看活动;
在这里插入图片描述

4 其他监控性能小工具

4.1 Performance monitor面板:页面性能的实时监控

在这里插入图片描述
在这里插入图片描述

4.2 实时FPS面板:可以实时展示页面的FPS指标

  1. 按下 Control+Shift+P 打开命令菜单

  2. 输入Rendering,点选Show Rendering

  3. 在Rendering面板里,激活FPS Meter。FPS实时面板就出现在页面的右上方。
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/138659.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

BGP在数据中心的应用6——BGP在服务器上的应用

注: 本文根据《BGP in the Datacenter》整理,有兴趣和英文阅读能力的朋友可以直接看原文:https://www.oreilly.com/library/view/bgp-in-the/9781491983416/上一部分笔记请参考:https://blog.csdn.net/tushanpeipei/article/deta…

视频如何在线生成二维码?视频转二维码的2种方法

现在很多小伙伴都喜欢将视频转二维码,通过这种方式来分享传递内容,那么如何将视频生成二维码更加的简单快捷呢?大家可以用一下小编分享的这款在线二维码生成工具来制作二维码,通过浏览器在线生成二维码,更加的简单快捷…

设计模式——迭代器模式

迭代器模式一、基本思想二、结构图三、代码一、基本思想 提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。迭代器模式是一种对象行为型模式,其主要优点如下: 访问一个聚合对象的内容而无须暴露它的内部表示。遍…

【Kotlin】函数 ④ ( 匿名函数参数 | 匿名函数 it 关键字 )

文章目录一、匿名函数参数二、匿名函数 it 关键字一、匿名函数参数 匿名函数 可以不带参数 , 也可以带多个参数 ; 不带参数的匿名函数 : // 声明 函数类型 变量, 并为其赋值 匿名函数val helloFun: ()->String {"Hello World"}带参数的匿名函数 : 匿名函数 的 参…

安装一个Excel插件,轻松网罗50+主流数据库

电子表格软件(Smartbi Spreadsheet)是思迈特软件推出的企业报表产品,产品以“真Excel”为特色,只需要安装一个小小插件,就能解决Excel最头疼的数据连接和性能问题。电子表格软件的数据源范围涵盖了本地数据库、关系型数…

如何学习虚幻引擎的Blueprint?

(虚幻学习路线-方法概括版) 【写在前面】:本篇内容颇多,并不是一大堆全学,把这篇当成一个字典,选择性学习,缺哪学哪~ 一、Blueprint (一)什么是虚幻引擎的Blueprint&…

C++STL之list容器

一:list特性list为带哨兵位双向循环链表,支持任意位置的插入和删除。与(array,vector,deque)相比,list的移除元素效率更高。最大缺陷是不支持[]重载,不支持随机访问,只能…

基于 EventBridge API Destination 构建 SaaS 集成实践方案

作者:赵海 引言 事件总线 EventBridge 是阿里云提供的一款无服务器事件总线服务,支持阿里云服务、自定义应用、SaaS 应用以标准化、中心化的方式接入,并能够以标准化的 CloudEvents 1.0 协议在这些应用之间路由事件,帮助您轻松构…

Mockjs入门基础概念与使用

文章目录Mockjs入门使用1、概述2、安装引入3、语法规范3.1 数据模板定义规范(DTD)3.1.1 DTD介绍3.1.2 规范实例演示字符串String数字Number布尔Boolean对象Object数组Array函数Function正则表达式RegExp3.2 数据占位符定义规范DPD4、关于Mock.mock()方法4.1 参数介绍…

RabbitMQ 常见面试题

RabbitMQ 常见面试题 1.为什么要用消息队列? (消息队列的应用场景?) 2.各种消息队列产品的比较? 3.消息队列的优点和缺点? 4.如何保证消息队列的高可用? 5.如何保证消息不丢失? 6.如何保证消息不被重复消费?(如何保证消息消费的幂等性) 7.如何保证消息消费的…

PMP证书好考吗?

PMP 还是很好考的,各大机构 3A 的人也很多,我的备考经验分享给大家参考下,大家可以取长补短,找到适合自己的备考方法:一、复习计划的制定根据之前在培训班共同奋斗的小伙伴学习时间统计,平均每天的学习时间…

我的第一门编程语言

元旦节在家重温了一遍《三体》,看到下面一段描写:监听部的计算机系统也远比发射部庞大复杂,叶文洁第一次走进主机房时,看到一排阴极射线管显示屏,她惊奇地发现,屏幕上竟滚动着一排排程序代码,可…

KITTI评价指标学习

在pointpillars完成训练后,可以看到对于目标检测的评估,据了解,这是kitti的标准目标检测格式,所以了解了一下. 在generate label finished后,可以看到类别Car对应的AP(Average precision)有3个0.70,分别对应的是Kitti object detection中,被分为Easy, Moderate,和Hard三种级别物…

算法训练 —— 哈希

目录 1. LeetCode242. 有效字母的异位词 2. LeetCode349. 两个数组的交集 3. LeetCode350. 两个数组的交集II 4. LeetCode202. 快乐数 5. LeetCode1. 两数之和 1. LeetCode242. 有效字母的异位词 有效字母的异位词 本题的含义就是判断两个字符串是否相同; 我们…

文档管理降低运营成本的 5 大方法

文档管理降低运营成本的 5 大方法 正在寻找降低成本和最大化生产力的方法的首席财务官和首席信息官已经知道,良好的文档管理可以在几个月内收回成本。数字文档管理(有时称为“企业内容管理”或 ECM)通过自动化工作流程和消除耗时的手动任务来…

第三十四讲:神州路由器远程管理

1、路由器的带外管理 Username: admin Password: Router>ena Router#conf Router_config#username dcn password 123456 Router_config#enable password 0 789 Router_config#aaa authentication enable default enable Router_config# aaa authentication login de…

Spring学习笔记1

1.核心概念 IoC(Inversion of Control)控制反转 对象的创建控制权由程序转移到外部,这种思想称为控制反转 Spring技术对IoC思想进行了实现 Spring提供了一个容器,称为IoC容器,用来充当IoC思想中的“外部” IoC容器负责…

测试小白必备!初级软件测试面试题题库,你绝对要用

软件测试的面试过程中,面试官往往都会根据你面试的职位,提问一些相关的软件测试知识,而很多人为了能够提高的自己在面试当中的通过率,都会在面试前做好充足的准备。比如刷面试题,背答案、准备面试话术这些。今天&#…

JSP ssh 桌面网站系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 JSP ssh 桌面网站系统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模 式开发。开发环境为TOMCAT7.0,My…

mes制造执行系统软件适用于哪些行业,有你所处的行业吗?

MES作为一种面向企业工厂生产加工的软件,为企业制造做出了巨大的贡献。虽然MES很实用很简单,但是也凸显了一个问题,有一些企业的生产方式是不适用于MES系统的。那具体哪些行业适合使用MES,哪些不适合。本文将为大家做详细的介绍。…