Azure Web 作业始终开启

Azure Web Job always on

我创建了网络作业并进行了部署。在设置中,我选择了 网络作业 运行 模式 -> 运行 连续 。在 运行 我的 webjob 之后,我在切换输出控制台中捕获了下一条消息:

[07/10/2015 16:29:48 > ef6a38: SYS INFO] Status changed to Starting [07/10/2015 16:29:48 > ef6a38: SYS WARN] 'Always On' doesn't appear to be enabled for this Web App. To ensure your continuous job doesn't stop running when the SCM host is idle for too long, consider enabling 'Always On' in the configuration settings for your Web App. Note: 'Always On' is available only in Basic, Standard and Premium modes. [07/10/2015 16:29:52 > ef6a38: SYS INFO] Run script 'OptimalyaServer.Migrations.exe' with script host - 'WindowsScriptHost' [07/10/2015 16:29:52 > ef6a38: SYS INFO] Status changed to Running [07/10/2015 16:56:13 > ef6a38: SYS INFO] WebJob is stopping due to website shutting down [07/10/2015 16:56:13 > ef6a38: SYS INFO] Status changed to Stopping [07/10/2015 16:56:18 > ef6a38: ERR ] Thread was being aborted.

我不知道为什么会这样,也不知道如何解决。我希望我的网络工作无需重启和关机即可完成。 请帮我解决这个问题。 谢谢

Azure Web 应用程序在一段时间不活动后进入休眠状态。这对于没有常规流量的站点很有用。这是新网络应用程序的默认设置。这就是为什么用户对处于休眠状态的 Web 应用程序发出的第一个请求可能需要几秒钟的时间,因为 Azure 必须 "wake up" Web 应用程序。

由于您的 Webjob 一直设置为 运行,这意味着 Web 应用程序永远不应进入休眠状态。网络作业毕竟是网络应用程序的一部分。因此,您需要将您的网络应用配置为保持 "always on"。它只是当前管理门户中 Web 应用程序配置选项卡的常规切换中的一个简单切换(位于 Web 套接字开关下方)。在新的预览门户中,单击“设置”选项卡,然后单击“应用程序设置”以找到相同的开关。

您可以在 https://azure.microsoft.com/en-us/documentation/articles/web-sites-configure/.

获取有关 Web 应用程序配置选项的更多详细信息