2009-06-06 47 views
3

「固定次數請求」之後,IIS的應用程序池設置對回收再利用有什麼影響?「固定請求次數」之後的應用程序池回收

假設這個數字是100,並且第99個人連接到我的網站,那麼第100個人來了,並且將觸發應用程序池回收。

這是否意味着會話1-99的所有會話信息都將丟失(當應用程序池工作進程重新啓動時,進程內會話將過期)?

回答

4

你基本上是對的,但它不是人,而是要求。在您的應用程序上調用的每個aspx頁面都會添加,達到閾值時,應用程序池將被回收,應用程序域(如果使用.Net)被卸載並且所有內容都會重新啓動。你會失去Session,Application和靜態變量。如果您使用經典的asp或php,則每個會話和全局變量都會丟失。

一些命中閾值有點矯枉過正。您應該禁用它或將其設置爲一個巨大的數字。默認情況下,如果我記得很清楚,如果沒有請求,IIS6應用程序池將每隔15分鐘回收一次,並且您還可以在應用程序使用的總內存閾值上觸發回收。

+0

還有一個問題,我們也可以在特定的時間設置IIS工作進程回收,這是否意味着(1)在特定的時間IIS將回收或者它意味着(2)在特定時間如果沒有用戶訪問IIS(沒有活動連接),工作進程會回收? – George2 2009-06-06 09:00:29

3

這是非常正確的。如果您沒有使用某種會話場或會話信息的數據庫支持,那麼在應用程序池回收時它將會丟失。我會建議儘量不要求任何會話信息 - 這將使您的應用程序更具可擴展性和可靠性,因爲它更貼近底層HTTP的無狀態特性。

+1

還有一個問題,我們也可以在特定的時間設置IIS工作進程的回收,這是否意味着(1)在特定的時間IIS將回收或它的意思是(2)在特定時間如果沒有用戶訪問IIS(無活動連接),工人進程將回收? – George2 2009-06-06 09:01:22