2013-10-23 47 views
0

关于ASP.NET自动启动/预热(请参阅此页面,例如http://weblogs.asp.net/scottgu/archive/2009/09/15/auto-start-asp-net-applications-vs-2010-and-net-4-0-series.aspx)应该在应为此创建的程序集文件中的预加载函数代码中加入什么内容?当我尝试这样做时,我确实有一些东西,但由于我放弃了我创建的初始类文件,因此无法回想起来。它并没有做任何事情来加速网站的问题,但我想知道如果我在课堂上错过了我应该拥有的东西?ASP.NET自动启动/预热程序集

public class PreWarmCache : System.Web.Hosting.IProcessHostPreloadClient { 
    public void Preload(string[] parameters) 
    { 
     // What goes here? 
    } 
} 

回答

2

一个简单得多的解决方案是使用将由第一请求之前加载Web应用程序提高网站的响应速度的Application Initialization Module for IIS 7.5到达:

Auto Starting Websites on IIS 7.5

+0

我已经尝试过这个,但是我看到的改进在最好的情况下是微不足道的。我已经发布了一个不同的问题,我的主要问题在这里:http://stackoverflow.com/questions/19526373/asp-net-web-application-slowness/19532640?noredirect=1#19532640。我验证了w3wp进程正在运行并重新启动,如第二个链接中所述。 –

+0

如果有数据库访问,那么这是一个潜在的罪魁祸首。无论哪种方式,打开页面指令中的Trace属性。这将有助于缩小发生瓶颈的生命周期的特定部分。 – IrishChieftain

+1

由于您在没有数据库访问权限的页面上遇到问题,因此需要缩小范围:http://msdn.microsoft.com/en-us/library/ff647813.aspx – IrishChieftain

0

善有善报有任何您希望运行的代码“预热”您的应用程序。例如,如果在启动时从数据库中读取了1000个对象并将它们放入内存中,则使用此方法代替Application_Start