【发布时间】:2011-04-23 21:30:18
【问题描述】:
我的网站一直存在问题,W3wp.exe 似乎崩溃了,而任何尝试连接到该网站的人都会收到 SQL 服务器超时错误。
错误是这样的……
System.Data.SqlClient.SqlException:超时已过期。在操作完成之前超时时间已过或服务器没有响应。
实际发生的情况是,当这种情况发生时,服务器上的 CPU 使用率最高达到 100% 并保持在那里。在此期间,如果我尝试连接到主页,则该站点似乎正在加载,然后超时。当我尝试通过管理工作室连接到数据库时也是这种情况。 当它通过电子邮件向我发送异常时,我从 ELMAH 收到上述 SQL 超时错误。当我执行 iisreset 时,我可以再次连接到 SQL 服务器,并且 CPU 使用率立即下降。
现在我已经在这里发布了一些关于 SQL 超时异常的问题。所以生病列出我做了什么以及我正在使用什么......
• 我正在使用 Linq to SQL。 • SQLCacheDependancy。 • IIS 7.5 和 SQL Server 2008 R2。 • 处置所有物品。 • 对 Linq to SQL dataContext 的调用始终包含在 USING 关键字中。
这些超时错误很少发生,可能每 2 天发生一次,但是今天当我起床时,我的收件箱中充满了超时异常,表明一夜之间发生了。
另一件奇怪的事情是,例如昨晚发生的事情,大约是凌晨 4 点,当我今天早上 8 点尝试时,网站运行良好,所以我似乎加班 W3wp.exe、SQL 服务器或两者都管理回收或重置自己。
谁能看到可能导致这种行为的原因?或者指出我可能是什么原因的正确方向?甚至可能的解决方案?
非常感谢任何帮助
真吉利
【问题讨论】:
-
您的 SQL 实例是否在同一台机器上?您是否检查过 SQL 块 - 您是否收到来自 sql 实例的通知?
-
你能粘贴更多关于你的 sql 缓存依赖的细节吗?
-
还有多少用户通过投入获得?每秒有多少查询访问数据库?
-
超时时间是否每晚同时发生?它们是在sql server 还是iss server 上运行的备份服务或杀毒软件?
-
您找到解决问题的方法了吗?
标签: asp.net timeout deadlock w3wp.exe