数据库访问次数过多, 导致监听接口连接不上了。1.  环境:Linux 服务器, oracle 数据库, 库里有一张表 A。 多个客户端,每个客户端一个进程。2.  每个客户端的进程中都有4 个线程 并发访问表A,若有5个客户端的话,就有20个线程并发访问了, 使用OTL连接。3.  每个进程内的线程有锁控制,但5个进程没法用锁控制。4.  采用上面的方式访问表A。最初十几个小时都运行正常, 但超过60小时后,数据库所在的服务器监听接口就连不上了。估计60个小时的访问次数大概是30-40万次吧。 每次访问都先连接,然后很快的操作后就断开连接。5. 各位大神,这个问题产生的原因会是什么呢? 是访问次数过多吗? 还是数据库本身有问题呢? 有什么好的解决方案么 。。 急救啊

解决方案 »

  1.   

    服务器是什么配置的?还有oracle 版本,操作系统版本  
    对于oracle 10.2.4一下的如果安装在window 32位机上的话,会有内存限制的。  如果达到了1.7g,那就会出问题了。 方法是 限制sga。  但是这样是牺牲效率的做法。
      

  2.   

    首先确认客户端和数据库的连接是采用什么连接方式?DEDICATE?SHARED?
    C/S结构的?B/S结构的?没有采用连接池?
    查看ORACLE SESSION的设置参数IDEL_TIME多少,连接时间多久断开?OLTP事务性系统?查看数据库SESSIOn数目,查看日志是否有错误或者警告信息?