六合开奖结果现场直播欢迎诸位!收藏本站注 册登 陆
常用三肖中特马:基础知识网络知识操作系统WPS网页制作数据库算法网页成功之路网络安全最新技术古典mid流行midmid背景下载中心
您现在的位置:首页 > 三肖中特马 > 文章页

数据库连接超时、连接达到最大池大小的主观原因

Admin | 2009-12-2 11:46:44 | ReadNums | 19119 | 标签 asp.net | 打印本页
     

  关于网站代码调用数据库,不论是读取数据还是插入甚至是更新数据库,都有可能遇到连接池到最大池情况。

  提示信息如下:

  System.Web.HttpUnhandledException: 引发类型为“System.Web.HttpUnhandledException”的异常。 ---> System.InvalidOperationException: 超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。

  一、客观原因

  出现以上的问题,原因一般如下:

  ①数据库支持的最大连接数太小;

  ②程序代码未及时关闭数据库的连接;

  ③数据库本身就有问题;

  出现以上问题,说明都是客观原因造成的,请大家参与本站的相关文章。

  二、主观原因

  有了以上的客观原因,我们也不能排除主观原因,即程序代码的问题。

  本人经过实践得以证明,客观上的确存在原因,但是,自己编写的代码,的确也与此问题脱不了关系。

  本如总结出两个导致发生此问题的主观原因,请大家借鉴。

  ①在Global.asax文件中操作数据库

  俺曾经在Global.asax文件中的Session_Start中对数据库进取读取,经过观察,频繁发生此类问题。解决的问题就是不要在Global.asax中使用代码对数据库进行操作。

  ②在MTop.ascx的CS文件中操作数据库

  俺曾经在MTop.ascx此文件的CS中对数据库进行读写操作,经过观察,频繁发生此类问题。解决的方法当然就是:尽量或干脆不要在MTop.ascx文件中对数据库进行操作。

  目前,俺经过实践,就发现这两个主观上的问题;本来程序代码对数据库的操作还是正常的,但是由于代码位置的使用不当,也会造成连接超时的问题的发生。


问题未解决:在线咨询我要在线咨询问题

笑码期期准免费大公开

(访客)
内容实用原创,讲得很好。
20xx年x月x日
(站长)
有问题请在线咨询。
20xx年x月x日