zoukankan      html  css  js  c++  java
  • 报表并发访问量大的配置

    

    背景说明

    并发访问量大的应用,容易发生服务器崩掉的情况,针对这种情况,我们在部署时,能做一些什么优化呢?看下面的配置。

    应用举例

    我们从以下三处来优化应用配置:

    1 tomcatjvm的初始内存大小;

    2 应用的数据源连接配置:reportApp.xml

    3 应用的报表配置文件:reportConfig.xml

    1

    Windows下,在文件/bin/catalina.batUnix下,在文件/bin/catalina.sh的前面,增加如下设置:

    JAVA_OPTS=’-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】

    需要把这个两个参数值调大。例如:

    JAVA_OPTS=’-Xms1024m -Xmx1024m’

    2

    newRoleReport.xml中的配置项:

    maxActive=”100″

    maxIdle=”30″

    maxWait=”-1″

    参数说明:

    maxActive:同时能够从连接池中被分配的可用实例的最大数;

    maxIdle:可以同时闲置在连接池中的连接的最大数;

    maxWait:最大超时时间,以毫秒计,-1表示无限制;

    3

    reportConfig.xml中的配置项:

    alwaysReloadDefinenocachedReportTimeout60maxConcurrentForReport1000maxWaitForReport2000maxWaitTimeForReport10maxCellNum100000

    <config>

    <name>alwaysReloadDefine</name>

    <value>no</value>

    </config>

    <config>

    <name>cachedParamsTimeout</name>

    <value>60</value>

    </config>

    <config>

    <name>cachedReportTimeout</name>

    <value>60</value>

    </config>

    <config>

    <name>maxCellNum</name>

    <value>100000</value>

    </config>

    <config>

    <name>maxConcurrentForReport</name>

    <value>1000</value>

    </config>

    <config>

    <name>maxWaitForReport</name>

    <value>2000</value>

    </config>

    <config>

    <name>maxWaitTimeForReport</name>

    <value>10</value>

    </config>

    参数说明:

    (1) alwaysReloadDefine实时载入报表,应用制作好后,设置为no;在开发模式下,设置为yes,可以在页面上看到报表实时修改后的效果。

    (2) cachedParamsTimeout表示提交给报表的参数在缓存中保存的时间,以分钟为单位。如果不设此参数,缺省值是120分。

    (3) cachedReportTimeout表示报表缓存保存的时间,以分钟为单位。如果不设此参数,缺省值是120分。此值应根据实际内存大小、缓存文件夹空间大小来调节,一般在13小时之间。

    (4) maxCellNum 当前报表系统能运算的最大单元格数,能够动态控制并发数。该数值的大小取决于硬件的配置,一般来说内存越大,这些数值可以设得越大,但最多建议不要超过2000000

    (5) maxConcurrentForReport表示报表WEB应用中服务器可以同时计算的报表的个数,以便有效控制服务器的内存使用量。该数值的大小取决于硬件的配置,一般来说内存越大,这些数值可以设得越大,但最多建议不要超过1000

    (6) maxWaitForReport表示报表WEB应用中服务器可以等待计算的报表的个数,以便有效控制服务器的内存使用量。该数值的大小取决于硬件的配置,一般来说内存越大,这个数值可以设得越大,但最多建议不要超过2000

    (7) maxWaitTimeForReport表示内存溢出后,最长等待多久才允许新任务访问,以秒为单位,一般建议为10

  • 相关阅读:
    Spring Boot笔记一 输出hello
    Java Web之表单重复提交问题
    Java Web之验证码
    Java Web之下载文件
    Java工具之上传文件
    Java Web之上传文件
    Java Web之EL
    Java Bean的规范
    Java Web之JSP
    《FPGA全程进阶---实战演练》第一章之如何学习FPGA
  • 原文地址:https://www.cnblogs.com/shiGuangShiYi/p/10117541.html
Copyright © 2011-2022 走看看