2011-05-04 83 views
7

如何防止IIS卸載ASP.Net站點?防止IIS卸載ASP.Net站點

我有什麼可能是世界上最愚蠢的網站 - 每小時一次它醒來,並寫入時間戳記到一個日誌文件。當應用程序啓動時,它會在日誌中以時間戳記的形式表示,當它死亡時,也是如此。

在IIS中,我進入了其應用程序池並將空閒超時設置爲0,並將生成回收事件日誌條目>常規時間間隔設置爲False。

然而,該網站仍然每天卸載一次 - 我在App日誌中獲得App Unloading ...條目,並且直到我下次訪問它爲止。

如何防止卸載?

(顯然,這個網站會做更多的,一旦我得到這個解決 - 現在是儘可能簡單隔離問題)

+3

也許你應該使用Windows服務,或爲此計劃的任務,而不是一個網站。 – Oded 2011-05-04 20:16:43

+0

是的,這是一個定期運行的任務,是一個更大的網站的一部分(一旦解決了這個問題)。把它分解成一個windows服務涉及到大量的安裝廢話,我不想處理擴展問題,還有更多需要處理共享內存的問題。我只想要一個不會一次又一次卸載的站點。 – 2011-05-04 20:50:43

回答

14

應用程序池,導致它每N分鐘被自動回收的另一個屬性(默認爲1740,或每29小時)。使此零爲禁用回收。該屬性(在IIS7上)在「回收」標題下,稱爲「常規時間間隔(分鐘)」

+0

聽起來沒錯。如果它能存活30個小時,我會放棄它並接受答案! – 2011-05-04 20:51:34

+0

嘗試此操作並讓我的手指交叉。 – Speck 2017-11-10 16:46:20

0

除了@ jlew的建議,如果您正在運行後臺任務/定時器連續/定期在ASP.Net沒有Windows服務的安裝/配置/維護負擔和計劃任務:

http://haacked.com/archive/2011/10/16/the-dangers-of-implementing-recurring-background-tasks-in-asp-net.aspx

它包括有用的幫手,圖書館,WebBackgrounder,其抽象的文章中的建議處理正常關機和一些後臺任務的典型需求。

它沒有爲您配置IIS - 您需要自己修改回收設置。