在网络面板的Google Chrome浏览器时间轴中,时间是什么意思?


83

通常,在使用Google Chrome浏览器的网络面板对性能进行故障排除时,我会看到不同的时间,并且常常想知道它们的含义。

有人可以验证我是否正确理解了以下内容:

  1. 阻止:时间由浏览器针对同一域限制的多次请求阻止(???)
  2. 等待中:正在等待来自服务器的连接(???)
  3. 发送:将文件从服务器传输到浏览器所花费的时间(???)
  4. 接收:浏览器分析和解码文件所花费的时间(???)
  5. DNS查找:解析主机名所花费的时间。
  6. 连接:建立套接字连接所花费的时间。

现在有人将如何解决长时间的阻止?

现在有人将如何解决漫长的等待时间?


Answers:


92

发送是将数据/请求上传到服务器所花费的时间。它发生在阻塞和等待之间。例如,如果我发回一个ASPX页面,这将指示将请求(包括表单的值和会话状态)上传回ASP服务器所花费的时间。

等待时间是发送请求之后但尚未收到服务器响应之前的时间。基本上,这是等待服务器响应所花费的时间。

接收是从服务器下载响应所花费的时间。

阻塞是UI线程启动请求和HTTP GET请求进入网络之间的时间。

这些出现的顺序是:

  1. 封锁*
  2. DNS查询
  3. 连接中
  4. 正在发送
  5. 等候
  6. 接收

*阻止和DNS查找可能会交换。

网络选项卡不指示处理所花费的时间。

如果阻塞时间长,则运行浏览器的计算机运行缓慢。您可以通过升级计算机(更多的RAM,更快的处理器等)或减少计算机的工作量(关闭不需要的服务,关闭程序等)来解决此问题。

漫长的等待时间表明您的服务器需要很长时间来响应请求。这意味着:

  • 该请求需要花费很长时间来处理(例如,如果您要从数据库中提取大量数据,则需要对大量数据进行排序,或者必须在需要加速的HDD上找到文件)。
  • 您的服务器接收到太多的请求,无法在合理的时间内处理所有请求(处理一个请求可能需要0.02秒,但是当您有1000个请求时,会有明显的延迟)。

这两个问题(长时间等待+长时间阻塞)相关。如果可以通过缓存,添加新服务器并减少活动页面所需的工作来减少服务器上的工作负载,那么您应该在这两个方面都看到了改进。


在上一段中,您不是要长时间等待+长时间接收吗?
Valentin

@Valentin接收将更多地是您的Internet连接和服务器。长时间阻塞将意味着您的PC出现问题。
2014年

24

您可以在此处阅读Google团队的详细官方解释。这是一个非常有用的资源,您的信息位于“时间轴”视图部分下。

资源网络时序在时间轴视图中显示与资源栏中相同的信息。回答您的问题:

  • DNS查找:执行DNS查找所花费的时间。(您需要找出site.com的IP地址,这需要时间)
  • 阻塞:请求等待已建立的连接可供重用所花费的时间。正如另一个答案所说,它不依赖于服务器-这是客户端的问题。
  • 连接:建立连接所花费的时间,包括TCP握手/重试,DNS查找以及连接到代理或协商安全套接字层(SSL)的时间。取决于网络拥塞。
  • 发送-发送请求所花费的时间。取决于发送数据的大小(通常很小,因为您的请求几乎总是几个字节,除非您提交大图像或大量文本),网络拥塞,客户端与服务器的接近程度
  • 等待-等待初始响应所花费的时间。这主要是服务器处理和响应您的响应的时间。如果您的服务器计算事物,从数据库中获取记录等等,这就是最快的速度。
  • 接收-接收响应数据所花费的时间。类似于发送,但是现在您正在从服务器获取数据(响应大小通常大于请求大小)。因此,它还取决于大小,连接质量等。

仅供参考:我发现了一个很好的har文件分析器
Mike Pennington

1

阻塞:请求等待已建立的连接可供重用所花费的时间。正如另一个答案所说,它不依赖于您的服务器-这是客户端的问题

我不同意上述说法。其他所有条件都相同[我的机器工作负荷]-我的浏览器显示一个网站的“阻塞”时间少得多,而其他网站的阻塞时间却长。

因此,如果等待六个线程中的一个+代理协商**很高,那主要是由于服务器速度缓慢的级联效应或页面的不良设计[通过电线发送太多,太多次]。

**-无论“代理协商”是什么意思,没人能很好地解释这一点,尤其是在实际上不涉及本地/ CDN代理的情况下

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.