iteye_13196 2014-08-12 15:03
浏览 265
已采纳

系统不稳定,有的时候就直接挂了,看看是不是数据库连接池配置出了问题?

     <initialSize value="1"></initialSize>
     <!-- 最大空闲连接 -->
     <maxIdle value="200"></maxIdle>
     <!-- 最小空闲连接 -->
     <minIdle value="1"></minIdle>
     <!-- 最大连接数量 -->
     <maxActive value="500"></maxActive>
     <!-- 是否在自动回收超时连接的时候打印连接的超时错误 -->
     <logAbandoned value="true"></logAbandoned>
     <!-- 是否自动回收超时连接 -->
     <removeAbandoned value="false"></removeAbandoned>
     <!-- 超时时间(以秒数为单位) -->
     <removeAbandonedTimeout value="65"></removeAbandonedTimeout>
     <!--空闲时是否进行验证,检查对象是否有效,默认为false  -->
     <testWhileIdle value="true"></testWhileIdle>
     <!--则每timeBetweenEvictionRunsMillis毫秒检查一次连接池中空闲的连接,
 把空闲时间超过minEvictableIdleTimeMillis毫秒的连接断开,直到连接池中的连接数到minIdle为止.  -->
     <timeBetweenEvictionRunsMillis value="10000"></timeBetweenEvictionRunsMillis>
     <!--在每次空闲连接回收器线程(如果有)运行时检查的连接数量  -->
     <numTestsPerEvictionRun value="10"></numTestsPerEvictionRun>
     <type value="1"></type>
     <defaultAutoCommit value="true"></defaultAutoCommit>
     <defaultReadOnly value="false"></defaultReadOnly>
     <defaultTransactionIsolation value="READ_COMMITTED"></defaultTransactionIsolation>
     <!-- 超时等待时间以毫秒为单位 6000毫秒/1000等于60秒 -->
     <maxWait value="10000"></maxWait>

请各位高手给出宝贵意见,系统已经上线,有的时候出这种问题,重启tomcat又能维持一段时间,有时候短时间内也会出现此类问题。

  • 写回答

3条回答 默认 最新

  • zuoshang 2014-08-13 02:20
    关注

    没有配validation query, 空闲检查没有生效

    maxidle和maxactive之差不宜过大

    Time between eviction run mills 太短了,才10秒间隔,起码上个小时级别

    系统挂了可能是数据库端把连接断了,所以连接池里还残留了老的坏了的连接。再加上validation sql没配,检查连接机制没有起作用。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 求高通平台Softsim调试经验
  • ¥15 canal如何实现将mysql多张表(月表)采集入库到目标表中(一张表)?
  • ¥15 wpf ScrollViewer实现冻结左侧宽度w范围内的视图
  • ¥15 栅极驱动低侧烧毁MOSFET
  • ¥30 写segy数据时出错3
  • ¥100 linux下qt运行QCefView demo报错
  • ¥50 F1C100S下的红外解码IR_RX驱动问题
  • ¥20 基于matlab的航迹融合 航迹关联 航迹插补
  • ¥15 用Matlab实现图中的光线追迹
  • ¥15 联想笔记本开机出现系统更新界面