谷歌浏览器:本地主机上的HTTP GET,加载时间不一致

时间:2016-08-14 16:40:56

标签: javascript google-chrome

在我的Angular2项目中,我有一个通过HTTP加载JSON数据的组件,并将其作为网格显示在页面上。网格具有分页,每次请求新的网格页面时,组件都会执行新的HTTP GET。开发站点托管在localhost上,Web服务也是如此,但它们使用不同的端口号。

该组件可以正常运行。但是,我注意到在谷歌浏览器中,HTTP GET响应时间似乎波动起来了。没有明显的原因。这只发生在Chrome中。在Firefox中没有问题。

当我将网站部署到网上时,Chrome或Firefox中没有任何问题,因此此问题特定于Chrome +我的开发环境/可能是localhost网址。

以下是开发网站上我的Google Chrome网络标签的屏幕截图: enter image description here

如果查看时间列,您可以看到每个连续请求的时间在大约80ms到380ms之间波动。 380毫秒的时间差不多5倍,因此,每当响应速度变慢时,您就会发现网格组件刷新明显延迟。同样,这只发生在Chrome中。

深入挖掘,这是一个缓慢的HTTP GET时间的屏幕截图: enter image description here

您可以从上面的示例中看到,网络服务在大约75毫秒内响应,但Chrome报告整个操作需要377毫秒?!看看时间我不知道377ms来自哪里,因为其他数字显然不会达到377ms。但是,看一下视觉时间条,DNS LookupInitial Connection之间存在巨大差距!

而且,这是一个更快的HTTP GET的屏幕截图: enter image description here

正如您从上面的时间中看到的那样,没有DNS lookupInitial Connection部分,就像之前的屏幕截图中有点奇怪一样?

有没有人对我如何进行针对性解决问题有任何建议?

非常感谢任何帮助:)

1 个答案:

答案 0 :(得分:0)

快速更新:我设法通过为我的开发站点使用不同的主机名来解决问题。

我在我的hosts文件中添加了127.0.0.1 testsite,然后将我的开发服务器网址更改为http://testsite:3000。我之前使用的是http://localhost:3000。之后,HTTP GET全部下降到一致的80ms-ish,并且在Developer Tools的Network选项卡中没有更多的DNS Lookup问题。

不完全确定来源,但使用localhost作为主机导致某个地方出现问题。