Asp.Net的相關TimeOut設定
前言
Asp.NET上有一些timeout屬性需要設定,整理如下。
實作
Session TimeOut
在Web.config中sessionState的Tag中有個TimeOut的屬性,預設是20分,跟IIS的Session設定是相同的,如果改的話,IIS也要一起改哦!
Script Timeout
可設定Server.ScriptTimeout(預設為60秒),可加大它! 如Server.ScriptTimeOut = 3600
ScriptManager’s AsyncPostBackTimeout
使用ScriptManager也會有Timeout哦! 就是AsyncPostBackTimeout,預設應該是90秒吧! 所以如果放在UpdatePanel中時,Run超過90秒時,就會出現「Sys.WebForms.PageRequestManagerTimeoutException: The server request timed out.」。這時就要把AsyncPostBackTimeout加大,如AsyncPostBackTimeout="3600"。
Database的Timeout
DB的Timeout有Connection的Timeout(預設是15秒,得在終止嘗試並產生錯誤前嘗試建立連接的等待時間),一般是不用改到這個。另外就是Command的Timeout,常需要改的就是這個,如果要Run比較久的話,就要把這個設大一點哦!
MSDTC的Timeout
如果有使用到MSDTC的話,也要注意一下MSDTC的Timeout哦!
Upload File Timeout
有看到別人要Upload file時,要設定httpRuntime中的executionTimeout,及Application Pool的Idle timeout。可參考Prevent Request Timeout in Asp.net。
Hi,
亂馬客Blog已移到了 「亂馬客 : Re:從零開始的軟體開發生活」
請大家繼續支持 ^_^