【问题标题】:Using IIS for localhost ASP.NET web app very slow to rebuild将 IIS 用于 localhost ASP.NET Web 应用程序的重建速度非常慢
【发布时间】:2025-12-20 18:50:11
【问题描述】:

我们使用 IIS 在本地主机上托管我们的 Visual Studio 2008 应用程序 (ASP.NET 2/3.5),而不是 Cassini。

这种方法的唯一问题(我在 Windows 7 上使用 IIS7,但在使用 IIS 5.1 的 XP 上也存在问题)是每次编译后 IIS 需要整整一分钟来响应 第一个请求。我假设它正在做自己的编译或其他事情。

有什么办法可以加快速度吗?

每次我更改代码并重新编译时,我都必须等待一分钟。

请不要建议使用 Cassini,我对如何使用 IIS 加速 localhost 感兴趣!

【问题讨论】:

  • @joshcomley 你有没有找到可以加快速度的方法?

标签: visual-studio-2008 iis-7 localhost


【解决方案1】:

当您第一次访问该网站时,IIS 会进行自己的编译,这就是导致此延迟的原因。不过,我认为 IIS 是按需编译的,所以我很惊讶地听到查看第一页需要一整分钟。

网络服务器上的磁盘性能如何?它通常是慢的,还是完整的/碎片化的?是否存在内存争用?第一步是看看是否有某种方法可以增加该服务器中的可用资源 - 通过添加更多或通过停止/移动任何不必要的服务 - 看看是否有帮助。

如果这对您首次访问时的编译时间没有影响,您可以尝试在构建过程中添加一个在后台访问该网站的步骤,这将导致它进行预编译。它不会消除您的等待时间,但它会立即开始编译,因此该站点将尽快可用。您可以在 MSDN 上阅读有关自定义构建步骤的信息:http://msdn.microsoft.com/en-us/library/ms366724(VS.80).aspx

我很想知道解决这个问题的方法。

【讨论】:

    【解决方案2】:

    运行进程监视器以​​查看正在消耗的资源(网络、文件、注册表、线程)并查看正在消耗的任何不必要的资源(远程 https、昂贵的文件读取)

    我有类似的问题。当我运行进程监视器时,我发现我的融合日志已启用,因此在禁用融合日志 IIS Express 后,磁盘中有很多内容延迟了 dll 的加载。

    【讨论】:

      最近更新 更多