我想在IIS中託管一個WCF Web服務。該服務應始終保持一定數量的數據,絕不能丟失。IIS服務在一段時間後是否關閉?
我的同事告訴我這是不可能的,因爲IIS在一段時間後關閉服務(我假定沒有任何活動)。真的嗎?我如何防止這種行爲?
萬一它很重要,IIS 6和7都可用。
我想在IIS中託管一個WCF Web服務。該服務應始終保持一定數量的數據,絕不能丟失。IIS服務在一段時間後是否關閉?
我的同事告訴我這是不可能的,因爲IIS在一段時間後關閉服務(我假定沒有任何活動)。真的嗎?我如何防止這種行爲?
萬一它很重要,IIS 6和7都可用。
默認情況下,IIS在一段時間不活動後回收工作進程(如果我記得正確,則爲20分鐘)。這會導致您的數據丟失。
您可以在運行應用程序的ApplicationPool的Properties頁面中關閉此行爲。
編輯:話說如果是真的重要的是這個數據永遠不會丟失,我會考慮將它存儲在數據庫或其他形式的存儲。
我的同事告訴我,這是 不可能的,因爲IIS關機一定時間後 服務(我假設 沒有任何活動)。真的嗎? 如何防止該行爲?
這是真的,但您可以通過使用進程外狀態服務器來避開它。 這裏是描述會話狀態三個環節以及如何設置它在IIS:
雖然我同意,經常你不要自動關機想的過程中,請考慮使用一種設計,在這種設計中,您可以刪除「絕對不能丟失」,因爲「如果它丟失是一種煩惱」。 IIS進程確實失敗,服務器需要維護,而依賴於進程全天候運行的設計似乎很危險。 – CodingInsomnia 2010-05-05 13:46:24