【发布时间】:2010-11-27 14:21:08
【问题描述】:
我正在构建一个可以正常运行几个小时的网站,但随后 *.asmx 和 *.ashx 调用开始超时。
例外情况是:“超时已过期。在从池中获取连接之前已经过了超时时间。这可能是因为所有池连接都在使用中,并且已达到最大池大小。”
我使用 SubSonic 作为 ORM。
我怀疑问题是基于每隔几分钟运行一次并命中数据库的计划任务。当我查看 SQL Server 2000 的“当前活动”时,我看到有:
- 100 个处于“睡眠”状态的进程
- 100 把锁
这100个进程来自应用程序“.Net SqlClient Data Provider”,命令为“AWAITING COMMAND”。
所以我猜这就是问题所在。 .但我该如何解决呢?这听起来像是数据库中的死锁情况吗?只要我
c:\> iisrestart
,一切都很好(一段时间)。
谢谢 - 我从来没有遇到过这样的事情,也不确定最好的方法。
迈克尔
【问题讨论】:
标签: c# .net sql-server subsonic timeout