¿Se requiere el atributo serviceAutoStartProvider para iniciar automáticamente una aplicación ASP.NET?

11

He estado leyendo la publicación de Scott Guthrie sobre el inicio automático de aplicaciones ASP.NET , que proporciona ejemplos sobre cómo configurar una aplicación ASP.NET 4.0 para el inicio automático.

<applicationPools>
    <add name="MyAppWorkerProcess" managedRuntimeVersion="v4.0"
        startMode="AlwaysRunning" />
</applicationPools>

<!--...-->
<sites>
     <site name="MySite" id="1">
          <application path="/" serviceAutoStartEnabled="true"
              serviceAutoStartProvider="PreWarmMyCache" />
     </site>
</sites>

<!--...-->
<serviceAutoStartProviders>
     <add name="PreWarmMyCache" type="PreWarmCache, MyAssembly" />
</serviceAutoStartProviders>

Lo que no está claro en su publicación es si la siguiente configuración iniciará automáticamente una aplicación ASP.NET:

<applicationPools>
    <add name="MyAppWorkerProcess" managedRuntimeVersion="v4.0"
        startMode="AlwaysRunning" />
</applicationPools>

<!--...-->
<sites>
     <site name="MySite" id="1">
          <application path="/" serviceAutoStartEnabled="true" />
     </site>
</sites>

La diferencia aquí es que no hay una clase especificada para el inicio. Idealmente, la aplicación solo se cargaría. La documentación sobre la Solicitud de un sitio implica que el serviceAutoStartEnabledatributo requiere un serviceAutoStartProvideratributo para funcionar. Pero no hay indicios de lo que sucede si no se proporciona el atributo adicional.

  • ¿Estoy leyendo la documentación correctamente?
  • ¿Se serviceAutoStartProviderrequiere que se especifique para utilizar serviceAutoStartEnabled?
  • ¿Qué sucede si no serviceAutoStartProviderse especifica?
ahsteele
fuente

Respuestas:

10

Las funciones de Calentamiento, específicamente aquellas relacionadas con IIS, se suspendieron o dejaron de desarrollarse. El artículo de Scott era de pre-VS2010. Reescribieron toda la pila en un nuevo módulo IIS.

Ahora puede configurar todo esto directamente desde IIS utilizando el Módulo de inicialización de aplicaciones . El módulo proporciona más características y funcionalidades que el mecanismo de calentamiento que está buscando.

Brent Pabst
fuente
Para jugar con esto, el Módulo de inicialización de la aplicación , pero imagino que marcaré esto como la respuesta aceptada pronto. Gracias por responder, odio cuando las preguntas languidecen, ¡pensé que iba a ganar la insignia Tumbleweed con esta! ;)
ahsteele
@ahsteele Ha, eventualmente la gente revisa las viejas preguntas. Solo toma algo de tiempo de vez en cuando. Espero que llene el vacío por ti.
Brent Pabst