模板结果缓存与共享

编辑
文档创建者:文档助手1 (67727 )     浏览次数:4303次     编辑次数:8次     最近更新:jiangsr 于 2018-07-12     

目录:

1. 描述编辑

对报表进行访问时,若模板的数据很大,每次访问都会从服务器端重新读取数据,这样就加大了服务器的压力并且导致访问报表的速度变慢,为此可以设置模板缓存,使访问过模板后再次访问该模板时直接从缓存中读取而不需要从服务器端重新读取以此来减小服务器的压力以及提高报表的访问速度。
1.1 读取模板缓存数据的条件
必须是相同模板如该模板有参数则必须输入的参数值是相同的,即模板的展现结果是相同的。

2. 原理编辑

下面我们以一个例子看下原理
客户端A访问服务器上的报表设计模板,从数据库中读取,生成想要的模板结果文件,缓存到某处,并传回客户端。
而客户B访问服务器此模板时,若返回的结果与客户端A访问放回的结果相同,于是不从数据库中的读取,直接去拿A缓存的那些文件,然后传回客户端。
由此可以看出从缓存取模板结果远快于从数据库中读取数据。

3. 设置方法编辑

可以对单个模板进行缓存设置,下面我们看下设置方法。
1)缓存设置
在访问报表的路径后加&__cache__=true,表示该报表启用缓存,如:
http://localhost:8075/webroot/decision/view/report?viewlet=GettingStarted.cpt&__cache__=true
注:只有在访问模板的url后加&__cache__=true,才会生成缓存数据,并且也只有在url后加&__cache__=true时,才会从缓存中读取数据。
2)缓存有效时间设置
选择菜单模板>模板web属性即可设置,如下图:
如某报表执行需要5秒中,设置的报表缓存有效时间为10秒,用户A第一次访问该报表时,会将报表结果缓存下来,缓存时间为15秒;
从A刚开始访问报表的15秒内,若用户B同样访问了该报表,将直接获取A访问时的计算结果。
222

附件列表


主题: 性能优化
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

此页面有帮助吗?只是浏览 [ 去社区提问 ]