Azure网站上"始终开启"设置的含义

Art*_*ich 11 .net iis azure azure-web-sites

我们在Azure上使用免费的BizSpark订阅,并将我们的应用程序托管为Azure网站.我们经常会遇到意外的站点关闭,因为它有很多后台进程,所以我们的应用程序非常痛苦.

"Always on"设置可以解决此问题,但遗憾的是,在当前订阅中我们无法使用它.

您可能知道IIS有两个基于以下设置的回收:

  1. 默认情况下,每个应用程序每1740分钟(29小时)终止一次 - 定期重启超时.
  2. 如果应用程序在20分钟内未使用,则可以回收应用程序 - 空闲超时.

我想知道如果我们打开" Always on "设置,我们能否确保它可以帮助我们防止上述两种应用程序回收类型.

顺便说一下,我发现了这个问题: "Always On"设置会阻止BOTH idleTimeout和periodicRestart吗?有类似的话题.它说这个设置应该有所帮助.

但我想确定,这是真的.因为在我们的案例中,实时后台进程的中断是绝对不可接受的.

感谢任何答案.

Zai*_*zvi 10

是的,当您打开"Always On"时,两者都会被阻止.您链接到的问题的答案(将"Always On"设置阻止BOTH idleTimeout和periodicRestart?)包含完整的详细信息.如果您有多个运行"Always On"的实例,也将确保所有实例都保持运行.

对于长时间运行的进程,我强烈建议您使用Azure Web Jobs.Azure Webjobs SDK将使您的开发生活更轻松,并为您提供免费的许多不错的监控.请查看Scott Hanselman的教程:http://www.hanselman.com/blog/IntroducingWindowsAzureWebJobs.aspx

仅供参考,Webjobs在您的网站环境中运行,因此如果您的网站被回收(如果Always On被禁用),那么您的Webjob也将停止运行.启用"始终开启"将保持您的Web作业和您的网站.