Asp.Net各種超時(shí)問(wèn)題總結(jié)
更新時(shí)間:2013年02月19日 12:00:54 作者:
在數(shù)據(jù)庫(kù)或者請(qǐng)求操作時(shí),如果選擇的時(shí)間段過(guò)短或操作數(shù)據(jù)量過(guò)大,就會(huì)遇到"請(qǐng)求超時(shí)"的的問(wèn)題,網(wǎng)絡(luò)上提供很多解決方案,但普遍不完善,根據(jù)個(gè)人經(jīng)驗(yàn)及參考網(wǎng)絡(luò)解決方案,先將其匯總
在數(shù)據(jù)庫(kù)或者請(qǐng)求操作時(shí),如果選擇的時(shí)間段過(guò)短或操作數(shù)據(jù)量過(guò)大,就會(huì)遇到"請(qǐng)求超時(shí)"的的問(wèn)題,網(wǎng)絡(luò)上提供很多解決方案,但普遍不完善,根據(jù)個(gè)人經(jīng)驗(yàn)及參考網(wǎng)絡(luò)解決方案,先將其匯總?cè)缦拢?br>
根據(jù)錯(cuò)誤類型,大致分為如下幾種情況
1:Asp.net請(qǐng)求超時(shí)
2:IIS請(qǐng)求超時(shí)
3:數(shù)據(jù)庫(kù)連接超時(shí)
4: 數(shù)據(jù)庫(kù)操作超時(shí)
5:應(yīng)用程序池回收(低)
6:Webservice等服務(wù)請(qǐng)求超時(shí)
下面根據(jù)上述情況一一作出處理
1:Asp.net請(qǐng)求超時(shí)
http請(qǐng)求超時(shí)可以在webconfig中進(jìn)行全局配置,(單位為秒,默認(rèn)為90秒)如下
<system.web>
<httpRuntime maxRequestLength="102400" executionTimeout="180" />
system.web>
2:IIS請(qǐng)求超時(shí)
直接去IIS進(jìn)行設(shè)置:IIS-網(wǎng)站-屬性 設(shè)置一個(gè)較大的值,但是不能太大,具體情況具體分析。
3:數(shù)據(jù)庫(kù)連接超時(shí)
在配置數(shù)據(jù)庫(kù)連接字符串的時(shí)候一起配置
<connectionStrings>
<add name="MarketingMate" connectionString="Data Source=192.168.1.1; Database=MarketingMate; User Id=sa; Password=123; Connect Timeout=30;Min Pool Size=16;Max Pool Size=100;"
providerName="System.Data.SqlClient"/>
connectionStrings>
4. 數(shù)據(jù)庫(kù)操作超時(shí)
數(shù)據(jù)庫(kù)操作超時(shí)目前還沒(méi)有全局設(shè)置方法,只能設(shè)置Command類的CommandTimeOut屬性(單位為秒,默認(rèn)為30秒)
context.CommandTimeout = 180;
5:應(yīng)用程序池回收(底)這種出現(xiàn)的情況很低,請(qǐng)酌情設(shè)置
應(yīng)用程序池會(huì)在一定的時(shí)間內(nèi)回收線程,直接設(shè)置即可:應(yīng)用程序池--屬性--回收工作進(jìn)程
6:Webservice等服務(wù)請(qǐng)求超時(shí) (這種是參考網(wǎng)上提供的解決方法,本人沒(méi)遇到過(guò))
擴(kuò)大代理類的超時(shí)限制,默認(rèn)是90秒 ,即在調(diào)用方法前指定超時(shí)時(shí)間。
[csharp]YourWebService yws = new YourWebService(); yws.Timeout = 1200000; //20分鐘,單位是毫秒[/csharp]
如果將 Timeout 屬性設(shè)置為 Timeout.Infinite,則指示該請(qǐng)求無(wú)超時(shí)。即使 XML Web services 客戶端可以將 Timeout 屬性設(shè)置為無(wú)超時(shí),Web 服務(wù)器仍可以在服務(wù)器端使請(qǐng)求超時(shí)。
您可能感興趣的文章:
- 設(shè)置ASP.NET頁(yè)面的運(yùn)行超時(shí)時(shí)間詳細(xì)到單個(gè)頁(yè)面及站點(diǎn)
- 登錄超時(shí)給出提示跳到登錄頁(yè)面(ajax、導(dǎo)入、導(dǎo)出)
- php設(shè)置頁(yè)面超時(shí)時(shí)間解決方法
- JS實(shí)現(xiàn)頁(yè)面超時(shí)后自動(dòng)跳轉(zhuǎn)到登陸頁(yè)面
- php頁(yè)面函數(shù)設(shè)置超時(shí)限制的方法
- ajax提交session超時(shí)跳轉(zhuǎn)頁(yè)面使用全局的方法來(lái)處理
- .net讓線程支持超時(shí)的方法實(shí)例和線程在執(zhí)行結(jié)束后銷毀的方法
- Asp中Server.ScriptTimeOut屬性需要注意的一點(diǎn)分析
- 超過(guò)了腳本運(yùn)行的最長(zhǎng)時(shí)間..Server.ScriptTimeOut 屬性指定新值
- ASP.NET頁(yè)面請(qǐng)求超時(shí)時(shí)間設(shè)置多種方法
相關(guān)文章
詳解如何在ASP.NET Core中使用IHttpClientFactory
這篇文章主要介紹了詳解如何在ASP.NET Core中使用IHttpClientFactory,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
詳解將ASP.NET Core應(yīng)用程序部署至生產(chǎn)環(huán)境中(CentOS7)
這篇文章主要介紹了詳解將ASP.NET Core應(yīng)用程序部署至生產(chǎn)環(huán)境中(CentOS7),具有一定的參考價(jià)值,有需要的可以了解一下。2016-12-12
asp.net core2.2多用戶驗(yàn)證與授權(quán)示例詳解
這篇文章主要給大家介紹了關(guān)于asp.net core2.2多用戶驗(yàn)證與授權(quán)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01
.Net Core和jexus配置HTTPS服務(wù)方法
下面小編就為大家分享一篇.Net Core和jexus配置HTTPS服務(wù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-02-02

