我们希望预热托管在IIS7.5服务器上的ASP.NET MVC应用程序。曾经在http://forums.iis.net/t/1176740.aspx提供的预热模块已经被移除。
应用程序应该在每次IIS或ASP.NET工作进程出于任何原因重新启动时预热。在预热期间,IIS应返回一些HTTP状态代码,指示其预热状态或无法为任何客户端提供服务。
创建一个通过HttpRequests浏览站点中必要页面的可执行文件是不是一个好主意?可执行文件可以从IProcessHostPreloadClient实现中触发。是否可以将IIS配置为只接受来自本地主机的请求,一旦可执行文件完成,它就可以切换到所有客户端-但该切换不应触发IIS重新启动(显然)。
是否可以使用Visual Studio2010- Web性能测试来预热应用程序,而不是创建手动可执行文件?还有别的选择吗?
PS:应用程序使用表单身份验证和会话-因此维护状态cookie和其他cookie很重要。
更新1-我们在应用程序中使用.NET Framework4.0和实体框架(首先是数据库)。对EF查询的第一次命中速度很慢。热身背后的原因是为了让这些第一次命中的方式。我们已经在大多数地方使用了编译的查询,并且我们已经为EF实现了预编译的视图。模型和应用程序的规模非常大和复杂。预热需要遍历多个页面,以确保在任何最终用户访问应用程序之前,至少执行一次编译和非编译的EF查询。
https://stackoverflow.com/questions/7387123
复制相似问题