2011-04-13 288 views
0

我的方法执行大量的异步SQL请求,我经常会遇到连接超时异常。除了增加连接超时值和正确的索引之外,还能做些什么?我的意思是数据库部分,而不是代码部分。无法更改代码部分。此外,应用程序在不同的服务器上运行良好,但只有我在我的电脑和本地MS SQL Server 2008 R2数据库(它也位于同一台PC上)上遇到超时异常。所以我认为这显然是性能问题,因为连接超时已经设置为3分钟。也许我可以在服务器上改变一些东西?也许有一些simultanious请求约束?我的每个请求都需要3分钟的时间,但其中大约有26000个请求异步运行,只有我本地PC和本地数据库遇到这些问题。 我已经运行了进程监视器,并且看到当我的代码启动时,SQL Server最终消耗了200 MB的RAM,并占用了大约一半的CPU处理时间。但是我仍然有1 GB的RAM空间,所以这不是内存问题。连接超时

+0

您是否遇到连接超时或命令超时?您可能会打开太多与SQL Server的连接? – 2011-04-13 13:59:22

+0

@Chris Diver我遇到连接超时。是的,我打开了太多的连接,但我无法改变这一点。 – 2011-04-13 14:37:52

+0

更新:我有一个命令超时设置,而不是连接超时。我会尝试设置连接超时。 – 2011-04-13 16:42:33

回答

0

我认为连接的数量可能是原因。确保正确关闭连接或尝试减少连接数量。您也可以使用管道,这将克服常规连接的限制。