如何调查ASP.net应用程序上的SQL Server超时错误?

如何调查ASP.net应用程序上的SQL Server超时错误?,asp.net,sql-server,sql-server-2008,connection-timeout,Asp.net,Sql Server,Sql Server 2008,Connection Timeout,我们在NopCommerce-ASP.net MVC3 web应用程序上面临严重超时错误 当我们结束sql过程时,这个错误会持续一段时间。在结束时,它开始正常工作一段时间,然后再次开始发生 这仅仅发生在最近几天,在此之前,它运行良好。请注意,其代码中没有进行重大更新 我们不知道问题可能是什么,以及如何调查和解决它?这是与连接池相关的问题还是什么 以下是stacktrace: 超时已过期。操作完成前已过超时时间,或者服务器没有响应。 描述:执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了

我们在NopCommerce-ASP.net MVC3 web应用程序上面临严重超时错误

当我们结束sql过程时,这个错误会持续一段时间。在结束时,它开始正常工作一段时间,然后再次开始发生

这仅仅发生在最近几天,在此之前,它运行良好。请注意,其代码中没有进行重大更新

我们不知道问题可能是什么,以及如何调查和解决它?这是与连接池相关的问题还是什么

以下是stacktrace:

超时已过期。操作完成前已过超时时间,或者服务器没有响应。 描述:执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息以及错误在代码中的起源

异常详细信息:System.Data.SqlClient.SqlException:超时已过期。操作完成前已过超时时间,或者服务器没有响应

源错误:

在执行当前web请求期间生成了未经处理的异常。有关异常的起源和位置的信息可以使用下面的异常堆栈跟踪来识别

堆栈跟踪:

[SqlException(0x80131904):超时已过期。操作完成前已过超时时间,或者服务器未响应。] System.Data.SqlClient.SqlConnection.OnError(SqlException异常,布尔breakConnection)+296 System.Data.SqlClient.TdsParser.throweexception和warning()+415 System.Data.SqlClient.TdsParser.Run(RunBehavior RunBehavior,SqlCommand cmdHandler,SqlDataReader dataStream,BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj)+2657 System.Data.SqlClient.SqlDataReader.ConsumerMetadata()+88 System.Data.SqlClient.SqlDataReader.get_MetaData()+114 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds、RunBehavior、String ResetOptions String)+505 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior,RunBehavior RunBehavior,Boolean returnStream,Boolean async)+1896 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior、RunBehavior RunBehavior、Boolean returnStream、String方法、DbAsyncResult结果)+480 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior,RunBehavior RunBehavior,Boolean returnStream,String方法)+28 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior,String方法)+854 System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior)+22 System.Data.Mapping.Update.Internal.DynamicUpdateCommand.Execute(UpdateTranslator转换器、EntityConnection连接、Dictionary
2标识值、List
1生成值)+269 System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager,IENTITY适配器)+528


@Dharmik Bhandari,可能有几个问题。试试下面的方法

  • 增加池大小
  • 设置CommandTimeOut=0(无限)
  • 设置ConnectionTimeOut=0(无限)
  • 数据库功能完成后,立即释放连接资源