IE 11开发人员工具正在为简单的AJAX JSON GET请求显示这些值:
对于同一个请求Fiddler显示
ACTUAL PERFORMANCE
--------------
ClientConnected: 19:59:32.433
ClientBeginRequest: 19:59:32.480
GotRequestHeaders: 19:59:32.480
ClientDoneRequest: 19:59:32.480
Determine Gateway: 0ms
DNS Lookup: 0ms
TCP/IP Connect: 0ms
HTTPS Handshake: 0ms
ServerConnected: 19:59:32.448
FiddlerBeginRequest:19:59:32.480
ServerGotRequest: 19:59:32.480
ServerBeginResponse:19:59:32.573
GotResponseHeaders: 19:59:32.573
ServerDoneResponse: 19:59:32.573
ClientBeginResponse:19:59:32.573
ClientDoneResponse: 19:59:32.573
Overall Elapsed: 0:00:00.093
造成这种差异的原因(93ms VS 125ms) - 开发人员工具是不准确还是考虑到其他时间(比如在本地缓存中查找资源等)?有时差异要大得多(比如3ms VS 57ms)。我看了google.com进行比较 - 在Fiddler和IE中,AJAX请求时间几乎相同,所以我假设我的网站上有一些可以改进的东西。
答案 0 :(得分:1)
首先要了解的是,在Windows中,默认情况下,时钟分辨率为15.6ms,因此所做的任何测量都可能会有很大差异。在Fiddler中,单击工具>提琴手选项>启用高分辨率计时器以在Fiddler运行时更改系统时钟分辨率。
接下来,了解Fiddler向您展示实际的网络时间,而IE开发人员工具应包括网络时间以及任何相关的开销,如检查缓存,内部排队等。
一般来说,毫秒级时序分析并不能很好地利用Web开发人员的时间 - 而是寻找重复的资源,未压缩的数据,冗余数据,不必要的重定向等等。只是打扰到当您完全控制网络基础设施并且能够在较低的水平上改进时,毫秒级。