2014-08-28 100 views
8

我們在Azure上使用免費BizSpark訂閱,並將我們的應用程序作爲Azure網站託管。我們定期爲意外的站點關閉而鬥爭,因爲它有很多後臺進程運行,所以我們的應用程序非常痛苦。Azure網站上的「始終開啓」設置的含義

「始終開啓」設置可以解決此問題,但不幸的是,它無法在當前訂閱中使用。

正如你可能知道IIS有兩種設置基於回收已上: - 週期重啓超時

  1. 默認情況下,每個應用程序每1740 分鐘(29小時)終止。
  2. 此外,應用程序可以回收,如果它未使用 20分鐘 - 空閒超時

我想知道,如果我們打開「始終在」的設置,我們可以肯定的是它幫助我們同時防止應用回收上述類型

順便說一句,我發現這個問題: Will "Always On" setting prevent BOTH idleTimeout and periodicRestart?具有類似的主題。它說這個設置應該有所幫助。

但我想確定它是真的。因爲在我們的例子中,實時後臺進程的中斷是絕對不可接受的。

欣賞任何答案。

+0

你不應該問微軟這個問題嗎? – john 2014-08-28 09:48:53

+0

@john,免費BizSpark訂閱我無法向技術支持人員諮詢技術問題。我只能請求結算問題:) – 2014-08-28 09:57:44

回答

7

當您打開「Always On」時,兩者都會被阻止。您鏈接到的問題的答案(Will "Always On" setting prevent BOTH idleTimeout and periodicRestart?)包含完整的詳細信息。如果您有多個運行「永遠在線」的實例,也將確保所有這些實例保持運行。

對於長時間運行的進程,如果可以的話,我強烈推薦使用Azure Web Jobs。 Azure Webjobs SDK將使您的開發生活變得更加輕鬆,併爲您提供免費的大量良好監控。請查看Scott Hanselman在這裏的教程:http://www.hanselman.com/blog/IntroducingWindowsAzureWebJobs.aspx

僅供參考,Webjobs在您的網站上下文中運行,因此如果您的網站被回收(如果Always On被禁用),那麼您的Webjob也將停止運行。啓用「永遠在線」將保持您的網絡工作和您的網站。

2

Microsoft Azure How to configure websites

始終打開 - 默認情況下,網站被卸載,如果他們已經閒置了一段時間。這使系統節約資源。如果站點需要始終加載,則可以在標準模式下爲站點啓用始終開啓設置。由於連續網絡作業可能無法可靠地運行,如果始終打開處於禁用狀態,則應在網站上運行連續的網絡作業時啓用始終打開。

如果您有需要不斷運行的事情,您可以查看Azure Webjobs或Worker Roles,它們將更可靠,而不是IIS線程。

+0

您不限於連續運行任務的Web作業或工作人員角色。您還可以使用Web角色和虛擬機。 – 2014-08-28 10:30:21

+0

@AlexC,我已經完成了使用Quartz Scheduller的應用程序。問題:我可以肯定,「永遠在線」以防止回收和定期重啓? – 2014-08-28 10:31:20

+0

@DavidMakogon,我可以看到你是Windows Azure Cloud Architect。可能是你知道的:我可以肯定,打開「Always on」設置以防止回收和定期重新啓動超時? – 2014-08-28 10:33:06