Nos gustaría calentar una aplicación ASP.NET MVC alojada en el servidor IIS 7.5. El módulo de calentamiento que solía estar disponible en http://forums.iis.net/t/1176740.aspx ha sido eliminado desde hace algún tiempo.¿Cómo calentar una aplicación ASP.NET MVC en IIS 7.5?
La aplicación se debe calentar cada vez que se reinicie el proceso de trabajo IIS o ASP.NET por algún motivo. Durante el período de calentamiento, IIS debe devolver algún código de estado HTTP que indique su estado de calentamiento o su incapacidad para servir a cualquier cliente.
¿Sería una buena idea crear un ejecutable que navegue por las páginas necesarias en el sitio a través de HttpRequests? El ejecutable se puede activar desde la implementación de IProcessHostPreloadClient. ¿Es posible configurar IIS para que solo acepte solicitudes de localhost y una vez que se haya ejecutado, pueda pasar a todos los clientes, pero ese interruptor no debería desencadenar un reinicio de IIS (obviamente).
¿Es posible utilizar Visual Studio 2010 - Web Performance Test para calentar una aplicación en lugar de crear un ejecutable manual? ¿Alguna otra alternativa?
PD: La aplicación utiliza la Autenticación de formularios y usa sesiones, por lo que es importante mantener las cookies de estado y otras cookies.
ACTUALIZACIÓN 1 - Estamos utilizando .NET Framework 4.0 y Entity Framework (base de datos primero) en nuestra aplicación. La primera vez que aciertas las consultas de EF son lentas. La razón detrás del calentamiento es sacar estas primeras visitas del camino. Ya estamos utilizando consultas compiladas en la mayoría de los lugares y hemos implementado vistas compiladas previamente para EF. El tamaño del modelo y la aplicación es muy grande y complejo. El calentamiento necesita recorrer muchas páginas para garantizar que las consultas EF compiladas y no compiladas se ejecuten al menos una vez antes de que cualquier usuario final tenga acceso a la aplicación.
Relacionado: http://stackoverflow.com/questions/13250679/how-to-warm-up-entity-framework-when-does-it-get-cold –
Pruebe comprobar [mi solución] (http: // stackoverflow.com/questions/15348621/iis-7-5-application-initialization-for-asp-net-web-service-warmup-without-rema/15367638?noredirect=1#comment33723748_15367638). No devolverá un código de estado especial, sino que esperará a que el calentamiento responda a las solicitudes. – Jason