反馈已提交

网络繁忙

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

修改FineReport配置参数

  • 文档创建者:文档助手1
  • 历史版本:25
  • 最近更新:Carly 于 2022-08-20
  • 1. 概述

    FineReport 报表工程部署到其他应用服务器上时,对应用服务器有一定的配置要求,因此当应用服务器不能满足报表工程使用时,会出现宕机风险。

    FineReport 在部署后需要修改使用内存和其他参数,确保服务器稳定运行。

    2. 修改堆内内存

    请参见下方表格内容:

    参数介绍服务器类型参考文档

    -Xmx 参数:最大堆内内存

    -Xms 参数:初始化内存大小

    注1:Xmx/Xms 与数字之间不要有空格

    注2:建议配置Xms=Xmx,以防止内存扩容失败情况

    Tomcat 服务器
    Tomcat 服务器内存修改
    WebLogic 服务器WebLogic 服务器内存修改
    WebSphere 服务器WebSphere 服务器
    JBoss 服务器JBoss 服务器
    Resin 服务器Resin 服务器内存修改

    堆内内存配置推荐:

    物理机JVM版本推荐
    32G内存、报表独占16G10.0.5之后-Xms16g

    -Xmx16g

    10.0.5之前

    -Xms16g

    -Xmx16g


    24G10.0.5之后

    -Xms24g

    -Xmx24g

    10.0.5之前

    -Xms24g

    -Xmx24g

    16G内存、报表独占8G10.0.5之后-Xms8g

    -Xmx8g

    10.0.5之前

    -Xms8g

    -Xmx8g


    3. 设置单线程使用栈空间

    建议单线程使用栈空间不超过 512KB,即 -Xss 的值不超过 512 。本节展示 Tomcat 环境下设置 -Xss 的步骤。

    Windows 系统:

    1)进入%Tomcat%/bin目录,找到并编辑配置文件catalina.bat,在已有的配置参数set JAVA_OPTS= -Xms512M -Xmx1024M后再增加一条参数:

    -Xss512K

    如下图所示:

    1629877222890103.png

    2)修改后,重启工程。在%Tomcat%/logs下查看catalina.log文件,说明配置生效,如下图所示:

    1629877633583487.png

    Linux 系统:

    1)进入%Tomcat%/bin目录,找到并编辑配置文件catalina.sh,在已有的配置参数JAVA_OPTS="$JAVA_OPTS -Xms2048M -Xmx8196M"语句中再增加一条参数:

    -Xss512K

    1629875505975736.png

    2)修改后,重启工程。输入ps -ef|grep tomcat(语句中的 tomcat 根据实际情况修改)查看进程,检查参数是否配置成功,若如下所示进程信息中出现参数相关信息,则表示配置成功:

    6.png

    4. 设置堆内老年代与新生代大小比例

    堆内老年代与新生代大小比例建议为 2(-XX:NewRatio=2,JVM的默认值);NewRatio 大小正常生效需要用户不限制新生代大小。

    在设置-Xmx、-Xms参数的位置,添加 NewRatio 的值即可,本节展示 Tomcat 环境下设置 NewRatio 的步骤。

    Windows 系统:

    1)进入%Tomcat%/bin目录,找到并编辑配置文件catalina.bat,在已有的配置参数set JAVA_OPTS= -Xms512M -Xmx1024M -Xss512K后再增加一条参数:

    -XX:NewRatio=2

    如下图所示:

    1629877287667033.png

    2)修改后,重启工程。在%Tomcat%/logs下查看catalina.log文件,说明配置生效,如下图所示:

    1629877444964510.png

    Linux 系统:

    1)进入%Tomcat%/bin目录,找到并编辑配置文件catalina.sh,在已有的配置参数JAVA_OPTS="$JAVA_OPTS -Xms2048M -Xmx8196M -Xss512K"语句中再增加一条参数:

    -XX:NewRatio=2

    1629876039199602.png

    2)修改后,重启工程。输入ps -ef|grep tomcat(语句中的 tomcat 根据实际情况修改)查看进程,检查参数是否配置成功,若如下所示进程信息中出现参数相关信息,则表示配置成功:

    8.png

    5. 修改 MaxDirectMemorySize 参数

    堆外内存由-XX:MaxDirectMemorySize这个参数来设置,建议参数值为 2GB 。

    5.1 直接部署修改参数

    1)如果是安装包直接安装 FineReport ,可以直接在%FR_HOME%/bin目录下的designer.vmoptions文件中修改。Windows 以及 Linux/Unix 系统均修改该文件(这里是以 M 为单位),如下图所示:

    3.png

    增加参数如下图所示:

    -XX:MaxDirectMemorySize=2g

    1603681741842976.png

    2)配置完成后重启工程。

    5.2 部署在 Tomcat 中修改参数

    Windows 系统:

    1)配置方式:进入%Tomcat%/bin目录,找到并编辑配置文件catalina.bat,增加配置:

    set JAVA_OPTS=%JAVA_OPTS% -XX:MaxDirectMemorySize=2g

    表示 MaxDirectMemorySize = 2GB,如下图所示:

    1629877568196861.png

    2)修改后,重启工程。在%Tomcat%/logs下查看catalina.log文件,说明配置生效,如下图所示:

    1629877781252697.png

    Linux 系统:

    1)Linux/Unix 修改 catalina.sh 文件,增加配置:

    JAVA_OPTS="$JAVA_OPTS -XX:MaxDirectMemorySize=2g"

    1629876451123355.png

    2)配置完成后重启工程。输入ps -ef|grep tomcat(语句中的 tomcat 根据实际情况修改)查看进程,检查参数是否配置成功,若如下所示进程信息中出现参数相关信息,则表示配置成功:

    10.png

    5.3 部署在 Weblogic 中修改参数

    修改 Weblogic 安装目录%Weblogic%/domains/用户工程名/下的 startWebLogic 文件,增加一条配置。

    Windows 系统:

    1)Windows 在startWebLogic.bat文件中新增配置:

    set  MEM_ARGS=-XX:MaxDirectMemorySize=2g     #表示 MaxDirectMemorySize = 2GB

    2)配置完成后重启工程。

    Linux 系统:

    1)Linux 在startWebLogic.sh文件中新增配置:

    MEM_ARGS="-XX:MaxDirectMemorySize=2g"      #表示 MaxDirectMemorySize = 2GB

    如下图所示:

    1598430089327280.png

    2)配置完成后重启工程。

    5.4 部署在 Websphere 中修改参数

    5.4.1 方法一:控制台编辑(推荐)

    访问 Websphere 控制台,进入 JAVA 虚拟机配置界面,同本文 3.3.1 节,在输入框中新增 JVM 参数:

    -MaxDirectMemorySize=2096

    如下图所示:

    image.png

    5.4.2 方法二:修改配置文件

    修改 Websphere 安装目录下的配置文件 server.xml ,在其中新增 JVM 参数:

    MaxDirectMemorySize="2096"

    如下图所示:

    1598432040392617.png

    配置完成后重启工程。

    6. 修改fineIO内存

    10.0.5 版本启用了 fineIO 来配置堆外内存,堆外内存的配置更具体,客户可根据自己的需要灵活配置

    堆外内存被分为读内存与写内存,以及缓存(不占用实际堆外内存),可以通过参数分别配置:

    • 读内存:-Dfineio.read_mem_limit

    • 写内存:-Dfineio.write_mem_limit

    • 缓存: -Dfineio.cache_mem_limit

    修改参数的方法见文档 系统检查扩展内容 的 2.4 和 2.5 节。

    示例:

    -Dfineio.read_mem_limit=2

    -Dfineio.write_mem_limit=1

    -Dfineio.cache_mem_limit=1

    注1:默认单位为 GB,支持小数,但不支持使用g,m等。

    注2:建议读内存为写内存的 2~3 倍,缓存大小建议与写内存大小一致。(如果未配置,默认为读内存2G,写内存1G,缓存1G)

    注3:缓存内存大小不占堆外内存空间! 最大堆外内存大小为3GB!

    注4:配置堆外内存时,不管版本,FineIO 和 -XX:MaxDirectMemorySize 要同时配置!只限制一部分依然可能导致宕机!

    配置推荐:

    物理机JVM版本fineIO
    32G内存、报表独占16G10.0.5之后-XX:MaxDirectMemorySize=1g

    -Dfineio.read_mem_limit=2

    -Dfineio.write_mem_limit=1

    -Dfineio.cache_mem_limit=1

    10.0.5之前

    -XX:MaxDirectMemorySize=1g

    -Dfineio.direct_mem_limit=1

    24G10.0.5之后

    -XX:MaxDirectMemorySize=1g

    -Dfineio.read_mem_limit=2

    -Dfineio.write_mem_limit=1

    -Dfineio.cache_mem_limit=1


    10.0.5之前

    -XX:MaxDirectMemorySize=1g

    -Dfineio.direct_mem_limit=1

    16G内存、报表独占8G10.0.5之后

    -XX:MaxDirectMemorySize=1g

    -Dfineio.read_mem_limit=2

    -Dfineio.write_mem_limit=1

    -Dfineio.cache_mem_limit=1

    10.0.5之前

    -XX:MaxDirectMemorySize=1g

    -Dfineio.direct_mem_limit=1


    7. 垃圾收集器

    建议使用默认的 Parallel Scavenge 收集器(并行收集器)。

    7.1 查看当前使用的垃圾收集器

    注:若使用本节语句,查询结果包含若 -XX:+UseParallelGC ,则忽略本文 6.2 节内容。

    7.1.1 Windows 系统下查看

    win+R 进入cmd,命令如下所示:

    java -XX:+PrintCommandLineFlags -version

    如下图所示:

    1599212834745743.png

    7.1.2 Linux 系统下查看

    输入以下命令:

    java -XX:+PrintCommandLineFlags -version

    如下图所示:

    image.png

    7.2 设置垃圾收集器

    工程部署在 Tomcat 上时, 可参考本节方法设置垃圾收集器为Parallel Scavenge(并行收集器)。

    Windows 系统:

    1)进入%Tomcat%/bin目录,找到并编辑配置文件 catalina.bat ,配置:

    set JAVA_OPTS= -XX:+UseParallelGC

    如下图所示:

    1629877927876472.png

    2)修改后,重启工程。参考 6.1 节内容查看当前使用的垃圾收集器。

    Linux 系统:

    1)进入%Tomcat%/bin目录,找到并编辑配置文件 catalina.sh,配置:

    JAVA_OPTS="$JAVA_OPTS -XX:+UseParallelGC"

    1629876788858941.png

    2)修改后,重启工程。参考 6.1 节内容查看当前使用的垃圾收集器。

    8. 注意事项

    1)建议工程所在磁盘剩余空间不小于 5G 。

    2)建议物理机总内存减去系统所在容器使用内存不小于 10GB 。

    附件列表


    主题: 部署集成
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

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

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

    总裁办24H投诉

    热线电话:173-1278-1526