文档首页 > 云监测 > Web > 常用性能指标解析

web监测常用性能指标解析

真机监测&JS监测常用指标解析

首屏

在我们的云评测和云监测性能指标中,您可能发现我们有白屏时间和首屏时间等和用户终端屏幕有关的性能指数。但是每一个用户的屏幕的分辨率都不同,您可能会想我们这个屏幕大小是如何计算的,是截取特定大小吗?如果截取特定值的话,那未截取区域如果未加载,那计算出的数据岂不是不准确? 如果选择截取,的确会存在数据不准确的情况,所以我们的屏幕计算方法是适用于所有用户的屏幕大小,在评测的过程中对首屏进行持续截屏,然后对截屏进行分析,当截图趋势趋于平缓不再变换的时候(不是绝对的不变,对于首屏轮播这种情况,我们也是兼容的),把此时的时间作为首屏时间。

白屏时间

白屏时间是指用户打开网站开始,到浏览器第一屏不为白屏的时间。白屏是指用户打开网站的时候,移动终端浏览器(PC、手机或平板)未加载出任何一个字符或元素。

图例

首屏时间

首屏时间是指用户打开网站开始,到浏览器第一屏渲染完成的时间。首屏为用户(此处用户为高升招募的真实用户)所使用的真实终端屏幕的大小。当然,页面实际打开时,总加载时间要比首屏时间长很多,但是对于用户体验来说,首屏时间是用户对一个网站的重要体验因素。通常一个网站,如果首屏时间在5秒以内是比较优秀的,10秒以内是可以接受的,10秒以上就 不可容忍了。超过10秒的首屏时间用户会选择刷新页面或立刻离开。

影响首屏时间的因素有下面几个方面:页面落在首屏部分的元素性能和结构,包括页面内容多少、图片大小、JS文件、是否调用第三方内容、层次结构等都会直接影响首屏时间。 网络因素,评定网络因素的标准指标有 DNS解析时间,建立连接时间,SSL握手时间,发出请求时间,重定向时间,第一个包时间,剩余包时间,内容下载时间。 其他因素,比如客户端时间,Javascript脚本运行时间。

图例

首屏元素个数

IE浏览器显示 第一屏主页面所包含总的元素个数。

图例

整页时间

整页时间为整个网页加载完成的总时间。整页大小除首屏显示之外,拖动下拉滚动条到网页底部,在拖动滚动条的过程中所加载出来的整个页面,为整页大小。假设当一个网站首页大小等于首屏大小,那么整页时间将会等于首屏时间,但是绝大多数网站在首屏加载完成后,还有很多内容未完成加载,若用户没有在整页加载完成之前选择关闭浏览器,那么这些内容会被持续加载,直到加载完成,从页面加载出第一个元素开始,到整个网页被加载完成的实际为整页时间。

图例

白屏时间、首屏时间、整页时间的关系

图例

DNS时间

DNS时间:是从浏览器终端访问请求开始,到浏览器终端获得最终访问主机IP地址的时间; 通过域名解析服务(DNS),将指定的域名解析成IP地址的消耗时间。

发生一次域名解析后,WINDOWS操作系统会缓存此操作的结果,当监测节点再次解析相同的域名时,WINDOWS会将此缓存的结果返回给监测节点,对应消耗时间值可能为0。

连接建立时间

建立连接时间:浏览器和WEB服务器建立TCP连接所消耗的时间;当元素下载完成后,浏览器可能会根据服务器返回的结果保持此连接,而不是完全关闭此连接。当监测节点再次和相同的服务器建立连接时,会复用此连接,对应消耗时间可能为0。此指标即为TCP/IP连接三次握手的前二次握手的时间(从IE发送TCP包SYN到收到服务器返回的TCP包SYN ACK的时间),第三次握手时间(从IE发送TCP包ACK到服务器接收此TCP包的时间)不计算在内。

补充说明: 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。 第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYNSEND状态,等待服务器确认; 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYNRECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 完成三次握手,客户端与服务器开始传送数据

建立连接次数

浏览一个页面过程中,包含页面中的元素,建立连接的总次数。

图例

首包时间

浏览器发送HTTP请求结束开始,到收到WEB服务器返回的第一个数据包的消耗时间。

此指标包含了发送HTTP请求时最后一个数据包在网络上的传输时间、服务器响应此请求的时间和服务器回应的第一个数据包在网络上面的传输时间。

内容下载时间

内容下载时间:收到WEB服务器返回的第一个数据包,到整页完成下载的时间;

后端响应时间

浏览器览器发出HTTP请求后,WEB服务器进行响应以及后台处理的时间;

基础页下载时间

基础页面即WEB服务器返回的纯文本HTML文件。

基础页面下载时间是从解析DNS开始,到接收完基础页面的消耗时间,包含了DNS时间、建立连接时间、SSL握手时间 、重定向时间、发出请求时间、收到第一个包时间、 剩余包时间和关闭连接时间的总和。

网络层时间

监测一个页面时,发生网络通讯的总消耗时间。

网络层时间=DNS时间+建立连接时间+SSL握手时间 +重定向时间+发出请求时间+ 网络首包时间+ 内容下载时间+关闭连接时间。

样本数

在监测时间段内下发的样本数。样本数大小和周期选择密切相关,对于普通用户来说,周期为默认60分钟,那么在该周期内,会随机均匀下发300个左右任务,而周期最小可调节为10分钟,即将300个监测任务在10分钟内随机下发,从概率学来讲,样本数越大,数据越趋于真实。

网页对象数

浏览一个页面过程中,从WEB服务器下载的元素数量。

图例

页面大小(KB)

页面以及页面所需的资源所占的存储空间。

图例

首屏下载字节数(KB)

浏览器显示第一屏主页面所包含元素的总字节数。

图例

基础页大小(KB)

基础页面即WEB服务器返回的纯文本HTML文件。 基础页面下载字节数即为该纯文本HTML文件的总字节数。

图例

基础页面下载速度(KB/S)

基础页面下载速度 = 基础页面下载字节数 / 基础页面下载时间

下载速度(KB/S)

下载速度 = 页面总下载字节数 / 网络层时间。

客户端时间(S)

监测一个页面时,没有发生网络通讯的时间片断的总和。

此项指标包括了浏览器内存初始分配,解析下载的数据包,页面显示等多个小段时间的总和。注:当IE浏览器解析数据包等操作和网络通讯同时进行时,此段时间并不包含在客户端时间之内。

SSL连接时间(S)

浏览器和WEB服务器建立安全套接层(SSL)连接的消耗时间。

TCP/IP连接建立之后,根据WEB服务器需要,可能建立安全套接层(SSL)连接,例如 使用https协议的网址。和TCP/IP连接一样,SSL连接也可能被相同的服务器保持连接和复用连接,对应消耗时间可能为0。

重定向时间(S)

重定向技术可以分为两类,一类是客户端重定向,一类是服务器端重定向。此项指标不包括客户端重定向时间。

当IE浏览器通过一个网址访问WEB服务器时,服务器可能通知IE浏览器此网址已经被其它网址所替代,服务器会返回IE浏览器新的网址,浏览器再根据这个新的网址继续访问,这就是服务器重定向。

重定向时间是从收到WEB服务器重定向指令到请求WEB服务器的第一个元素之前的消耗时间。

连接关闭时间(S)

浏览器关闭对应元素的TCP/IP连接的消耗时间,此连接对应“建立连接时间”指标中所建立的连接。

DNS解析总时间(S)

浏览一个页面过程中,包含页面中的元素,发生DNS解析时的总花费时间。

建立连接总时间(S)

浏览一个页面过程中,包含页面中的元素,建立连接时的总花费时间。

DOM元素个数

DOM:Document Object Model, 即文档对象模型。

在浏览一个页面过程中,从WEB服务器下载的DOM元素数量。DOM元素可以理解为一个页面中各种对象的标识,例如一个图片 <img>... </img>,一个表格 <table>... </table>,表格中一行 <tr>... </tr>。

超时时间

进行某次监测时,任务在所设超时时间段内没有执行完毕,则终止该任务的本次监测,返回超时的错误代码。

额外等待时间

onload 时间之后,对于客户端的的每一次请求,会额外等待指定的时间,若在指定的时间内没有新的请求,则本次监测任务执行完毕。

禁止客户端JS

此选项是保证监测节点安全的安全策略选项之一,指的是在执行监测任务时,是否执行页面中的JS脚本。

HTTP压缩

是指在服务器与浏览器之间的信息传输中,如果双方都支持HTTP压缩,则会在信息传输中采用zip压缩,以提高性能。

指定Hosts

将指定域名解析到指定iP或指定的其他域名, 当需要配置多个自定义的域名解析时,点击“添加“。例如:测试优化对一个URL( http://www.mmtrix.com/test.jpg )的优化效果,但是域名 ( http://www.mmtrix.com ) 还在优化上线,所以需要指定一个CNAME(www.mmtrix.com.mmtrixcnet.com) 进行监测,host 配置如下:域名: http://www.mmtrix.com/test.jpg ;IP地址或CNAME: www.mmtrix.com.mmtrixcnet.com

自定义HTTP头

浏览器发送请求时,将指定的HTTP头信息增加到请求头中,设置该HTTP头的前提是服务器要支持此项服务。设定该主机头的作用为:1.当监测的一个文件过大时,普通的监测会任务超时,此时,可以通过设置自定西http头来指定监测端任意长度的内容进行监测。比如取前1M,http头如下Range: bytes=1-1024000 ; 2. 要监测一个文件( http://www.mmtrix.com/test.jpg )的下载效果,但服务器上设置了防盗链验证,普通监测会出现http 403等错误。此时,我们可以通过设置自定义http头来绕过防盗链验证,http头如下Referer: http://www.mmtrix.com/

URL黑名单

排除与指定监测任务无关的一些URL。在监测时,客户端不会对黑名单里的URL发出HTTP请求。例如:很多网页都包括了Google的一些统计Js代码,一旦Google出现问题将会影响到指定的监测任务,此时可将此项设成www.google.com,在监测时客户端不会对满足指定规则的URL发出HTTP请求。

指定主机头

执行该监测任务时,浏览器将该值设为请求的主机头。

自定义UA

在执行监测任务是,是否要发送一段文本来标记该次访问是来自于我们的监测节点,以区别于正常的浏览器访问。这样做可以让一些流量分析软件能够将我们的监测节点的访问过滤出来。

网络监测&可用性监测常用指标解析

Ping延时

从主机发出信号到服务器,然后由服务器响应再回到主机,这个过程所消耗的时间。

Ping丢包率

在Ping的过程中,所丢失数据包数量占所发送数据组的比率。

图例

可用性

可用性=( 1 - 错误数/总任务数 )*100%;

错误数为一次同时下发四个数据包,四个数据包全部丢失,为一次错误

Traceroute延时(ms)

从主机发出信号到服务器所消耗的总时间,除以traceroute跳数。

图例

Traceroute跳数

从主机发出信号到服务器所经过的路由器的数目,没经过一个路由器,跳数就增加1.

流媒体真机监测常用指标解析

DNS解析时间

从URL中提取处域名后,通过域名服务器,将域名解析成IP地址所耗费的时间。

TCP建联时间

与目标服务器建立TCP连接所消耗的时间。建立TCP连接,需要三次握手,该指标包含了前两次握手时间,第三次握手发送ACK到服务端,则不计算在内。

协议建联时间

不同协议,建立协议的方式不同,比如http协议,可能只需一次请求即可获取到视频资源,也可能因为301/302跳转,多次请求才可以获取到资源;而RTSP则需经过DESCRIBE、SETUP、PLAY等多次交互才会获取到视频码流。该指标包含了建立协议上的耗时。

缓冲前准备时间

从开始监测到获取到第一份码流的时间,包含了DNS解析、建立连接、协议建联时间。

首次缓冲时间

开始首次接收到码流之后,进行首次缓冲的时间。

首屏时间

从开始监测到第一次看到视频画面的时间。

首次播放时长

从第一次看到视频画面,到第一次出现卡顿的时间。

总缓冲时间

在视频播放过程中,出现卡顿缓冲的总耗时,该时间不包括首次缓冲时间。

缓冲次数

在视频播放过程中,出现卡顿缓冲的总次数。

总等待时间

包含首屏时间和播放过程中所有卡顿缓冲时间之和,即用户看不到视频画面的总时间。该时间越短,用户体验越佳。

用户体验指数

计算方式为:(总等待时间 + 缓冲次数 权重) / (监测时长 + 缓冲次数 权重),值越小,用户体验越佳。

Flash监测常用指标解析

缓冲时间

流媒体播放器处于首次缓冲状态待续的总时间。

无停顿时长

从流媒体播放器首次开始播放,到再次出现缓冲所花费的时间。

下载速度

下载速度=流媒体大小(KB)/下载时间(s)

总播放时长

从流媒体播放器开始播放,到播放完成的时间。如果在一次监测中,视频一直被播放直到整个视频被播放完成的话,则总播放时长将等于视频长度。

带宽

从流媒体开始下载到下载完成,最大的下载速度。

停顿次数

从流媒体播放器开始播放,到播放完成,出现缓冲的次数。