我们正在使用 ASP.NET 3 和 .NET 4 - 以及一些不同的 IIS(7、8 和 Express 版本)。
无论请求什么,对服务器的所有请求都需要很长时间才能返回,大约 10 秒左右。我们可以看到(通过附加调试器)控制器方法被立即调用并快速返回(在毫秒内)。
我们还可以看到,当 GET 完成时,浏览器会很快(在几毫秒内)完成渲染等。所以延迟在例如'return View(whatever)'和GET完成之间。这向我暗示了类似于 View 编译的东西 - 但它发生在每个请求上,所以不应该在第一个请求之后编译 View 吗?
我们可以使用 View 预编译,但不幸的是启用它会导致很多错误,我们真的不想重建整个 Web 项目以使其工作。正如我上面所说的,一个视图应该在第一次使用时被编译,所以预编译应该只对使用特定视图的第一个请求有帮助。
知道如何诊断这一点并找出实际花费的时间吗?
编辑:取出每个页面上呈现的部分视图之一后,突然一切都变得更快了。现在调查那个视图。