Loadrunner Analysis之Web Page Diagnostics
Loadrunner Analysis之Web Page Diagnostics
Loadrunner Analysis--Web Page Diagnostics
当在场景中打开Diagnostics菜单下的Web Page Diagnostics功能,就能得到网页分析组图。通过这个图,可以对事务的组成进行抽丝剥茧的分析,得到组成这个页面的每一个请求时间分析,进一步了 解响应时间中有关网络和服务器处理时间的分配关系。通过这个功能,可以实现对网站的前端性能分析,明确系统响应时间较长时由服务器端(后端)处理能力不足 还是短连接到服务器的网络(前端)消耗导致的。
1、Web Page Diagnostics(网页分析)
说明——添加该图先会得到整个场景运行后虚拟用户访问的Page列表,也就是所有页面下载时间列表。描述(在注册用户事务进行分析,整个负载由三个 页面请求组成,其中有一个请求始终在多少秒以内,而另外几个请求时间较长并且有上升趋势,然后通过Select Page to Break Down命令选择具体的Page来获得每个请求的相关详细信息——分析如下:
1.Download Time下载时间分析——组成页面的每个请求下载时间——可以看到创建用户的操作由4个请求组成,其中导致注册用户较慢的主要原因是注册完成后需要等待两 秒钟再刷新至论坛首页,而非注册用户本身需要消耗的时间,首页刷新慢也只是因为Client(客户端)需要消耗较多时间,同时Receive(接收)的时 间也有一定的影响。
2.Component(Over time)各模块的时间变化——通过这个功能可以分析响应时间变长是因为页面生成慢,还是因为图片资源下载慢。随着时间的增加,首页的处理时间(最上面的一根线)从多少秒上升到了最大值多少秒,而注册英护响应时间几乎没有上升。
3.Download Time(Over time)模块下载时间——针对每个组成页面元素的时间组成部分分析,方便确认该元素的处理时间组成部分。发现首页请求的下载时间主要消耗在Client上,而多少分多少秒之前Recevie所消耗的时间在逐渐变长。
4.Time to Buffer(Over time)模块时间分类——列出该元素所使用的时间分配比例,是受Network Time影响的多还是Server Time影响的多。对于首页刷新的响应时间来说,主要是Network Time网络上消耗的时间,而Server Time服务器端的处理时非常优秀的。Server Time是服务器对该页面的处理时间;Network Time是指网络上的时间开销。)
2、Page Download Time Breakdown(页面响应时间组成分析)
说明——显示每个页面响应时间的组成分析,一个页面的响应时间一般由以下内容组成:
Client Time客户端浏览接收所需要使用的时间,可以不用考虑。
Connections Time连接服务器所需要的时间,越小越好。
DNS Resolution Time通过DNS服务器解析域名所需要的时间,解析受到DNS服务器的影响,越小越好。
Error Time服务器返回错误响应时间,这个时间反映了服务器处理错误的速度,一般是Web服务器直接返回的,包含了网络时间和Web服务器返回错误的时间,该时间越小越好。
First Buffer Time连接到服务器,服务器返回第一个字节所需要的时间,反映了系统对于正常请求的处理时间开销,包含网络时间和服务器正常处理的时间,该时间越小越好。
FTP Authentication Time FTP认证时间,这是进行FTP登录等操作所需要消耗的认证时间,越短越好。
Receive Time接受数据的时间,这个时间反映了带宽的大小,带宽越大,下载时间越短。
SSL Handshaking Time SSL加密握手的时间,而Analysis在这里会分析得到页面请求的组成比例图,便于分析页面时间浪费在哪些过程中。
3、Page Download Time Breakdown(Over time)(页面组成部分时间)
说明——随着时间的变化所有请求的响应时间变化过程。这里会将整个负载过程中每个页面的每个时间组成部分都做成单独的时间线,以便分析再不同的时间 点上组成该页面的各个请求时间是如何变化的。描述(看到大多数页面的响应时间是比较稳定的,其中首页刷新变动较大——首先找到变化最明显或者响应时间最高 的页面,随后在针对这个页面进行进一步的分析了解时间偏长或者变化较快的原因。)
4、Time to First Buffer Breakdown(页面请求组成时间)
说明——组成页面时间请求的比例说明(客户端时间/服务器时间),通过这个图,我们可以直接地了解到整个页面的处理是在服务器端消耗的时间长,还是在客户端消耗的时间长,从而分析得到系统的性能问题是在前段还是在后端。描述(网络或客户端的时间开销占了绝大多数)
5、Time to First Buffer Breakdown(Over time)(基于时间的页面请求组成分析)
说明——在整个负载过程中,每一个请求的Server Time和Client Time随着时间变化的趋势,可以方便定位响应时间随着时间变化的原因到底是由于客户端变化导致的还是由于服务器端变化导致的。描述(对于用户注册操作, 网络上的时间变化比服务器上的时间变化要剧烈)
它们和事务响应时间直接相关:
事务响应时间应该包括DNS Resolution、Connection、First Buffer、Receive、Client Time等时间
页面细分时间的解释
1、
DNS解析时间:浏览访问一个网站的时候,一般用的是域名,需要DNS服务器把域名解析为IP地址,这个过程就是域名解析时间。
2、
Connection:解析出Web Server的IP地址后,浏览器请求被发送到了一个Web
Server,然后浏览器和Web Server
之间需要建立一个初始化的HTTP连接,服务器端需要做两件事:一个是接收请求,而是分配进程。建立该连接的过程就是Connection。
3、
First Buffer:建立连接后,从Web
Server发出第一个数据包,进过网络传输到客户端,浏览器成功接收第一个字节的时间就是First Buffer。
4、
Receive:从浏览器接收第一个字节起,知道成功收到最后一个字节,下载完成为止。
5、
Client Time:请求在客户端浏览器延迟的时间。
介绍了这么多,具体如何分析呢?
首先打开Web Page Diagnostics图,来看看下面一个例子Download Time图:
![]()
上图存在两个问题:
1、receive时间很长
这个一般是网络问题,当然如果你确认网络不存在问题,那么你就要看看是不是客户端的问题(客户端也可能会造成Receive过长,这个要注意)
2、页面问题
页面上包括了非常多的图片,而且图片似乎都没有优化,最大的竟然有163K,该图片文件可能有点过大了,很多时候,你可以根据DNS,Connection,Receive来看出是否存在网络问题,根据Client来判断是否存在客户端问题。
换个图看看,Page Component Breakdown(Over Time)
![]()
可以看出,页面元素都被cache了,说明场景启用了browser cache,页面的响应时间只包括红线和蓝线。
Time to First Buffer Breakdown(Over Time) ,这个图非常重要,也最复杂,当网络状况不好的时候,server time很可能包括网络时间,因为很多页面元素比较小(小于4k的样子),在First Buffer就完成传输,所以一定要注意分析。
Loadrunner Analysis之Web Page Diagnostics的更多相关文章
- 解读Loadrunner网页细分图(Web Page Diagnostics)
[转载的地址]https://www.cnblogs.com/littlecat15/p/9456376.html 一.启用网页细分图 首先在Controller场景设计运行之前,需要在菜单栏中设置D ...
- 网页细分图结果分析(Web Page Diagnostics)
Discuz开源论坛网页细分图结果分析(Web Page Diagnostics) 续LR实战之Discuz开源论坛项目,之前一直是创建虚拟用户脚本(Virtual User Generator)和场 ...
- LR实战之Discuz开源论坛——网页细分图结果分析(Web Page Diagnostics)
续LR实战之Discuz开源论坛项目,之前一直是创建虚拟用户脚本(Virtual User Generator)和场景(Controller),现在,终于到了LoadRunner性能测试结果分析(An ...
- 解读Web Page Diagnostics网页细分图
解读Web Page Diagnostics网页细分图 http://blog.sina.com.cn/s/blog_62b8fc330100red5.html Web Page Diagnostic ...
- web page diagnostics
1.概念说明: DNS解析时间:显示使用最近的DNS服务器将DNS名称解析为IP地址所需的时间:DNS查找度量是指示DNS解析问题或DNS服务器问题的一个很好的指示器: Connect时间:显示与 ...
- LoadRunner中的Web 函数列表
LoadRunner中的Web 函数列表 web test LoadRunner fuction_list D:\Program Files (x86)\Mercury Interactive\Mer ...
- [转]Calling Web Service Functions Asynchronously from a Web Page 异步调用WebServices
本文转自:http://www.codeproject.com/Articles/70441/Calling-Web-Service-Functions-Asynchronously-from Ove ...
- Tutorial: Importing and analyzing data from a Web Page using Power BI Desktop
In this tutorial, you will learn how to import a table of data from a Web page and create a report t ...
- [Project] Simulate HTTP Post Request to obtain data from Web Page by using Python Scrapy Framework
1. Background Though it's always difficult to give child a perfect name, parent never give up trying ...
随机推荐
- docker1.13新功能上要关注的点
如果要作单点端口映射,则需要结合constraint和label来定位具体的proxy机器吧. 如果不用这种模式,,ingress确实又太浪费集群端口了.. 纠结,,看看如何和compose v3作很 ...
- javascript面试题(一)(转载)
1,判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母.数字.下划线,总长度为5-20 var reg = /^[a-zA-Z][a-zA-Z_0-9]{4,19}$/; /*注意:1.要用 ...
- Request 部分功能
Request 六大功能: 1.获取客户端请求信息: getRequestURL方法 -- 返回客户端发出请求完整URL getRequestURI方法 -- 返回请求行中的资源名部分 getQuer ...
- Linux CentOS下Python+robot framework环境搭建
转载自:http://blog.sina.com.cn/s/blog_13cc013b50102vof1.html 操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.c ...
- 【kd-tree】bzoj3290 Theresa与数据结构
离线所有操作,对所有可能存在的点建立kd-tree,add相当于权值+1,cancel相当于权值-1. 修改操作要记录kd-tree上每个点的fa,从底向上地进行修改. 优化:若一个矩形框的sumv= ...
- 权限管理-RBAC
(一)RBAC 通过用户与角色关联,角色与操作的关联实现用户与操作的关联 (二)权限细分 (三)数据库设计 (四)程序设计 (五)权限与应用程序 (1)应用URL实现程序权限控制 (2)应用code实 ...
- jquery区分苹果浏览器和安卓浏览器
var browser={ versions:function(){ var u = navigator.userAgent, app = navigator.appVersion; return { ...
- iOS 灵活,简易,扩展性强的气泡提示框LFBubbleView(含源码)
一.效果图 二.使用方法 使用简单,4行代码集成. _bubbleView = [[LFBubbleView alloc] initWithFrame:CGRectMake(, , , )]; _bu ...
- Intellij IDEA光标保持自动缩进,设置下次不放在行首
- Qcon
http://2017.qconbeijing.com/?utm_source=tuicool&utm_medium=referral