2016-03-14 74 views
2

我有一個Web應用程序託管在IIS下。它是一個數據倉庫,在其啓動過程中,它需要在內存中實例化一大組項目(大概需要大約20分鐘才能完成設置)。由於本網站對我們公司至關重要,因此該系統必須在白天在線100%,並且只能在下班時間重新啓動。如何防止IIS在不使用時關閉網站?

由於某種原因,當一段時間沒有使用時,這個Web應用程序似乎是「脫機」的。我知道這是因爲訪問網站時緩存沒有完全實例化。這是無法接受的。

我不清楚爲什麼網站被關閉。應用程序池僅在每天凌晨4點設置爲回收(現在是上午11點)。

是否有其他設置,我不知道在IIS部分導致它自動關閉網站?

Addl注意:在Visual Studio中運行IISExpress時,網站不會自動關閉。只有在IIS上託管的生產版本關閉。

下面是網站正在運行的應用程序池的高級設置屏幕。 (不知道它是非常有用的。)

Application Pool Settings

我在IIS 7.5,Server 2008 R2中。它是一個ASP.NET 5 Web應用程序。

回答

8

檢查屏幕截圖中流程模型下的空閒超時設置。該設置會導致應用程序池在閒置20分鐘後關閉。您可以將其設置爲0,以使其即使在空閒狀態(即不處理任何請求)時也能始終保持運行。 enter image description here

注意:保持應用程序池始終運行將消耗服務器的寶貴內存。如果應用程序泄漏內存,它可能變得非常重要。

+0

謝謝,這解決了我的問題。至於內存消耗..在我的情況下是沒問題的。這是一個重要的內部Web應用程序,它有自己的專用服務器。最重要的方面是保持在線狀態,以便用戶在工作時間的任何時候都可以快速訪問數據。 – painiyff