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 ...
随机推荐
- CentOS6.8-minimal安装gnome桌面 安装NVC远程桌面连接
https://blog.csdn.net/nimasike/article/details/72844403
- [xampp] phpmyadmin 设置登录密码
$ cd /opt/lampp/bin $ ./mysqladmin -u root password 'new_password' $ vim ../phpmyadmin/config.inc.ph ...
- python判断一个数是否是2的几次幂
判断一个数是不是2的几次幂,最简单粗暴的做法就是直接迭代除以2,这里有一个更好的方法,那就是采用位运算. 我们观察下面属于2的几次幂的数的变化规律,用2进制表示. 十进制 二进制 0 0 2 10 4 ...
- 【bzoj2763】[JLOI2011]飞行路线 (分层图最短路)(优先队列dij)
[bzoj2763][JLOI2011]飞行路线 2014年3月25日1,7260 Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城 ...
- telnet执行过程及验证远程服务器是否打开
telnet执行过程: 工作原理: 当你用Telnet登录进入远程计算机系统时,你事实上启动了两个程序,一个 叫Telnet客户程序,它运行在你的本地机上:另一个叫Telnet服务器程序,它运 行在你 ...
- 【推导】【贪心】Codeforces Round #402 (Div. 2) E. Bitwise Formula
按位考虑,每个变量最终的赋值要么是必为0,要么必为1,要么和所选定的数相同,记为2,要么和所选定的数相反,记为3,一共就这四种情况. 可以预处理出来一个真值表,然后从前往后推导出每个变量的赋值. 然后 ...
- 【莫队算法】【权值分块】bzoj3236 [Ahoi2013]作业
莫队显然.然后维护转移的时候如果用树状数组,则很容易TLE.所以用权值分块维护转移. 总复杂度O(m*sqrt(n)). #include<cstdio> #include<algo ...
- 【前缀和】【前缀MAX】洛谷 P1351 NOIP2014提高组 day1 T2 联合权值
不难发现,树中与某个点距离为2的点只可能是它的父亲的父亲.儿子的儿子 或者 兄弟,分类讨论一下即可. 只有对于兄弟我们不能暴力搞,维护一下每个节点的所有儿子的前缀和.前缀MAX就行了. #includ ...
- Exercise01_09
public class S{ public static void main(String[] args){ double w=4.5; double h=7.9; double d; double ...
- 将Java程序打jar包并运行
1)接着上篇博客继续说手动编译之后,将代码打成jar包,然后直接“java -jar lz.jar"运行不成功的问题.还是先上代码: 这个是Demo类: package org.lz.dem ...