文章編號: 319947 - 上次校閱: 2007年5月13日 - 版次: 3.5 注意: 多個 ASP.NET 應用程式重新啟動發生每隔一到五分鐘
徵狀當許多新的.aspx、.ascx 或.asmx 檔案會傳播到伺服器時,伺服器可能會回報某些時間之後的後續的應用程式重新啟動。這個問題可能會顯示在數個不同的方式:
發生的原因預設情況下,更新在 ASP.NET 中,少於 15 檔案時檔案會編譯並載入已編譯的檔案的舊版本的記憶體。這是.NET 公用語言執行時間名為-並存執行的功能。 不過,舊版編譯的程式碼會保留在記憶體無限期地與-並存執行。如果您不要重新啟動應用程式來清除記憶體從舊的版本,可以更新許多檔案 (例如,30 個以上的檔案),可能會使用太多記憶體。如果要解決這個問題,ASP.NET 會有的功能,在其中應用程式會自動重新啟動之後更新特定數目的檔案。 在重新啟動應該發生更新檔案的整個清單的一次。應用程式] 重新啟動後舊的版本不應該放置在記憶體中。因此,應用程式應該不需要重新啟動以重新編譯新版本的檔案。但是,您許多新.aspx 或.ascx 檔案載入到伺服器 (比方說 61 檔案) 時,就會發生這個問題。重新伺服器卸載應用程式前 15 檔案時編譯 和 每次另一個 15 檔案重新編譯,直到伺服器到達 61。這會導致四個應用程式重新啟動即使只有一個是必要。 解決方案將以避免自動的重新啟動,根據更新的檔案數,numRecompilesBeforeAppRestart 屬性設定 Machine.config 檔中從預設的 15 的數字,為更長的時間將會更新計劃的應用程式重新啟動之間的檔案數目。如果您將 numRecompilesBeforeAppRestart 設定大量您可能要重新啟動應用程式以手動方式來釋放舊版本的組件使用的記憶體。 注意: ASP.NET 如果 ASP.NET 會消耗太多記憶體,會自動重新啟動該應用程式。 如果您正在更新已知的多個檔案,並如果您想要自動,重新啟動應用程式設定 numRecompilesBeforeAppRestart 為一個數字,小於只會更新的檔案數目。這導致少量記憶體中的舊組件的單一應用程式重新啟動。比方說設定 numRecompilesBeforeAppRestart,如下所示: 狀況說明Microsoft 已確認這是在本文開頭所列之 Microsoft 產品中的有錯誤。 其他相關資訊您可能會看到這個行為與內嵌動態伺服器網頁 (ASP) 程式碼裡面可執行的 ASP 程式碼是在.aspx 或.ascx 檔案中。但是,您看不到這種行為當您使用程式碼後置模型來建置 ASP.NET 應用程式。程式碼後置 (Code-Behind] 模型中已編譯的程式碼會為動態連結程式庫 (DLL) 的格式,且置於該應用程式的 Bin 目錄中。這會導致應用程式] 重新啟動,讓您執行不看到本文所述的確切行為。 ?考如需有關 <processmodel> 項目,請參閱 MSDN 文件: http://msdn2.microsoft.com/en-us/library/7w2sway1(vs.71).aspx
(http://msdn2.microsoft.com/en-us/library/7w2sway1(vs.71).aspx)
如需有關 ASP.NET 功能的詳細資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項: 305140?
(http://support.microsoft.com/kb/305140/EN-US/
)
資訊: ASP.NET 藍圖
機器翻譯重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。 按一下這裡查看此文章的英文版本:319947?
(http://support.microsoft.com/kb/319947/en-us/
)
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。 | 其他資源 其他支援網站社群立即取得協助文章翻譯
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


回此頁最上方
