asp.net重启后,每个页面的MVC应用程序为何总是如此缓慢?
- 内容介绍
- 文章标签
- 相关推荐
本文共计434个文字,预计阅读时间需要2分钟。
除了在IIS上运行的ASP.NET应用程序中出现的显性慢启动问题之外,我们还遇到了另一个问题。在新应用启动(例如iisreset)之后,第一个请求需要一些时间。但在当前的应用程序中,“
除了在IIS上运行的ASP.NET应用程序中出现的臭名昭着的慢启动问题之外,我们还遇到了另一个问题.在新应用程序启动(例如iisreset)之后,第一个请求需要一些时间.但是在当前的应用程序中,对于尚未加载的页面的每个其他请求在第一次打击时大约需要10-12秒!
页面加载后,对同一资源的所有其他请求再次快速(通常为80-130毫秒).对于来自其他客户端计算机的第一次加载也是如此,因此这不是客户端缓存问题.
例如:
Machine | Request | Duration | A | GET / | 43000 ms | (wakeup) A | GET / | 90 ms | B | GET / | 90 ms | A | GET /registration | 12000 ms | A | GET /registration | 110 ms | A | GET /registration | 110 ms | A | GET /registration | 110 ms | A | GET /foobar | 11000 ms | A | GET /foobar | 85 ms | B | GET /baz | 10000 ms | A | GET /baz | 100 ms |
有趣的是,当我们在DEV机器上运行应用程序时,这不会发生(debug = true等).只有当我们发布网站(debug = false,precompile等)时才会出现这种情况.
所有静态资源都被捆绑并正确缓存,并且没有一个请求可能需要超过1秒的时间.应用程序池和网站配置为自动启动并运行forver.
我非常感谢任何提示.
您可以尝试预编译Razor视图.您可以找到示例here,尽管作者将其作为在项目编译时在视图中查找语法错误的方法.
其他材料也可以在‘Can Razor views be compiled?’ question的答案中找到.
本文共计434个文字,预计阅读时间需要2分钟。
除了在IIS上运行的ASP.NET应用程序中出现的显性慢启动问题之外,我们还遇到了另一个问题。在新应用启动(例如iisreset)之后,第一个请求需要一些时间。但在当前的应用程序中,“
除了在IIS上运行的ASP.NET应用程序中出现的臭名昭着的慢启动问题之外,我们还遇到了另一个问题.在新应用程序启动(例如iisreset)之后,第一个请求需要一些时间.但是在当前的应用程序中,对于尚未加载的页面的每个其他请求在第一次打击时大约需要10-12秒!
页面加载后,对同一资源的所有其他请求再次快速(通常为80-130毫秒).对于来自其他客户端计算机的第一次加载也是如此,因此这不是客户端缓存问题.
例如:
Machine | Request | Duration | A | GET / | 43000 ms | (wakeup) A | GET / | 90 ms | B | GET / | 90 ms | A | GET /registration | 12000 ms | A | GET /registration | 110 ms | A | GET /registration | 110 ms | A | GET /registration | 110 ms | A | GET /foobar | 11000 ms | A | GET /foobar | 85 ms | B | GET /baz | 10000 ms | A | GET /baz | 100 ms |
有趣的是,当我们在DEV机器上运行应用程序时,这不会发生(debug = true等).只有当我们发布网站(debug = false,precompile等)时才会出现这种情况.
所有静态资源都被捆绑并正确缓存,并且没有一个请求可能需要超过1秒的时间.应用程序池和网站配置为自动启动并运行forver.
我非常感谢任何提示.
您可以尝试预编译Razor视图.您可以找到示例here,尽管作者将其作为在项目编译时在视图中查找语法错误的方法.
其他材料也可以在‘Can Razor views be compiled?’ question的答案中找到.

