最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

类excel报表开发工具FineReport教程之服务器性能优化:并发数

来源:动视网 责编:小OO 时间:2025-10-04 17:13:10
文档

类excel报表开发工具FineReport教程之服务器性能优化:并发数

类excel报表开发工具FineReport教程之服务器性能优化:并发数报表工程总是和用户系统集成在一起,当服务器性能吃紧时,占用服务器资源的可能是报表引擎,服务器下的其他应用程序。因此,减少任何一方对服务器资源的占用,都可以缓解压力。当报表引擎已经没有优化余地时,如果服务器资源依旧吃紧,可以进一步对服务器整体进行优化,如优化服务器连接数等。报表并发控制模板结果缓存与共享1.问题描述对报表进行访问时,若模板的数据很大,每次访问都会从服务器端重新读取数据,这样就加大了服务器的压力并且导致访问报表
推荐度:
导读类excel报表开发工具FineReport教程之服务器性能优化:并发数报表工程总是和用户系统集成在一起,当服务器性能吃紧时,占用服务器资源的可能是报表引擎,服务器下的其他应用程序。因此,减少任何一方对服务器资源的占用,都可以缓解压力。当报表引擎已经没有优化余地时,如果服务器资源依旧吃紧,可以进一步对服务器整体进行优化,如优化服务器连接数等。报表并发控制模板结果缓存与共享1.问题描述对报表进行访问时,若模板的数据很大,每次访问都会从服务器端重新读取数据,这样就加大了服务器的压力并且导致访问报表
类excel报表开发工具FineReport教程之服务器性能优化:并发数报表工程总是和用户系统集成在一起,当服务器性能吃紧时,占用服务器资源的可能是报表引擎,服务器下的其他应用程序。因此,减少任何一方对服务器资源的占用,都可以缓解压力。当报表引擎已经没有优化余地时,如果服务器资源依旧吃紧,可以进一步对服务器整体进行优化,如优化服务器连接数等。

报表并发控制

模板结果缓存与共享

1.问题描述

对报表进行访问时,若模板的数据很大,每次访问都会从服务器端重新读取数据,这样就加大了服务器的压力并且导致访问报表的速度变慢,为此可以设置模板缓存,使访问过模板后再次访问该模板时直接从缓存中读取而不需要从服务器端重新读取以此来减小服务器的压力以及提高报表的访问速度。

1.1读取模板缓存数据的条件

必须是相同模板如该模板有参数则必须输入的参数值是相同的,即模板的展现结果是相同的。

2.原理

下面我们以一个例子看下原理客户端A访问服务器上的报表设计模板,从数据库中读取,生成想要的模板结果文件,缓存到某处,并传回客户端。

而客户B访问服务器此模板时,若返回的结果与客户端A访问放回的结果相同,于是不从数据库中的读取,直接去拿A缓存的那些文件,然后传回客户端。

由此可以看出从缓存取模板结果远快于从数据库中读取数据。

3.设置方法

可以对单个模板进行缓存设置,可以对所有模板进行缓存设置,下面我们分别看下设置方法。

3.1单个模板的缓存设置

缓存设置

在访问报表的路径后加&__cache__=true,表示该报表启用缓存,如:http://localhost:8075/WebReport/ReportServer?reportlet=GettingStarted.cpt &__cache__=true。

注:只有在访问模板的url后加__cache__=true,才会生成缓存数据,并且也只有在url 后加__cache__=true时,才会从缓存中读取数据。

缓存有效时间设置

选择菜单模板>模板web属性即可设置,如下图:

如某报表执行需要5秒中,设置的报表缓存有效时间为10秒,用户A第一次访问该报表时,会将报表结果缓存下来,缓存时间为15秒;

从A刚开始访问报表的15秒内,若用户B同样访问了该报表,将直接获取A访问时的计算结果。

3.2所有模板的缓存设置

进入FR平台系统中,选择管理系统>系统管理>缓存,勾去重新读取模板就可以启用缓存了。

注:是否重新加载报表意味着是否读取缓存,如果不重新加载报表,那么就是读取缓存的同一张模板的信息;如果重新加载报表,就是不读取缓存信息,重新运行报表。

服务器线程数优化

1.服务器线程概念

一般服务器都需要承受较高的访问量,能够同时响应不同用户的请求,在服务器中使用线程来处理接收的每个请求,若能够合理管理线程数,服务器就能够更好的在恶劣环境下保持较高的稳定性和健壮性。

各Web服务器管理线程主要用到如下几个参数:

最小线程数:服务器最少保证的线程数;最大线程数:服务器并发处理的最大任务个数,超过该数时,请求会进入等待,等待空闲线程;

最大等待时间:服务器线程数超过最大线程数,进入等待的请求,超过最大等待时间时,服务器会绝此次请求,返回connection refused。

2.如何设置服务器线程数

一般的服务器操作都包括量方面:计算(主要消耗cpu)、等待(io、数据库等),最重要的参数就是“最大线程数”:

第一种极端情况,如果我们的操作是纯粹的计算,那么系统响应时间的主要就是cpu 的运算能力,此时最大线程数应该尽量设的小,降低同一时间内争抢cpu的线程个数,可以提高计算效率,提高系统的整体处理能力。

第二种极端情况,如果我们的操作是纯粹IO或者数据库,那么响应时间的主要就变为等待外部资源,此时最大线程数应该尽量设的大,这样才能提高同时处理请求的个数,从而提高系统整体的处理能力。此情况下因为tomcat同时处理的请求量会比较大,所以需要关注一下tomcat的虚拟机内存设置和linux的open file。

而现实应用中,我们的操作都会包含以上两种类型(计算、等待),所以最大线程数的配置并没有一个最优值,一定要根据具体情况来配置。

最好的做法是:在不断测试的基础上,不断调整、优化,才能得到最合理的配置。Tomcat服务器并发数查看与修改

1.问题描述用户访问某张报表时,服务器就使用一个线程来处理报表运算。

如果访问的人数太多且报表运算量大的话,同一时间争抢服务器cpu线程的人就会很多。服务器响应能力就会减弱,所以我们需要合理控制服务器线程个数。

2.设置方法

2.1设置方式

我们可以通过修改Tomcat服务器的配置,来控制线程数。

打开%Tomcat_HOME%/conf/server.xml文档,找到一栏。

在Connector port="8080"后面加上相应地参数控制线程数,控制参数如下:

minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10

maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75

acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100

设置完成后如同: 2.2注意事项

web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。

这里的连接数是无法直接给出最佳配置的,需要根据您的实际情况,在不断调整,不断测试的基础上,才能到到最合理配置。

1.问题描述

用户访问某张报表时,服务器就使用一个线程来处理报表运算。

如果访问的人数太多且报表运算量大的话,同一时间争抢服务器cpu线程的人就会很多。服务器响应能力就会减弱,所以我们需要合理控制服务器线程个数。

2.解决方案

2.1修改Weblogic服务器并发

Weblogic服务器不但修改xml文件来达到效果的,另外还要修改一下cmd文件。2.2修改weblogic domain的config.xml文件

在对应位置加入红色标注的两行内容:

admserver

5 15 ...

2.3在startweblogic.cmd脚本中加入一下java启动参数

-Dweblogic.configuration.schemaValidationEnabled=false修改Websphere服务器并发

Websphere修改方法略有不同,是通过打开控制台,在对应位置进行修改即可;当然也可修改配置文件,控制台比较直观方便,启动服务器打开控制台找到如下位置,修改50和200,200就是最大线程数。

Jboss服务器并发数查看与修改

1.问题描述

用户访问某张报表时,服务器就使用一个线程来处理报表运算。

如果访问的人数太多且报表运算量大的话,同一时间争抢服务器cpu线程的人就会很多。服务器响应能力就会减弱,所以我们需要合理控制服务器线程个数。

2.解决方案

2.1修改Jboss服务器并发

Jboss的版本不一样,对应的修改的位置也不一样,主要分为以下两种情况:Jboss4.0.2与jboss4.2.2.GA。

2.2Jboss4.0.2的连接数修改

打开JBOSS目录jboss-4.0.2>server>default>deploy>jbossweb-tomcat55.sar 下的server.xml文件,修改连接数即可。

例如把250修改为300。

2.3jboss4.2.2.GA的连接数修改

打开JBOSS目录jboss-4.2.2.GA>server>default>deploy>jboss-web.deployer 下的server.xml文件,修改连接数即可。

例如把250改成300。注意:jboss-4.2.2.GA的server下有三个用户(all、default、minimal),我这里修改的是defaul用户,因为我经常用的是default这个用户,而其它的两个用户我就每去管它了。你们可以根据自己的情况来改某个用户的端口,当然这三个用户的端口都相同也可以,这样还可以避免造成端口又被占用。不过现在开发J2EE应用程序的服务器都用jboss-4.2.2.GA,Jboss4.0.2少用了

并发数FAQ

address pool is full错误处理

当发生address pool is full这个错误时,一般是由于并发不够的原因,如何来确认是否是这个原因呢?在管理平台|服务器配置|监控下面,看到当前系统在线用户数,然后再比较注册信息页面里的Concurrency,就可以判断是否超过购买的并发数。解决方法就是减少并发人数或者增大最大并发数1.解决方案

1.1查看服务器状态

打开FR管理平台http://localhost:8075/WebReport/ReportServer?op=fr_platform,选择服务器配置|服务器状态,可以看到下图界面

服务器状态显示被访问的报表名,访问用户IP和访问用户名,还有当前系统在线用户数。

现在在浏览器端打开一个新的选项卡,在地址栏里面输入如:

http://localhost:8075/WebReport/ReportServer?reportlet=doc/Advanced/ GroupReport/CusGroup_6.cpt

来访问FineReport里自带的模板CusGroup.cpt

然后刷新之前打开的管理平台,选择服务器配置>服务器状态,可以看到当前系统在线用户数为1,如下图

1.2查看注册信息

在管理平台内点击服务器配置>注册信息,查看版本注册信息,如下图

Concurrency为5,Concurrency就是购买的最大并发数,如果最大并发数<当前系统在线用户数,就会发生address pool is full这个错误

文档

类excel报表开发工具FineReport教程之服务器性能优化:并发数

类excel报表开发工具FineReport教程之服务器性能优化:并发数报表工程总是和用户系统集成在一起,当服务器性能吃紧时,占用服务器资源的可能是报表引擎,服务器下的其他应用程序。因此,减少任何一方对服务器资源的占用,都可以缓解压力。当报表引擎已经没有优化余地时,如果服务器资源依旧吃紧,可以进一步对服务器整体进行优化,如优化服务器连接数等。报表并发控制模板结果缓存与共享1.问题描述对报表进行访问时,若模板的数据很大,每次访问都会从服务器端重新读取数据,这样就加大了服务器的压力并且导致访问报表
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top