利用window.performance.timing进行性能分析

 

性能分析。。。

window.performance.timing中相关属性语义:

//  .navigationStart 准备加载页面的起始时间
// .unloadEventStart 如果前一个文档和当前文档同源,返回前一个文档开始unload的时间
// .unloadEventEnd 如果前一个文档和当前文档同源,返回前一个文档开始unload结束的时间
// .redirectStart 如果有重定向,这里是重定向开始的时间.
// .redirectEnd 如果有重定向,这里是重定向结束的时间.
// .fetchStart 开始检查缓存或开始获取资源的时间
// .domainLookupStart 开始进行dns查询的时间
// .domainLookupEnd dns查询结束的时间
// .connectStart 开始建立连接请求资源的时间
// .connectEnd 建立连接成功的时间.
// .secureConnectionStart 如果是https请求.返回ssl握手的时间
// .requestStart 开始请求文档时间(包括从服务器,本地缓存请求)
// .responseStart 接收到第一个字节的时间
// .responseEnd 接收到最后一个字节的时间.
// .domLoading ‘current document readiness’ 设置为 loading的时间 (这个时候还木有开始解析文档)
// .domInteractive 文档解析结束的时间
// .domContentLoadedEventStart DOMContentLoaded事件开始的时间
// .domContentLoadedEventEnd DOMContentLoaded事件结束的时间
// .domComplete current document readiness被设置 complete的时间
// .loadEventStart 触发onload事件的时间
// .loadEventEnd onload事件结束的时间

1.主要性能分析指标

一般指标:

// DNS查询耗时 = domainLookupEnd - domainLookupStart
// TCP链接耗时 = connectEnd - connectStart
// request请求耗时 = responseEnd - responseStart
// 解析dom树耗时 = domComplete - domInteractive
// 白屏时间 = domloadng - fetchStart
// domready时间 = domContentLoadedEventEnd - fetchStart
// onload时间 = loadEventEnd - fetchStart

实际前端更关注的指标(需要在实际中结合自身代码):

console.log('首屏图片加载完成 : ',window.lastImgLoadTime - window.performance.timing.navigationStart); //在最后一张图出来的时候打时间点
console.log('HTML加载完成 : ',window.loadHtmlTime - window.performance.timing.navigationStart);//在HTML后打时间点
console.log('首屏接口完成加载完成 : ',Report.SPEED.MAINCGI - window.performance.timing.navigationStart);//在首屏的接口打时间点
console.log('接口完成加载完成 : ',Report.SPEED.LASTCGI - window.performance.timing.navigationStart);//在所有接口打时间点

实际输出:

转载出处:https://www.cnblogs.com/LuckyWinty/p/8053226.html

【转载】利用window.performance.timing进行性能分析的更多相关文章

  1. 利用window.performance.timing进行性能分析

    性能分析... window.performance.timing中相关属性语义: // .navigationStart 准备加载页面的起始时间 // .unloadEventStart 如果前一个 ...

  2. 初探performance.timing API

    初探performance.timing API   浏览器新提供的performance接口精确的告诉我们当访问一个网站页面时当前网页每个处理阶段的精确时间(timestamp),以方便我们进行前端 ...

  3. 【Java VisualVM】使用 VisualVM 进行性能分析及调优

    转载:https://blog.csdn.net/lmb55/article/details/79267277 一.概述 开发大型 Java 应用程序的过程中难免遇到内存泄露.性能瓶颈等问题,比如文件 ...

  4. window.performance

    利用window.performance查看网页性能 一般我们可以通过浏览器的调试工具-网络面板,或者代理工具查看网页加载过程中的各个阶段的耗时.而利用window.performance属性则可以获 ...

  5. 使用VisualVM进行性能分析及调优(转)

    VisualVM 是一款免费的\集成了多个 JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优.这些功能包括生成和分析海量数据.跟踪内存泄漏.监控垃圾回 ...

  6. 转:使用 VisualVM 进行性能分析及调优

    使用 VisualVM 进行性能分析及调优 VisualVM 是一款免费的\集成了多个 JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优.这些功能包括 ...

  7. [Puppeteer] Get a Page's Load Time with Puppeteer (window.profermence.timing)

    In this lesson we are going to use Google's Puppeteer to gather metrics about a page's load time. We ...

  8. iOS-监听原生H5性能数据window.performance

    WebKit-WKWebView iOS8开始苹果推荐使用WKWebview作为H5开发的核心组件,以替代原有的UIWebView,以下是webkit基本介绍介绍: 介绍博客 Webkit H5 - ...

  9. 使用VisualVM 进行性能分析及调优

    概述 开发大型 Java 应用程序的过程中难免遇到内存泄露.性能瓶颈等问题,比如文件.网络.数据库的连接未释放,未优化的算法等.随着应用程序的持续运行,可能会造成整个系统运行效率下降,严重的则会造成系 ...

随机推荐

  1. TensorFlow tutorial

    代码示例来自https://github.com/aymericdamien/TensorFlow-Examples tensorflow先定义运算图,在run的时候才会进行真正的运算. run之前需 ...

  2. SQL Server读写分离之发布订阅

    一.发布 上面有多种发布方式,这里我选择事物发布,具体区别请自行百度. 点击下一步.然后继续选择需要发布的对象.  如果需要筛选发布的数据点击添加. 根据自己的计划选择发布的时间. 点击安全设置,设置 ...

  3. http协议、模块、express框架以及路由器、中间件和mysql模块

    一.http协议 是浏览器和web服务器之间的通信协议 1.通用头信息 request url:请求的url,向服务器请求的数据 request method:请求的方式   get.post sta ...

  4. ArcGIS API for JavaScript与 npm

    在4.7版本中,不仅增加了WebGL的渲染支持(渲染前端速度加快,渲染量也加大).增强了ES6中的Promises语法支持,还支持了npm管理及webpack打包,实属喜讯. “意味着可以不经过esr ...

  5. spring mvc 在上传图片时,浏览器报The request sent by the client was syntactically incorrect

    项目中,在一个jsp页面里其它图片上传是功能是可以使用的,当我自己新加了一个图片上传时,提交表单后,浏览器报The request sent by the client was syntactical ...

  6. Numpy库的学习(一)

    今天来学习一下Python库中,支持高级大量的维度数组与矩阵运算的神奇的Numpy库 Numpy同时也对数组运算提供大量的数学函数,对于大量计算运行效率极好 是大量机器学习框架的基础库 废话不多说,直 ...

  7. ASP.Net Core开发(踩坑)指南

    ASP.NET与ASP.NET Core很类似,但它们之间存在一些细微区别以及ASP.NET Core中新增特性的使用方法,在此之前也写过一篇简单的对比文章ASP.NET MVC应用迁移到ASP.NE ...

  8. swing Jframe 界面风格

    用法:在jframe里面 UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel" ...

  9. sqlserver 2014使用时有Cannot find one or more components

    好久没用sqlserver,今天打开却出现了一个错误,Cannot find one or more components,令人头疼.在启动Microsoft SQL Server Managemen ...

  10. Go 编译原理实现计算器(测试驱动讲解)

    本文不需要你掌握任何编译原理的知识. 只需要看懂简单的golang语言即可, 完整的代码示例在GIT, 代码是从writing an interpreter in go这本书抽取了简单的部分出来, 如 ...