【发布时间】:2009-04-23 22:42:39
【问题描述】:
我会提前道歉,因为这篇文章是出于严重的挫败感而诞生的。
我有一个在 Windows 2000/IIS5 上运行多年的经典 ASP 网站,以及我们最近开始在相同服务器上运行的另一个 ASP.NET 2.0 网站。到目前为止,一切都运行良好。
去年,我尝试升级(全新安装)到 Windows 2003/IIS6。经典的 ASP 网站要慢得多,根据使用数周的平均日志/统计数据,慢了大约 50%。我想尽一切办法找出慢的地方。网络调整。融合的。经典的 iis5 模式。进行中。进程外。没有什么比这更好的了,我很快又回到了 IIS5/2000。那天倒退了,性能又回到了原来的位置。这发生在不止一台服务器上。最终,我放弃了,把它归结为 2003 年的某种 TCP 问题。
我最近在一台类似但功能更强大的机器上安装了一个 Windows 2008/IIS 服务器,希望情况会更好。令我高兴的是,我的 ASP 经典应用程序在 Windows 2008 下速度更快。不幸的是,我的 ASP.NET 应用程序现在明显慢了 50-75%。所有它的内容加载。它与 2000 机器在同一个网络上。该网站是直接从另一台机器上复制的,它是来自 studio 2005 的预编译网络应用程序。
虽然页面确实会访问数据库和另一台服务器以获取初始数据,但它会从那里缓存一段时间,它还使用与经典站点相同的数据库服务器,速度很快,所以我知道它不一定是连接问题。
我试过默认的应用程序池和经典的 .NET 池没有区别。已更新。/检查所有常用位置的最大线程数、每个 cpu 的最大数、web garen 或没有似乎无关紧要。我已经仔细检查了编译 debug=false 是否仍然在 web.config 中设置。
为了快速进行基准测试,我使用 ab.exe (Apache Bench) 发送 10 个请求,一次发送 1 个。即使我使用 IE 或 Firefox 访问该站点,它也明显比 2000 以下慢,即使根据 firebug。
在这一点上,我很沮丧,完全不知道从哪里开始。有没有人经历过这种混乱?
【问题讨论】:
-
windows 防火墙也被禁用,我尝试禁用 NIC 上的 TX/TR 卸载(BroadCom Xtreme 1GB)
-
不能说我经历过,但我完全同情你... :-)
-
这就是我讨厌电脑的原因。昨天。慢的。重新复制网站。今天大声尖叫。就像快速从水中吹出2000。我唯一能想到的是,运行另一个服务器运行的副本(预编译)与新副本相比存在一些问题。
-
这里是……星期一。机器上没有任何变化,但现在它已经闲置了,它又变慢了。重新部署代码。然后又快了。 WTH。
标签: performance iis-7 iis-6 iis-5