Browsermob har时间似乎关闭了

时间:2016-09-11 14:44:37

标签: selenium-webdriver browsermob-proxy

我能够通过Starting ChromeDriver 2.23.409699让Selenium驾驶browsermob-proxy-2.1.2并且可以访问HAR数据,但是时间似乎很奇怪,特别是对于SSL网站。

例如,第一次获取是对网站本身进行的,按照时间顺序进行:

@ 512ms从开始第一个请求转到页面:

  • 连接:1,306ms
  • SSL:1,293ms
  • 发送:1ms
  • 等待:16毫秒
  • 接收:6ms

url1

然后@ 576ms(页面后64ms)对引用的样式表的第二个请求消失:

url2

然而据我所知,时间重叠在请求#2熄灭,而页面仍在等待连接(SSL和连接)。下面的图表显示它们重叠。

graph

任何想法我做错了什么或误解了?

1 个答案:

答案 0 :(得分:0)

总结您的数据:

  • 你开始捕获
  • 主页HTML页面有512ms的请求
  • 还有576毫秒的样式表请求。这发生在第一个请求完成之前

SSL握手不太可能需要1293 ms。 http://www.semicomplete.com/blog/geekery/ssl-latency.html列出完整事务的时间从68毫秒到408毫秒,包括握手。检索https://www.mozilla.org/en-US/about/

也是如此

timing web requests mozilla/about

据猜测,Google再次为Chrome做了一些聪明的事。

  1. 启动TCP + SSL握手,
  2. 然后开始下载主HTML。
  3. 在HTML到达的同时,它被解析,并且
  4. 遇到样式表引用时,也会下载(在HTML传输结束之前)。
  5. 这些需要在单独的线程中进行,以使此优化起作用,但它可以减少网络下载时间(这似乎是Chrome的主要目标之一)。