一、关键词

吞吐量:对于吞吐量,单位时间内吞吐量越大,说明服务器的处理能力越好;而请求数仅表示客户端向服务器发出的请求数,与吞吐量一般成正比关系。

HTTP:HTTP404表示文件或目录没有找到。有些结果中出现了404,但是结果都是通过,并没有失败。出现这个现象的原因是脚本有些页面的内容并非关键点,比如可能请求先前的cookie信息,如果没有就重新获取,所以不会影响最终的测试结果。

并发数Vuser:利用Running Vusers(运行的并发数)与事务图结合,可以确定Vuser数量对事务、事务响应时间产生的影响。

集合点Vuser:在New Graph——Vusers——Rendezous添加后,进行查看集合点的Vusers图表。假设这样一种情况,Running的Vuser有10个,集合点策略设置是“所有运行用户到达后释放”,而集合点图形显示的最大释放Vuser是7个,那么就表示有些Vuser超时了,引起超时的原因可能是Vuser得到的响应超时了,可以结合平均事务响应时间再详细分析原因。

MEM使用率:(总mem-可用mem)/总mem 。 可用mem:Avaiable MBytes。若大于性能测试需求的要求值,则为瓶颈。

CPU的队列长度:一般正常值为1,不能超过2。若平均值大于2,则为瓶颈。

网页细分图

网页细分图,总共有8个图表,分别为页面分解图总(web page Diagnostics)、页面组件细分图(page comporment breakdown)、页面组件细分图(随时间变化)(page comportment breakdown over time)、页面下载时间细分图(page download time breakdown)、页面下载时间细分图(随时间变化)(page download time breakdown over time)、第一次缓冲时间细分图(time to first buffer breakdown)、第一次缓冲时间细分图(随时间变化)(time to first buffer breaddown over time)、已下载组件大小图(Downloaded Component Size)[KB]。

1、 页面组件细分图:显示每个网页及其组件的平均下载时间(以秒为单位),查看所选择页面中哪个元素所占的平均下载时间最长。

2、 页面组件细分图(随时间变化):此图适合在客户端下载组件较多时的页面分析,通过分析下载时间发现哪些组件不稳定或比较耗时,它是随整个场景运行的时间来变化的。

3、 页面下载时间细分图:页面下载时间细分图根据DNS解析时间、连接时间、第一次缓冲时间、SSL握手时间、接收时间、FTP验证时间、客户端时间和错误时间对每个组件进行分析的。它可以确认在网页下载时期,响应时间缓慢是由网络错误引起,还是由服务器错误引起。

4、 页面下载时间细分图(随时间变化):显示选定网页下载时间细分,从中能看到页面各个元素在压力测试过程中的下载情况。如果某个页面打开速度慢,通过对此图分析,可以清楚地看到打开该页面的时间主要在什么地方,针对此问题进行优化。

5、 第一次缓冲时间细分图:指成功收到从web服务器返回的第一次缓冲之前的这一段时间内,每个页面组件的相关服务器和网络时间(以秒为单位),此图对分析页面的时间很重要,其中,网络时间为从发送第一个HTTP请求那一刻直到收到确认为止所经过的平均时间。服务器时间是指从收到初始HTTP请求确认直到成功收到来自web服务器的第一次缓冲为止所经过的平均时间。

6、 第一次缓冲时间细分图(随时间变化):第一次缓冲时间是在客户端与服务器建立连接后,从服务器发送第一个数据包开始计时,数据经过网络传送到客户端后,再到浏览器收到第一个缓冲数据所用的时间。(图中,用两种颜色来区分服务器和网络各自所用的时间,以确认是服务器问题还是网络问题,此图非常有用!)

二、图表Merge

(1)每秒点击数与每秒吞吐量图Merge:趋势一致为正常。若不一致,找出不同点;点击数值来自客户端情况,吞吐量数值来自服务器端情况。

(2)每秒点击数与Vuser用户数图Merge

(3)每秒吞吐量与Vuser用户数图Merge

(4)事务数量与Vuser用户数图Merge

(5)响应时间与Vuser用户数图Merge

(6)事务数量与吞吐量图Merge:趋势保持一致。

(7)事务数量与每秒点击率图Merge:趋势保持一致。

三、图表分析

(1)关键点

网页细分页面的下载时间:在New Graph——Web Page Diagnostics——Page Download Time Breakdown添加后,进行查看网页中每个页面下载的时间情况,查看下载时间最长的页面。我们可以轻易的判断哪个页面、哪个请求导致了响应时间变长,甚至响应失败。同时,也可以看到哪个阶段的时间太长导致的。

附录

名称

描述

Client Time

显示因浏览器思考时间或其他与客户端有关的延迟而使客户机上的请求发生延迟时,所经过的平均时间。

Connection Time

显示与包含指定URL的Web服务器建立初始连接所需的时间。连接度量是一个很好的网络问题指示器。此外,它还可表明服务器是否对请求做出响应。

DNS Resolution Time

显示使用最近的DNS服务器将DNS名称解析为IP地址所需的时间。DNS查找度量是指示 DNS解析问题或DNS服务器问题的一个很好的指示器。

Error Time

显示从发出HTTP请求到返回错误消息(仅限于HTTP错误)这期间经过的平均时间。

First Buffer Time

显示从初始HTTP请求(通常为GET)到成功收回来自Web服务器的第一次缓冲时为止所经过的时间。第一次缓冲度量是很好的Web 服务器延迟和网络滞后指示器。

(注意:由于缓冲区大小最大为8K,因此第一次缓冲时间可能也就是完成元素下载所需的时间。)

FTP Autherntication Time

显示验证客户端所用的时间。如果使用 FTP,则服务器在开始处理客户端命令之前,必须验证该客户端。FTP验证度量仅适用于 FTP协议通信

Receive Time

显示从服务器收到最后一个字节并完成下载之前经过的时间。接收度量是很好的网络质量指示器(查看用来计算接收速率的时间 / 大小比率)。

SSL Handshaking Time

显示建立SSL连接(包括客户端hello、服务器hello、客户端公用密钥传输、服务器证书传输和其他部分可选阶段)所用的时间。此时刻后,客户端和服务器之间的所有通信都被加密。SSL握手度量仅适用于HTTPS通信。

(2)网页细分的思路:

结果摘要--》并发数分析--》响应时间--》每秒点击数--》业务成功率--》系统资源--》网页细分图--》web服务器资源--》数据库服务器

启用网页细分图
首先在Controller场景设计运行之前,需要在菜单栏中设置Diagnostics->Configuration->-->Web PageDiagnostics中置为Enabled,即该项前打对钩。
 

先看网页细分页面的下载时间图(Page Download Time Breakdown),查看哪个类型的时间段的花费时间最长;也可以在图表上查看哪个页面的哪个类型时间最长。

First Buffer Time时间值最大,则直接查看第一次缓冲时间细分图(Time to First Buffer Breakdown),可以看出下载时间长是由网络错误引起,还是服务器错误引起。

Receive Time时间值最大,可能是网络问题引起的,也可能是浏览器请求的问题;这时需要看此页面元素是否一直在下载,若一直下载,则极有可能是网络问题。另外一点,若页面缓存做得好,是不会一直下载的吧。当然,也有些前端页面图片文件过大,如163K,造成received time值比较大。

附录(补充说明):

1DNS解析时间:浏览器访问一个网站的时候,一般用的是域名,需要dns服务器把这个域名解析为IP,这个过程就是域名解析时间,如果我们在局域网内直接使用IP访问的话,就没有这个时间了。通过DNS服务器解析域名所需要的时间,解析受到DNS服务器的影响,越小越好。

2、Connection:服务器建立连接的时间。连接服务器所需要的时间,越小越好。

3、SSL  Handshaking:SSL 握手协议时间。加密握手的时间,而Analysis在这里会分析得到页面请求的组成比例图,便于分析页面时间浪费在哪些过程中。

4、FTP Authentication:FTP服务器在处理客户端的命令之前,首先要对客户端进行鉴权,这个度量就是FTP服务器对客户端进行鉴权的时间。FTP认证时间,这是进行FTP登录等操作所需要消耗的认证时间,越短越好。

5、First  Buffer Time:建立连接后,从Web  Server 发出第一个数据包,到客户端浏览器成功接收到第一字节的时间就是First  Buffer。这个度量时间不仅可以表示Web  Server 的延迟时间,还可以表示出网络的反应时间。连接到服务器,服务器返回第一个字节所需要的时间,反映了系统对于正常请求的处理时间开销,包含网络时间和服务器正常处理的时间,该时间越小越好。

6、Receive Time:从浏览器接收到第一个字节起,直到成功收到最后一个字节,下载完成止,这段时间就是receive时间。

7、Client Time:客户端浏览器延迟的时间。客户端浏览接收所需要使用的时间,可以不用考虑。

8、Error  Time:发送错误信息时间。服务器返回错误响应时间,这个时间反映了服务器处理错误的速度,一般是Web服务器直接返回的,包含了网络时间和Web服务器返回错误的时间,该时间越小越好。

LR性能分析随笔(一)的更多相关文章

  1. jmeter性能分析

    1.硬件要求:包括客户端和服务端的cpu,mem,network,disk等,这些硬件设备必须满足性能测试的前提下,才能进行性能测试,否则得到的各项指标不一定是正确的 2.场景分析: 测试前的准备工作 ...

  2. LR性能测试分析流程

    LR性能测试分析流程 一.     判断测试结果的有效性 (1)在整个测试场景的执行过程中,测试环境是否正常. (2)测试场景的设置是否正确.合理. (3)测试结果是否直接暴露出系统的一些问题. (4 ...

  3. 【编译原理】自底向上分析方法——LR文法分析方法的总结

    LR(0).SLR(1).LR(1).LALR(1) de 若干方面的区别 目录 推导过程 分析能力 本质区别 文法对比 可以适当利用物理意义对二义性文法进行冲突处理 推导过程 LR(0)的基础上才有 ...

  4. 如何进行python性能分析?

    在分析python代码性能瓶颈,但又不想修改源代码的时候,ipython shell以及第三方库提供了很多扩展工具,可以不用在代码里面加上统计性能的装饰器,也能很方便直观的分析代码性能.下面以我自己实 ...

  5. SQL Server-聚焦IN VS EXISTS VS JOIN性能分析(十九)

    前言 本节我们开始讲讲这一系列性能比较的终极篇IN VS EXISTS VS JOIN的性能分析,前面系列有人一直在说场景不够,这里我们结合查询索引列.非索引列.查询小表.查询大表来综合分析,简短的内 ...

  6. SQL Server-聚焦NOT IN VS NOT EXISTS VS LEFT JOIN...IS NULL性能分析(十八)

    前言 本节我们来综合比较NOT IN VS NOT EXISTS VS LEFT JOIN...IS NULL的性能,简短的内容,深入的理解,Always to review the basics. ...

  7. SQL Server-聚焦LEFT JOIN...IS NULL AND NOT EXISTS性能分析(十七)

    前言 本节我们来分析LEFT JOIN和NOT EXISTS,简短的内容,深入的理解,Always to review the basics. LEFT JOIN...IS NULL和NOT EXIS ...

  8. SQL Server-聚焦EXISTS AND IN性能分析(十六)

    前言 前面我们学习了NOT EXISTS和NOT IN的比较,当然少不了EXISTS和IN的比较,所以本节我们来学习EXISTS和IN的比较,简短的内容,深入的理解,Always to review ...

  9. SQL Server-聚焦NOT EXISTS AND NOT IN性能分析(十五)

    前言 上一节我们分析了INNER JOIN和IN,对于不同场景其性能是不一样的,本节我们接着分析NOT EXISTS和NOT IN,简短的内容,深入的理解,Always to review the b ...

随机推荐

  1. Cocos2d-X中的ProgressTimer

     ProgressTimer即进度条,进度条在游戏开发中运用很广泛,比如在一些格斗游戏中,显示血液的变化,还有游戏载入进度,等都离不开进度条 Cocos2d-X中使用CCProgressTimer ...

  2. android插件化-apkplug从宿主启动插件Activity-06

    插件是一个apk文件它存在自己的Activity界面和UI显示,本节将解说如何配置插件的启动Activity以及如何从宿主启动它. 一 配置插件apk的对外启动Activity (内部activity ...

  3. Android关于Task的一些实践之SingleTask, SingleInstance和TaskAffinity

    上一篇文章粗略地介绍了一下关于Android中Task的基本知识.只是实践才是检验真理的唯一标准,所以.今天就来试验一下Task中的launchMode是否真的实现了文档所说的那样. 首先.定义三个A ...

  4. 60分钟Python快速学习

    之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空格缩进表示等. 今天自己用了6 ...

  5. override (C# Reference)

    https://msdn.microsoft.com/en-us/library/ebca9ah3.aspx The override modifier is required to extend o ...

  6. POJ 2260:Error Correction

    Error Correction Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6014   Accepted: 3886 ...

  7. 【Silverlight】Bing Maps学习系列(七):使用Bing Maps的图片系统(Tile System)

    [Silverlight]Bing Maps学习系列(七):使用Bing Maps的图片系统(Tile System) 目前包括微软必应地图在内的几乎所有在线电子地图(如:Google Maps等)都 ...

  8. luogu 3865 【模板】ST表

    我太菜了 今天才学会现场脑补ST表静态RMQ #include<iostream> #include<cstdio> #include<algorithm> #in ...

  9. Git简介(转载)

    转自:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137396284551 ...

  10. PCB Genesis加邮票孔(弧与弧)实现算法

    一.Genesis加邮票孔(弧与弧)实现算法 1.鼠标点击位置P点(可以确认搜索区域位置,确认点击位置周边元素分区,此所讲算法未应用到P点坐标) 2.求出:P1C与P2C (线与弧最近点距离的2个点) ...