连接池属性

编辑
  • 文档创建者:文档助手1
  • 浏览次数:10829次
  • 编辑次数:25次
  • 最近更新:Kevin-s 于 2019-06-02
  • 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. 设置方法

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


    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,对空闲的连接不进行验证

    最大活动连接数设置超过数据库中的连接数目,只能按照数据库中的连接数目为准,如想调至最大,则也要调整数据库中的连接数目,参考文档 连接池满问题 中的解决方案。


    附件列表


    主题: 设计思路
    标签: 暂无标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]