Web Page Diagnostics:

1)DNS Resolution:浏览器访问一个网站的时候,一般用的是域名,需要dns服务器把这个域名解析为IP,这个过程就是域名解析时间,如果我们在局域网内直接使用IP访问的话,就没有这个时间了。
使用最接近的DNS服务器,解决DNS名称为一个IP地址所需要的时间。DNS查询测量是DNS解析中问题,或DNS服务器问题的一个很好的指标。

2)Connection:服务器建立连接的时间。需要与Web服务器主机指定的URL建立一个初始连接。连接是测量网络问题的一个很好的指标。它还表明服务器是否回应请求。

3)SSL Handshaking:SSL加密握手的时间。

4)FTP Authentication:FTP服务器在处理客户端的命令之前,首先要对客户端进行鉴权,这个度量就是FTP服务器对客户端进行鉴权的时间。这种测量只适用于使用FTP(不是HTTP/s)协议的通信。

5)First Buffer:建立连接后,从Web Server发出第一个数据包,到客户端浏览器成功接收到第一字节的时间就是First Buffer。这个度量时间不仅可以表示Web Server的延迟时间,还可以表示出网络

的反应时间。

6)Receive:从浏览器接收到第一个字节起,直到成功收到最后一个字节,下载完成止,这段时间就是receive时间。反映了网络质量,如带宽大小,带宽越大下载时间越短

7)Client:客户端浏览器延迟的时间。由于浏览器思考时间或其他客户端相关的延迟,请求在客户机上的延时时,平均所需的时间。这不包括为Flash来绘画图形的时间。

8)Error:发送错误信息时间。从HTTP请求被发送时刻,直到错误信息(只是HTTP错误)被返回的时刻,所经过的平均时间。

详解FirstBufferTime?

测试结果分析过程中,经常遇到第一次缓冲时间FirstBufferTime,并且发现大部分系统的响应时间也都浪费在了这里,再给研发解释这个问题时候,又不能拿FirstBufferTime直接给研发说,抽时间整理了下,希望对大家有用 以下资料来自LR帮助手册:

  • 定义:第一次缓冲时间细分图显示成功从Web服务器返回的第一次缓冲之前的这一段时间内,每个网页组件的相关服务器/网络时间(以秒为单位)。
  • 网络时间:从发送第一个http请求那一刻直到收到确认为止,所经过的平均时间。
  • 服务器时间:从收到初始http请求确认(通常为get)直到成功收到来自Web服务器的第一次缓冲为止,所经过的平均时间。

注意:要从客户端测定服务器时间,因此发送初始HTTP请求到发送第一次缓冲这一段时间内网络性能发生变化,则网络时间可能会影响此度量,因此所显示的服务器时间是一个估计值,可能不太精确。所有关于FirstBufferTime时间的度量都是来自客户端的。至于帮助手册里面的不太精确,还有这个网络时间和服务器时间如何计算,我分析了下,个人观点如下首先要了解http传输,这个大叔以前发过相关资料,这里推荐个网址http://www.cnpaf.net/Class/HTTP/200408/83.html 里面有个形象的举例,就是电话订货,到送货上门, 这里拿图讲例子。

上图类似于http链接请求响应模式,其中很明显:

  •     网络时间=N1+N2+N3
  •     服务器时间=R1+R2

而根据LR结果分析定义发现:

  • 网络时间=N1+R1+N2
  •     服务器时间=R2+N3

怎么解释呢?LR在计算结果时候拿R1和N3进行了抵消,所以给出来的只是近似值。

LR网页细分图中的时间详解的更多相关文章

  1. Python时间获取详解,Django获取时间详解,模板中获取时间详解(navie时间和aware时间)

    1.Python获取到的时间 import pytz from datetime import datetime now = datetime.now() # 这个时间为navie时间(自己不知道自己 ...

  2. LR实战之Discuz开源论坛——网页细分图结果分析(Web Page Diagnostics)

    续LR实战之Discuz开源论坛项目,之前一直是创建虚拟用户脚本(Virtual User Generator)和场景(Controller),现在,终于到了LoadRunner性能测试结果分析(An ...

  3. 网页细分图结果分析(Web Page Diagnostics)

    Discuz开源论坛网页细分图结果分析(Web Page Diagnostics) 续LR实战之Discuz开源论坛项目,之前一直是创建虚拟用户脚本(Virtual User Generator)和场 ...

  4. Python中time模块详解

    Python中time模块详解 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime以及calendar.这篇文章,主要讲解time模块. ...

  5. Asp.net中GridView使用详解(引)【转】

    Asp.net中GridView使用详解(引) GridView无代码分页排序 GridView选中,编辑,取消,删除 GridView正反双向排序 GridView和下拉菜单DropDownList ...

  6. wpf中的触发器详解 (转自 乂乂的日志 - 网易博客)

    2010-03-24 16:19:07|  分类: WPF相关 |  标签: |字号大中小 订阅     wpf中的触发器详解 WPF/C# 2009-08-24 11:32:50 7.1.2  简单 ...

  7. 【转】linux 中fork()函数详解

    在看多线程的时候看到了这个函数,于是学习了下,下面文章写的通俗易懂,于是就开心的看完了,最后还是很愉快的算出了他最后一个问题. linux 中fork()函数详解 一.fork入门知识 一个进程,包括 ...

  8. SVD在推荐系统中的应用详解以及算法推导

    SVD在推荐系统中的应用详解以及算法推导     出处http://blog.csdn.net/zhongkejingwang/article/details/43083603 前面文章SVD原理及推 ...

  9. html5中time元素详解

    html5中time元素详解 一.总结 一句话总结: time的使用的话主要是将时间放在datetime属性里面:<time datetime="2015-10-22"> ...

随机推荐

  1. C++查询网站

    1.C++外文api查询 http://www.cplusplus.com/ 2.https://isocpp.org/ 3.Juce学习 http://www.thinksaas.cn/favori ...

  2. PHP 过滤 及 字符转换 函数

    PHP过滤html标签的内部函数. php过滤html的函数: strip_tags(string) 这样就可以过滤掉所有的html标签了. 如果想过滤掉除了<img src="&qu ...

  3. 分享一款超棒的jQuery旋钮插件 - jQuery knob

    转自:http://www.cnblogs.com/gbin1/archive/2012/05/08/2489908.html 在线演示  本地下载 如果你也在寻找一款生成漂亮旋钮(knob)的jQu ...

  4. Codeforces Round #360 (Div. 2) E. The Values You Can Make DP

    E. The Values You Can Make     Pari wants to buy an expensive chocolate from Arya. She has n coins, ...

  5. topcoder-srm701-div2-900 博弈\计算二进制位1的个数\dp\状态压缩

    借用一下qls翻译过来的题面  现在有 n 个石子,A 和 B 轮流取石子,A先,每次最多可以取 m 个石子,取到最后一个石子的人获胜,但是某个人如果取完石子时候剩余石子数的二进制表示中有奇数个1,这 ...

  6. P/Invoke .NET调用win32API

    项目:无线无源测温软件系统 项目中,用到使用P/Invoke在.NET调用win32API,实现对ini配置文件的读写功能!因为有一些配置信息需要保存下来,以便在下一次启动程序完成初始化,这实际上是一 ...

  7. 【HTML5】Application Cache应用程序缓存

    HTML5 引入了应用程序缓存,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问. 应用程序缓存为应用带来三个优势: 离线浏览 - 用户可在应用离线时使用它们 速度 - 已缓存资源加载 ...

  8. Java正则表达式, 提取双引号中间的部分

    String str="this is \"Tom\" and \"Eric\", this is \"Bruce lee\", ...

  9. HyperLink控件

    设置链接 NavigateUrl 填写链接 text 属性 为显示内容

  10. DOM--1 遵循最佳实践

    为重用命名空间而进行规划 (function() { function $(id) { return document.getElementById(id); } function alertNode ...