Http响应等待时间请帮助解决瓶颈问题?

时间:2012-10-19 18:16:16

标签: performance http iis-7.5 windows-server-2008

就性能问题而言,服务器性能良好。除了http响应等待时间。随着我们在线服务的发展,这将成为一个更大的问题。在所有条件相同的情况下,我很困惑这台新服务器是不是像运行多个网站,日志记录等的旧服务器一样快地加载页面......

以下是我一直在使用的http://www.gtmetrix.com在线测试工具的屏幕截图。无论一天中的哪个时间,这些结果都是一致的,这里的数字没有意义。新网站页面缩小了75%,但它的总生存时间仅快了26毫秒。在下图中,左侧是NEW SERVER,右侧是OLD SERVER 时间线的左侧部分是握手部分。所以,你可以看到,新服务器的速度大致相同。紫色的中间部分,代表等待时间。它是OLD SERVER的延迟(以毫秒为单位)的4倍。右侧的灰色部分表示下载文件的实际时间。您还会注意到新服务器在下载响应时要快得多,这很可能是由于响应大小减少了75%。

GtMetrix Resuts您可以在此处查看新服务器的完整结果。 http://gtmetrix.com/reports/204.193.113.47/Kl614UCf

这是我所知道的差异表,如果你看到一个可能是罪魁祸首,请告诉我。我忘了将这个添加到表中,但旧的服务器正在生产中,现在正在服务请求,当www.gtmetrix正在点击它时。相比之下,我的新服务器,只是我连接和生成请求。

Server Config Comparison

我目前的假设是,缓慢导致服务器虚拟化,不正确的IIS设置或32位和64位操作系统之间的区别

2 个答案:

答案 0 :(得分:0)

查看完整的结果,等待时间的下限似乎 115ms 。没有一个请求更快,大多数都在125毫秒左右,从请求的资源判断,也有很多静态资源,因此服务响应不应该涉及大量的CPU。即使响应小到123字节,仍然存在这种延迟。

所以它看起来像是一个普遍的问题,甚至可能与IIS无关。这里有一些想法,我试图调试这个。

  • ping往返需要多长时间? (即它是一般网络问题,路由等吗?)
  • 从服务器框(例如,到localhost)完成HTTP请求需要多长时间? (如果它们都需要超过100毫秒,请在服务器框内开始分析)

答案 1 :(得分:0)

行...

萨拉索塔(?)的服务器,测试代理人在温哥华大约相隔4,356公里(因为乌鸦飞行)所以你希望的最佳往返时间是45分钟左右。

鉴于它不是直接路由,路由器之类的东西会增加延迟,那么你似乎得到的155ms往返是非常合理的。

查看HTML页面的请求,344ms完成它是一个非常好的时间 - 基本上114ms来设置连接,115ms从服务器接收第一个字节然后155ms来获得完整的响应。

除非你减少往返时间,否则这段时间不会有太大改善 - 你是否尝试过从gtmetrix的Dallas服务器进行测试作为比较?

如果它是一个缓慢的服务器响应,那么像PAL(http://pal.codeplex.com/)这样的东西值得使用作为第一眼看看服务器上发生了什么,但我也看看SQL的速度有多快服务器正在响应测试页面上使用的查询。

您希望稍后在瀑布中看到一些事情......

对于从ajax.aspnetcdn.net托管的两个文件,解析其DNS名称所需的时间比下载它们要长,因此您可能需要考虑自己管理它们

对于基于文本的内容,例如HTML,CSS,JS等你应用了什么级别的gzip压缩,是否在服务器上缓存了压缩文件? (他们的服务器时间看起来有点长)