再发一个druid1.0.9的问题,请温少解答,不胜感激

heyu200709 发布于 2015/02/12 12:42
阅读 810
收藏 0

@wenshao 你好,想跟你请教个问题:

我用druid1.0.9连接mysql5.x库,初始连接了5个,最小连接也设置的5个,最大连接30,不过运行一段时间:连接只剩下了2个了,而且有时候出现更诡异的问题,我获取连接超时时间设置的10秒,有时候 获取连接会阻塞,看起来似乎超时设置没生效,查看了日志,估计是在获取连接前 druid有什么动作给阻塞了,奇怪的是每次出现问题,都会阻塞15分钟(每次都是15分钟) 才恢复,然后连接池中连接close掉,再重新连接

日志如下:

  [xxx] 2015-02-11 20:49:22,668 [tor-LogThread-1] DEBUG Connection   - {conn-10018} pool-recycle
  [xxx] 2015-02-11 20:49:22,675 [eate-2052920142] DEBUG Connection  - {conn-10019} connected
  [xxx] 2015-02-11 23:13:44,549 [io-8080-exec-31] DEBUG Connection    - {conn-10019} closed
  [xxx] 2015-02-11 23:13:44,552 [io-8080-exec-31] DEBUG Connection    - {conn-10018} closed
  [xxx] 2015-02-11 23:13:44,572 [eate-2052920142] DEBUG Connection  - {conn-10020} connected
  [xxx] 2015-02-11 23:13:44,574 [io-8080-exec-31] DEBUG Connection    - {conn-10020} pool-connect
  [xxx] 2015-02-11 23:13:44,577 [io-8080-exec-31] DEBUG Statement     - {conn-10020, pstmt-20035} created

22点58左右 有个数据库操作请求,一直阻塞到23:13分 连接池才开始响应

持久层用的mybatis框架,而且看日志似乎连接检测语句没生效,mysql我也设置了连接检测的啊,不过时间间隔貌似默认的,没参数设置吧。


配置参数如下:

        <property name="initialSize" value="5" />
        <property name="maxActive" value="30" />
        <property name="minIdle" value="5" />
        <property name="maxWait" value="10000" />
        <property name="queryTimeout" value="10}"></property>
        <property name="validationQuery" value="select 1" />
        <property name="testOnBorrow" value="false" />
        <property name="testOnReturn" value="false" />
        <property name="testWhileIdle" value="true" />
        <property name="timeBetweenEvictionRunsMillis" value="120000" />
        <property name="minEvictableIdleTimeMillis" value="120000" />
        <property name="poolPreparedStatements" value="true" />
        <property name="maxPoolPreparedStatementPerConnectionSize" value="20" />
        <property name="maxOpenPreparedStatements" value="100" />
        <property name="removeAbandoned" value="true"></property>
        <property name="removeAbandonedTimeout" value="180"></property>
        <property name="logAbandoned" value="true"></property>
        <property name="proxyFilters">
              <list>
                   <ref bean="stat-filter" />
                   <ref bean="log-filter" />
              </list>
        </property>
        <property name="filters">
              <value>stat,wall,log4j</value>
        </property>


求解答啊,我用来做生产环境的连接池,这样很坑啊。。。

以下是问题补充:

@heyu200709:哥,我书读的少,不胜感激!!!! (2015/02/12 14:20)
加载中
0
tianyuanzhonglu
heyu200709
heyu200709
哥 我书读的少,不胜感激。。
返回顶部
顶部