自动启动ASP.NET应用程序是否需要serviceAutoStartProvider属性?


11

我一直在阅读Scott Guthrie在“自动启动ASP.NET应用程序”上的帖子,其中提供了有关如何设置ASP.NET 4.0应用程序以自动启动的示例。

<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>

从他的帖子中不清楚的是,以下配置是否将自动启动ASP.NET应用程序:

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

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

此处的区别在于,没有指定要启动的类。理想情况下,将仅加载应用程序。有关网站申请的文档暗示该serviceAutoStartEnabled属性需要一个serviceAutoStartProvider属性才能工作。但是,如果没有提供附加属性,则没有任何指示。

  • 我是否正确阅读了文档?
  • 是否serviceAutoStartProvider规定要使用serviceAutoStartEnabled
  • 如果没有serviceAutoStartProvider指定该怎么办?

Answers:


10

预热功能(特别是与IIS相关的功能)已停止使用或不再开发。Scott的文章来自VS2010之前的版本。他们将整个堆栈重新编写为新的IIS模块。

现在,您可以使用应用程序初始化模块直接从IIS配置所有这些功能。该模块提供了比您正在研究的预热机制更多的特性和功能。


可以开始使用Application Initialization Module,但是我想我很快会将其标记为可接受的答案。多谢您的回覆,我讨厌问题减弱,以为我要在这上面赢得风滚草徽章!;)
ahsteele 2012年

@ahsteele Ha,最终人们绕过了老问题。偶尔需要花费一些时间。希望它能为您填补空缺。
布伦特·帕布斯特
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.