加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 什么原因“内部连接致命错误”

发布时间:2020-12-15 23:28:43 所属栏目:asp.Net 来源:网络整理
导读:我有一些ASP.Net网站(.Net v3.5)在具有SQL 2000数据库后端的服务器上运行.几个月来,我一直收到看似随机的InvalidOperationExceptions,并显示“Internal connection fatal error”(内部连接致命错误).有时候会有几天之间,而其他时候每天有多个错误. 例外情况
我有一些ASP.Net网站(.Net v3.5)在具有SQL 2000数据库后端的服务器上运行.几个月来,我一直收到看似随机的InvalidOperationExceptions,并显示“Internal connection fatal error”(内部连接致命错误).有时候会有几天之间,而其他时候每天有多个错误.

例外情况不限于一个站点,尽管它们共享业务和数据访问组件.错误似乎总是从SqlClient.TdsParser.Run()抛出.它有时从老派直接SqlCommand.Execute()调用抛出,而其他时候它是从Linq2Sql代码抛出的.

网络人员已经确信,他们的最终没有错误或数据包丢失.有没有人经历过这个?可能是驱动程序问题吗?我们一直无法确定此异常的特定触发器.

我们在Windows Server 2003上运行II6.

解决方法

经过几个月的忽视这个问题,随着流量的逐渐增加,它开始达到临界质量.在很大的负载下,包括一些爬行动物,事情变得疯狂,这些错误不停地涌入.

通过尝试和错误,我们最终在使用后立即关闭了SqlCommand或LINQ查询,SqlConnection没有立即关闭.相反,通过源自对LINQ连接的误解的一些粗暴的编程,DataContext对象只在请求结束而不是立即被处理(并且关闭).

一旦我们重构了这些方法,立即用C#“使用”块关闭连接(释放下一个请求的池),我们没有收到更多的错误.虽然我们仍然不知道连接池会如此混乱的根本原因,但我们能够停止此类型的所有错误.这个问题与我发布的另一个类似的错误一起解决了,在这里找到:Why is my SqlCommand returning a string when it should be an int?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读