LR Analysis:详解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 O(∩_∩)O 怎么解释呢 ?N1 过程为建立链接过程,就是客户端给服务器端发送请求说,我 要取什么东西,R1 为服务器响应时间,响应结果只是收到,然后经过 N2 传输给 客户端,OK 链接建立,但是服务器响应还没结束,要准备客户端所索取的数据,所以继续响应,(此时对 http 来说,客户端处于等待接收状态),然后把结果 传输给客户端,这就是 N3 时间
LR 在计算结果时候 拿 R1 和 N3 进行了抵消,所以给出来的只是近似值

LR Analysis:详解FirstBufferTime的更多相关文章

  1. LR基础理论详解

    本人参考了大神的博客(https://blog.csdn.net/cyh_24/article/details/50359055),写的非常详细,在此整理一下要点 逻辑斯蒂分布 基础公式了解 二项逻辑 ...

  2. loadrunner之analysis详解

    本文原出处:http://blog.csdn.net/lykangjia/article/details/56009750 一.常用到的性能测试术语 1.事务(Transaction) 在web性能测 ...

  3. LR网页细分图中的时间详解

    Web Page Diagnostics: 1)DNS Resolution:浏览器访问一个网站的时候,一般用的是域名,需要dns服务器把这个域名解析为IP,这个过程就是域名解析时间,如果我们在局域网 ...

  4. (转)LR监控Linux系统性能计数器详解

    从LR里面add measurement,填写linux机器的IP,出现所有unix/linux的计数器,包括cpu的,mem的,disk,network的.这里介绍几个常用的: (对于如何监控Lin ...

  5. LR测试工具性能指标详解

    这篇文章将对LoadRunner测试工具的性能指标从以下三点进行详解. 第一点.Web资源分析是从服务器入手对Web服务器的性能分析. 1.Hits per Second "每秒点击次数&q ...

  6. /proc/meminfo详解 = /nmon analysis --MEM

    memtotal hightotal lowtotal swaptotal memfree highfree lowfree swapfree memshared cached active bigf ...

  7. org.apache.log4j.Logger详解

    org.apache.log4j.Logger 详解 1. 概述 1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的 :监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工 ...

  8. ElasticSearch第四步-查询详解

    ElasticSearch系列学习 ElasticSearch第一步-环境配置 ElasticSearch第二步-CRUD之Sense ElasticSearch第三步-中文分词 ElasticSea ...

  9. linux查看端口及端口详解

    今天现场查看了TCP端口的占用情况,如下图   红色部分是IP,现场那边问我是不是我的程序占用了tcp的链接,,我远程登陆现场查看了一下,这种类型的tcp链接占用了400多个,,后边查了一下资料,说E ...

随机推荐

  1. effective OC2.0 52阅读笔记(一 熟悉Objective-C)

    第一章:熟悉Objective-C 1 了解objective-c语言的起源 总结:OC为C语言添加了面向对象的特性,是其超集.采用动态绑定的消息结构而非函数调用,也就是说,要在运行时才检查对象类型及 ...

  2. Java for LeetCode 212 Word Search II

    Given a 2D board and a list of words from the dictionary, find all words in the board. Each word mus ...

  3. cookie相关内容

    ----客户端删除cookie <script type="text/javascript">                        function DelC ...

  4. FZU 2165 v11(最小重复覆盖)+ codeforces 417D Cunning Gena

    告诉你若干个(<=100)武器的花费以及武器能消灭的怪物编号,问消灭所有怪物(<=100)的最小花费...当然每个武器可以无限次使用,不然这题就太水了╮(╯▽╰)╭ 这题当时比赛的时候连题 ...

  5. WCF错误:413 Request Entity Too Large

    在我们用WCF传输数据的时候,如果启用默认配置,传输的数据量过大,经常会出这个错误. WCF包含服务端与客户端,所以这个错误可能出现在服务端返回数据给客户端,或客户端传数据给服务端时. 1. 服务端返 ...

  6. HDU 5821 Ball (贪心排序) -2016杭电多校联合第8场

    题目:传送门. 题意:T组数据,每组给定一个n一个m,在给定两个长度为n的数组a和b,再给定m次操作,每次给定l和r,每次可以把[l,r]的数进行任意调换位置,问能否在转换后使得a数组变成b数组. 题 ...

  7. YAML-初识

    YAML简介 YAML-what? YAML Ain't Markup Language 和GNU一样,YAML是一个递归着说"不"的名字.不同的是,GNU对UNIX说不,YAML ...

  8. Hibernate中一对多和多对一关系

    1.单向多对一和双向多对一的区别? 只需要从一方获取另一方的数据时 就使用单向关联双方都需要获取对方数据时 就使用双向关系 部门--人员 使用人员时如果只需要获取对应部门信息(user.getdept ...

  9. JQ 全选设定与设置选中

    复选数据框 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  10. 使用Timer和ScheduledThreadPoolExecutor执行定时任务

    Java使用Timer和ScheduledThreadPoolExecutor执行定时任务 定时任务是在指定时间执行程序,或周期性执行计划任务.Java中实现定时任务的方法有很多,主要JDK自带的一些 ...