欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

表格部署配置优化

更新时间: 2014-01-05 03:07:01 责任编辑: Author_N1

 

报表部署配置优化
静态并发控制
应用服务器的承载能力是有限的,当并发的用户数超过其承载能力,服务器肯定要出错。因此,控制并发数的能力是必须的。
最常用的办法是静态并发控制,FineReport就提供了这样的办法,其基本思路是:在服务器端预先配置允许并发的最大线程数,当请求线程超出了这个数,就采用一种策略保证当前的线程数不超过最大线程数,同时保证等待的线程能进来计算,客户端不会出现很大的延迟。

动态并发控制
当服务器对性能要求比较高的时候,光有静态并发控制是不够的。举例来说,服务器限定了允许最大20个线程访问,平均每个线程占用内存20m,总计服务器可以接受400M内存的耗用。可是,当正好每个线程访问的报表数据量都非常小时,也许20个线程加起来耗用的内存不足100M,此时多余的300M内存就浪费了;如果正好20个线程中某几个线程访问的报表数据量非常大,有可能一个线程占用的内存就超过100M,此时20个线程加起来占用内存可能远远超过400M,直接导致服务器内存溢出。同样的道理,对于CPU占用也是适用的。

因此,FineReport报表在提供简单静态并发数控制的基础上,为了合理的资源分配,并保证服务器的安全和流畅性,同时引入了动态并发控制的概念。
根据服务器硬件和Java虚拟机的配置,在服务器运算的过程中,动态的判断当前并发访问的所占用的资源是否达到预设值,如果已经达到预设值,则控制新进访问线程。
这种动态并发控制,和简单的并发数控制结合使用,更加灵活,更加合理。

缓存报表执行结果
在并发访问的机制下,经常出现同一报表被不同用户连续多次重复访问,此时如果能够把第一次算出的报表缓存下来,再次访问时直接从缓存中读取,则可以大大减少服务器的运算消耗。并且因为节省了报表的执行过程,可以大大加快访问速度。
对于带有参数的报表,当用户采用相同的参数进行重复访问时,也可以利用缓存,减少重复的计算。对于带有不同参数的报表会缓存不同的报表执行结果。因此如果第二次这第一次执行的参数不一样,报表就会重新计算,并缓存该报表和参数对应的结果报表。因此,对于有参数的报表来说,缓存时还必须识别参数的值。


打开菜单:服务器|缓存设置,设置报表直接结果缓存参数,如下图所示

 



--参考方法--
教学贴吗? 学习. ...
--参考方法--
学习学习!
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 03:07:01
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/18476/
本文WWW.DOC100.NET DOC100.NET版权所有。