历史版本22 :数据连接高级设置 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

1. 问题描述编辑

FR连接池属性,使用的是DBCP连接池,下面介绍其设置方法及其属性中各参数的意义;如果访问模板时,报连接超时、等待状态,警告如下:
警告:Cannot get a connection, pool error Timeout waiting for idle object at com.fr.third.org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:114) at com.fr.third.org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) at com.fr.data.pool.MemoryConnection.create(Unknown Source) at com.fr.data.impl.JDBCDatabaseConnection.createConnection(Unknown Source)
则需要把相应连接数调大。

2. 设置方法编辑

点击服务器>定义数据连接,如下图所示,点击连接池属性,弹出连接池属性编辑框,调整最大活动连接数
222

3. 参数说明编辑

名称  举例  含义  
初始化连接数initialSize="1"初始化线程数,开始自动建立一个与数据库的连接
最大活动连接数maxActive="200"可以从对象池中取出的对象最大个数,为0表示没有限制
最大空闲连接数maxIdle="100"最大等待连接中的数量,设为负数则没有限制(对象池中对象最大个数)
最小空闲连接数minIdle="2"对象池中对象最小个数
最大等待时间(毫秒)maxWait="1000"最大等待时间,单位为ms,超出时间会丢出错误信息
SQL验证查询validationQuery="SQL语句"验证连接是否成功,SQL和SELECT指令至少要返回一行
获取连接前检验testOnBorrow="false"取得对象时是否进行验证,检查对象是否有效,默认为false
归还连接前检验testOnReturn="true"返回对象时是否进行验证,检查对象是否有效,默认为false
开启空闲回收器检验testWhileIdle="true"空闲时是否进行验证,检查对象是否有效,默认为false
空闲连接回收器休眠时间(毫秒)timeBetweenEvictionRunsMillis="1000"失效检查线程运行时间间隔,如果小于等于0,不会启动检查线程
空闲连接回收检查数numTestsPerEvictionRun="2"失效检查线程运行次数
保持空闲最小时间minEvictableIdleTimeMillis="18005000"大于0,进行连接空闲时间判断,或为0,对空闲的连接不进行验证
最大活动连接数设置超过数据库中的连接数目,只能按照数据库中的连接数目为准,如想调至最大,则也要调整数据库中的连接数目,参考文档连接池满问题中的解决方案。