页面监控指标

h5提供内置的performance对象,对页面的加载时间,内存消耗和浏览器状态。

1.内存消耗

memory : {

  usedJSHeapSize :    16100000 , // JS 对象(包括V8引擎内部对象)占用的内存,一定小于 totalJSHeapSize

  totalJSHeapSize : 35100000 , // 可使用的内存

  jsHeapSizeLimit : 793000000 // 内存大小限制

}

2.页面的来源信息

navigation : {

redirectCount : 0 , // 如果有重定向的话,页面通过几次重定向跳转而来

type : 0            // 0   即 TYPE_NAVIGATENEXT 正常进入的页面(非刷新、非重定向等)

                    // 1   即 TYPE_RELOAD  通过 window.location.reload() 刷新的页面

                    // 2   即 TYPE_BACK_FORWARD 通过浏览器的前进后退按钮进入的页面(历史记录)

                    // 255 即 TYPE_UNDEFINED    非以上方式进入的页面

} ,

3.各个时间段的时间。

3.1第一阶段。去获取最终页面之前的浏览器消耗的时间

// 在同一个浏览器上下文中,前一个网页(与当前页面不一定同域)unload 的时间戳,如果无前一个网页 unload ,则与 fetchStart 值相等

navigationStart : 1441112691935 ,

// 前一个网页(与当前页面同域)unload 的时间戳,如果无前一个网页 unload 或者前一个网页与当前页面不同域,则值为 0

unloadEventStart : 0 ,

// 和 unloadEventStart 相对应,返回前一个网页 unload 事件绑定的回调函数执行完毕的时间戳

unloadEventEnd : 0 ,

3.2第二阶段。 重定向消耗的时间

// 第一个 HTTP 重定向发生时的时间。有跳转且是同域名内的重定向才算,否则值为 0

redirectStart : 0 ,

// 最后一个 HTTP 重定向完成时的时间。有跳转且是同域名内部的重定向才算,否则值为 0

redirectEnd : 0 ,

3.3 第三阶段。去DNS消耗的时间

// 浏览器准备好使用 HTTP 请求抓取文档的时间,这发生在检查本地缓存之前

fetchStart : 1441112692155 ,

// DNS 域名查询开始的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等

domainLookupStart : 1441112692155 ,

// DNS 域名查询完成的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等

domainLookupEnd : 1441112692155 ,

3.4 第四阶段。建立TCP连接消耗的时间

  // HTTP(TCP) 开始建立连接的时间,如果是持久连接,则与 fetchStart 值相等

  // 注意如果在传输层发生了错误且重新建立连接,则这里显示的是新建立的连接开始的时间

  connectStart : 1441112692155 ,

  // HTTP(TCP) 完成建立连接的时间(完成握手),如果是持久连接,则与 fetchStart 值相等

  // 注意如果在传输层发生了错误且重新建立连接,则这里显示的是新建立的连接完成的时间

  // 注意这里握手结束,包括安全连接建立完成、SOCKS 授权通过

  connectEnd : 1441112692155 ,

  // HTTPS 连接开始的时间,如果不是安全连接,则值为 0

  secureConnectionStart : 0 ,

3.5 数据发送和接收过程

// HTTP 请求读取真实文档开始的时间(完成建立连接),包括从本地读取缓存

// 连接错误重连时,这里显示的也是新建立连接的时间

requestStart : 1441112692158 ,

// HTTP 开始接收响应的时间(获取到第一个字节),包括从本地读取缓存

responseStart : 1441112692686 ,

// HTTP 响应全部接收完成的时间(获取到最后一个字节),包括从本地读取缓存

responseEnd : 1441112692687 ,

3.6 解析dom树的过程

  // 开始解析渲染 DOM 树的时间,此时 Document.readyState 变为 loading,并将抛出 readystatechange 相关事件

  domLoading : 1441112692690 ,

  // 完成解析 DOM 树的时间,Document.readyState 变为 interactive,并将抛出 readystatechange 相关事件

  // 注意只是 DOM 树解析完成,这时候并没有开始加载网页内的资源

  domInteractive : 1441112693093 ,

dom树解析完成触发DOMContentLoaded事件。

3.7 加载资源的过程

  // DOM 树解析完成,且资源也准备就绪的时间,Document.readyState 变为 complete,并将抛出 readystatechange 相关事件

  domComplete : 1441112693214 ,

  // load 事件发送给文档,也即 load 回调函数开始执行的时间

  // 注意如果没有绑定 load 事件,值为 0

  loadEventStart : 1441112693214 ,

  // load 事件的回调函数执行完毕的时间

  loadEventEnd : 1441112693215

4.通过performance.now()来计算程序执行的时间。

performance.now()返回了以微秒(百万分之一秒)为单位的时间,它比Date()更加精确,同时执行不受到环境的影响。

function getFunctionTimeWithPerformance ( func ) {   

    var timeStart = window . performance . now ( ) ;

    // 执行开始

    func ( ) ;

    // 执行结束

    var timeEnd = window . performance . now ( ) ;

    // 返回执行时间

    return ( timeEnd - timeStart ) ;

}
时间: 04-06

页面监控指标的相关文章

Haproxy做LB负载均衡集群的搭建和配置,可以通过web页面监控web服务器的运行状态

HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理. 实验(一) 实验目的:使用Haproxy做负载均衡集群(七层) 实验环境准备: 客户端  IP地址:1.1.1.1 主机名waiwang web1   IP地址:1.1.1.10 主机名:localhost web2   IP地址:1.1.1.20 主机名:localhost 配置HA

服务性能监控指标

Apache性能监控支持以下指标: Apache吞吐率 Apache并发连接数 Apache并发连接数详细统计,包括读取请求.持久连接.发送响应内容.关闭连接.等待连接 Lighttpd性能监控支持以下指标: Lighttpd吞吐率 Lighttpd并发连接数 Lighttpd并发连接数详细统计,包括建立连接.读取请求.读取POST数据.处理请求.发送响应内容.关闭连接 Nginx性能监控支持以下指标: Nginx吞吐率 Nginx并发连接数 Nginx并发连接数详细统计,包括读取请求.处理请求

分布式监控系统Zabbix-3.0.3-完整安装记录 -添加web页面监控

通过zabbix做web监控,不仅仅可以监控到站点的响应时间,还可以根据站点返回的状态码或响应时间做报警设置.下面简单介绍下监控设置: 1)首先在监控主机里创建"应用集"和"Web场景" 客户端选择测试站点的浏览器类型,这里选择使用IE10作为客户端. 2)接着创建触发器 在上面"添加"按钮后选择对应的监控项目,功能选择"最新的T值不是N",N值设置为200,即web访问的状态码.即返回的状态码不等于变量200时触发报警. 3

Jmeter添加监控指标

需要监控的机器上安装Server-Agency(需要java环境支持)把ServerAgent-2.2.1.zip拷到需要监控的机器上,解压 Linux启动如下 2. Jmeter上添加监控 最终有如下指标 注意监控的结果文件保存要与其他的分开 效果如下:

URL页面监控.

2015,应该是自动化的一年...从广州来到长沙新公司,,在新公司就一直在弄自动化这方面的东西...(代码自动化更新.回滚..LVS自动化管理, 离线日志分析, URL监控等等).. 由于太忙,一直都没时间整理代码开源分享出来,,趁着今天URL监控这最后一个项目,已进入第一版完成阶段,,那就准备把以前的项目整理出来开源,,好了..先看看现在第一版的URL监控的东西吧,,现在暂时只是第一版,,第二版还会加入更加详细的监控内容,,如果有好的想法,,大家可以一起交流下,,交流群330639584..

关于web页面性能测量指标与建议

首先看一个图: 注:右图在我们工作中经常用到 我们专注的web性能指标有那些? 1.页面加载时间 从页面开始加载到页面onload事件触发的时间.一般来说onload触发代表着直接通过HTML引用的CSS,JS,图片资源已经完全加载完毕. 2.全部页面加载时间 全部页面载入时间指从最初启动浏览开始,直到所有元素都被加载完成后,在2秒后仍然没有网络活动的时间. 0-2秒:用户体验最好,打分1002-8秒:用户可以容忍,从第2秒开始,每超过1秒减5分8-15秒:用户不能忍受,从第2秒开始,每超过1秒

liunx服务器常见监控指标

1. CPU Utilization 英文翻译就是CPU的利用率75%以上就比较高了(也有说法是80%或者更高).有的博客上说除了这个指标外,还要结合Load Average和Context Switch Rate来看,有可能CPU高是因为后两个指标高导致的. 在Linux/Unix下,CPU利用率分为用户态.系统态和空闲态, 分别表示CPU处于用户态执行的时间,系统内核执行的时间,和空闲系统进程执行的时间,其中有些小的指标1)用户时间(User time) 官方英文为user cpu time

MySQL监控指标

1.系统mysql的进程数 ps -ef | grep "mysql" | grep -v "grep" | wc –l 2.Slave_running mysql > show status like 'Slave_running'; 如果系统有一个从复制服务器,这个值指明了从服务器的健康度 3.Threads_connected mysql > show status like 'Threads_connected'; 当前客户端已连接的数量.这个值

IIS监控指标

IIS Global Active Flushed Entries Active Flushed Entries 是缓存文件句柄,当前传输全部完成后将关闭此句柄.IIS Global 对象. Web Anonymous Users/Sec 用户通过 Web 服务进行的匿名连接数. IIS Global BLOB Cache Flushes 自服务器启动后的 BLOB 缓存刷新数. IIS Global BLOB Cache Hits BLOB 缓存中的成功查找总数. IIS Global BLO