asp.net + oracle 数据库session 太多的问题
人生海海 2007-09-04 06:24:08 公司一项目,采用的是asp.net(c#,.net frameword2.0) + oracle9i 开发.以前,网站的访问量不大的时候,能够勉强撑住,近段时间,访问量猛涨,当同时在线人数一增长的时候,oracle数据库的session就超多,最高的时候超过450个,这是极其不正常的,现在将故障现象描述如下,希望能得高手相助.
(1)所有的打开数据库操作,即有相应的关闭操作,所以,大家不要再怀疑是open了数据库连接,却没有close.
(2)启用了连接池.我设置连接池的max pool size为300
(3)oracle数据库的会话,最高的时候,450个,只有几个是ACTIVE状态的.其它的,均为INACTIVE状态.有些session已经是INACTIVE状态,而且是几天前的(logon_time为几天前的日期)
针对以上问题,我提出以下几个疑问:
(1)为什么oracle数据库会久久不能释放已经无效的session
(2)为什么连接池中,我设置的是300,而oracle中会话数是超过300,是不是连接池,和oracle的会话不存在关联?
(3)这个问题,基本上,用asp.net +oracle 开发的稍大型点的项目,都会碰到,那到底是数据库问题,还是微软的.net oracleclient.dll组件的问题(我的项目中,用的是oracleclient组件)
(4)网络上流传这个已经已经很久,为什么都没有人能解决,没有高手能解决吗?
微软关于此漏洞的解释是:
http://support.microsoft.com/?scid=kb;zh-cn;330126&spid=548&sid=global