如何减少ASP.net MVC 2中的首次加载时间?

时间:2011-01-10 20:29:02

标签: asp.net asp.net-mvc-2 iis-6

我有一个在本地运行良好的ASP.net MVC 2应用程序。但是,当我将文件移动到我的生产服务器时,我得到的第一次滞后时间约为30秒,我认为这是第一次编译。之后应用程序正常工作。然后在大约20-30分钟不使用后,应用程序需要另外30秒左右才能加载。

我确实试图预编译代码,但在第一次加载时仍然存在延迟。

是否有任何技巧可以让应用程序在第一次加载时更快地运行?

我使用的是ASP.net 3.5,IIS 6,visual studio 2010,MVC 2。

由于

3 个答案:

答案 0 :(得分:6)

Scott Gu有一篇好文章here

编辑:

在serverfault上有一个类似的post here,这可能很有用。

答案 1 :(得分:2)

我决定编写一个Windows服务应用程序,每10分钟调用一次我的页面,到目前为止它运行良好。

答案 2 :(得分:0)

实际上,应用程序池处于空闲状态,并且会自动关闭工作进程。然后,当您尝试访问该页面时,它需要启动工作进程并准备好所有内容。

如果您在Server 2003下运行,则可以告诉它不要关闭工作进程。 Benson Yu在这里有一个很好的回应:

http://forums.asp.net/p/1307768/2666610.aspx

基本上,转到IIS管理器,找到托管应用程序的asp.net 3.5应用程序池,并修改它的性能属性,以便不关闭工作进程或延长超时。