4

我们在 NopCommerce - ASP.net MVC3 Web 应用程序上面临服务器超时错误。

当我们结束 sql 进程时,错误只会重新出现。结束时,它开始正常工作一段时间,然后又开始发生。

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

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

这是堆栈跟踪:

超时已过。在操作完成之前超时时间已过或服务器没有响应。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

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

源错误:

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

堆栈跟踪:

[SqlException (0x80131904): 超时。操作完成前超时时间已过或服务器无响应。] System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +296 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() +415 System .Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2657 System.Data.SqlClient.SqlDataReader.ConsumeMetaData() +88 System.Data.SqlClient.SqlDataReader.get_MetaData() +114 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds,RunBehavior runBehavior,字符串 resetOptionsString)+505 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior,2 identifierValues, List1 generateValues) +269 System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager, IEntityAdapter 适配器) +528

4

1 回答 1

3

@Dharmik Bhandari,可能有几个问题。尝试以下操作

  • 增加池大小
  • 设置 CommandTimeOut = 0(无限)
  • 设置 ConnectionTimeOut = 0(无限)
  • 数据库功能结束后立即释放连接资源
于 2012-05-03T08:44:18.223 回答