反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

数据连接高级设置

  • 文档创建者:文档助手1
  • 历史版本:32
  • 最近更新:Lily.Wang 于 2021-11-02
  • 1. 概述

    1.1 版本

    报表服务器版本
    功能变动
    10.0.18
    • 「连接池设置」按钮改名为「高级设置」

    • 设计器部分数据连接支持设置 fetchsize

    10.0.19
    决策平台适配 fetchsize 配置

    1.2 功能简介

    本文将介绍高级设置设置方法及其属性中各参数的意义。

    • 连接池

    • fetchsize

    2. 具体介绍

    2.1 高级设置

    在 FineReport 设计器中点击「服务器>定义数据连接」,选择某个数据连接,点击「高级设置」,可设置连接池属性,部分数据连接还可设置 fetchsize 。如下图所示:

    8.png

    9.png

    2.2 连接池属性参数介绍

    其中连接池属性的各参数说明如下表所示:

    名称  举例  含义  
    初始化连接数initialSize="1"连接池启动时创建的初始化连接数量
    最大活动连接数maxActive="200"连接池在同一时间能够分配的最大活动连接的数量,如果设置为非正数则表示不限制
    最大空闲连接数maxIdle="100"

    注:该参数已废弃

    最小空闲连接数minIdle="2"连接池中容许保持空闲状态的最小连接数量,低于这个数量将创建新的连接,如果设置为 0 则不创建
    最大等待时间(毫秒)maxWait="1000"当没有可用连接时,连接池等待连接被归还的最大时间(以毫秒计数),超过时间则抛出异常,如果设置为 -1 表示无限等待
    SQL 验证查询validationQuery="SQL语句"用来验证从连接池取出的连接,在将连接返回给调用者之前如果指定,则查询必须是一个 SQL SELECT 并且必须返回至少一行记录
    获取连接前检验testOnBorrow="false"

    指明是否在从池中取出连接前进行检验,如果检验失败,则从池中去除连接并尝试取出另一个

    归还连接前检验testOnReturn="true"

    指明是否在归还到池中前进行检验

    开启空闲回收器检验testWhileIdle="true"

    指明连接是否被空闲连接回收器(如果有)进行检验,如果检测失败,则连接将被从池中去除

    空闲连接回收器休眠时间(毫秒)

    timeBetweenEvictionRunsMilli

    s="1000"

    在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位.。如果设置为非正数,则不运行空闲连接回收器线程
    空闲连接回收检查数numTestsPerEvictionRun="2"在每次空闲连接回收器线程(如果有)运行时检查的连接数量
    保持空闲最小时间

    minEvictableIdleTimeMilli

    s="18005000"

    连接在池中保持空闲而不被空闲连接回收器线程(如果有)回收的最小时间值

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

    2.3 fetchsize 设置

    当执行一个 SQL 查询语句的时候,需要在客户端和服务器端都打开一个游标,并且分别申请一块内存空间,作为存放查询的数据的一个缓冲区。这块内存区,存放多少条数据就由 fetchsize 来决定。

    用户可在 FineReport 中,对「Oracle、DB2、Postgre」数据连接设置 fetchsize。可输入 1~1,000,000 中的任意数值,若为空则表明不配置此项参数。

    注:10.0.19 中决策平台增加了 fetchsize 的设置项。当远程设计配置 fetchsize 时,使用的设计器需10.0.18版本以上,否则设计器中触发保存会使平台中的 fetchsize 设置项消失。

    9.png

    3. 注意事项

    如果访问模板时,报连接超时、等待状态,警告如下所示:

    警告: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)

    则需要把相应连接数调大。

    附件列表


    主题: 数据准备
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526