Fiddler系统监控参数解读

转自:https://blog.csdn.net/txj236/article/details/38872855

在对系统监控的过程中,发现ClientConnected和ClientBeginRequest之间有超过10秒的间隔时间的情况发生。

例如:

ClientConnected:  09:50:31.066
ClientBeginRequest: 09:50:41.113

查了http://fiddler.wikidot.com/timers,看到了对这种现象的说明

  • ClientConnected- Exact time that the client browser made a TCP/IP connection to Fiddler.
  • ClientBeginRequest– Time at which this HTTP request began. May be much later than ClientConnected due to client connection reuse.

补充查了下资料:

1.很有可能是客户端的请求是通过重用的客户端socket来传输的;

2. ClientConnected是指从浏览器到Fiddler的socket连接时间

3. 计算准确的响应时间:ClientBeginRequest ~ ClientEndResponse

1. Fiddler作为系统代理,所有来自微软互联网服务(WinInet)的http请求都先经过Fiddler再到Web Server

     Internet Explorer  <-->  WinInet  <--> Fiddler <--> Web Server

2. Fiddler可以做性能测试,HTTP统计视图

3. 如果一个响应没有包含Cache-Control头,那么就不会被缓存在客户端

  • ClientDoneRequest -浏览器完成将HTTP请求发送到Fiddler的时间。 
  • DNSTime - # milliseconds Fiddler spent in DNS looking up the server's IP address.
  • GatewayDeterminationTime - # milliseconds Fiddler spent determining the upstream gateway proxy to use (e.g. processing autoproxy script). Mutually exclusive to DNSTime.
  • TCPConnectTime - # milliseconds Fiddler与服务器建立TCP/IP连接的用时
  • HTTPSHandshakeTime – Amount of time spent in HTTPS handshake
  • ServerConnected – 与服务器建立连接的时间,由于服务器连接的重用,该时间可能比ClientConnected早。
  • FiddlerBeginRequest – The time at which Fiddler began sending the HTTP request to the server.
  • ServerGotRequest - Exact time that Fiddler finished (re)sending the HTTP request to the server.
  • ServerBeginResponse - Exact time that Fiddler got the first bytes of the server's HTTP response.
  • ServerDoneResponse - Exact time that Fiddler got the last bytes of the server's HTTP response.
  • ClientBeginResponse - 开始向客户浏览器返回HTTP响应数据的时间.
  • ClientDoneResponse- 完成向客户浏览器返回HTTP响应数据的时间.

服务器端处理及响应的时间:ServerBeginResponse - ServerGotRequest

网络传输耗时(上传):(ServerGotRequest - ClientDoneRequest) - (DNSTime + TCPConnectTime)

Fiddler的HTTP统计视图(可以优化请求和页面)

    Fiddler的统计选项卡中显示了当前Session的基本信息,在选项卡的最上方显示的是文本信息,最下方是个饼图,按MIME类型显示流量。使用Statistics页签,用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。

选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化。

如下所示:

饼图如下:

统计选项卡的一些信息含义如下解释:

Request Count 选中的session数;

Unique Hosts 流量流向的独立目标主机数。如果所有选中的流量都发送到相同的服务器上,则不会显示该字段。

Bytes sent:  HTTP请求头和请求体中向外发送的字节总数。后面括号中分别给出了头和body各自的字节数。

Bytes received: HTTP请求头和请求体中接收到的所有字节数。在全部计数后面的括号中给出了请求头和请求体各自的字节数。

Requests started at: Fiddler接收到的第一个请求的第一个字节的时间点。

Responses completed at: Fiddler发送到客户端的最后一个响应的最后一个字节的时间点。

Sequence(clock) duration:  第一个请求开始到最后一个响应结束之间的 “时钟时间”。

Aggregate session duration: 所有选中的session从请求到响应之间的时间的和。

DNS Lookup time: 所有选中的session解析DNS所花费的时间的总和。

TCP/IP Connect duration: 所有选中session建立TCP/IP连接所花费的时间总和。

HTTPS Handshake duration: 所有选中session在HTTPS握手上所花费的时间总和。

Response Codes: 选中session中各个HTTP响应码的计数。

Response Bytes by content-type: 选中session中响应的各个Content-Type的字节数。

Estimated Performance: 选中的流量在不同语种(local)地区和连接方式下所需时间的初步估计。

原文地址:https://www.cnblogs.com/wangxiaoqun/p/9412896.html