历史版本7 :影响页面加载速度的因素 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述编辑

很多用户在使用帆软 FineReport 的时候,经常出现一个页面加载好久才可以正常展现的情况。影响用户体验,下面总结下若干主要问题及解决方法。

如果用户所在场景行式引擎无法支持,则可以试用新开发的引擎插件,该插件实现了多数据源情况下的分页查询功能,用户无需再写复杂的分页 SQL 或 JS 按钮,就可以让报表快速完成首页加载。
插件体验及下载地址:插件demo系统
注:支持 Oracle、SQL Server、MySQL、HANA、PostgreSQL、Impala、DB2 等大部分主流 JDBC 数据源。

2. 错误案例:Excel 页面导入中增加了控件编辑

虽然帮助文档中描述了,导入 Excel 的模板增加了各种控件,但是,当我们正常使用的时候,会因为页面加载大量控件造成导入进程缓慢。对比测试会发现,增加控件的 200 行 10 列,约需要 100 秒左右才可以完成页面加载,而去掉控件的页面只需要 10 秒左右。


3. 错误案例:数据集建立时使用 select *编辑

帮助文档为了更便于大家理解,很多的 select 操作都是取了全部回值。其实我们正常使用的时候,只需要取自己所需要使用的字段就可以。一般来说,这个会有 20-30% 的效率影响。


4. 错误案例:数据库不建立索引或索引不合理编辑

帆软作为报表工具,在帮助文档中并未过多涉及到数据库的优化操作,这个是无可厚非的,但是建立正确索引,正确使用存储过程确实能够极大提高效率。测试发现,Excle 导入 10w 条数据,建立索引和不建立索引,有大约 5 倍的性能差。


5. 错误案例:过多使用"过滤"操作编辑

过滤功能是帆软为了方便大家对数据进行处理的很好用的功能,但是,如果我们能够在建立数据集的时候,就把所需要过滤的内容用 where 条件过滤掉,那么报表效率也会极大提高。


6. 错误案例:重复使用条件属性编辑

我们能够用条件属性实现各种动态变化,但是针对行或列进行设置的条件属性,不需要正行整列均添加上,只要在任意一个单元格添加就好。这样可以避免同样的条件被多次运算执行。


7. 错误案例:同一个页面控件数量太多编辑

实践证明,当一个页面的控件数量超过 100 个,就会拖慢页面展现速度,超过500就很容易造成超时。所以我们在设计报表的时候,一定要尽量减少控件数量,实在需要多控件的,也可以考虑不勾选“直接显示控件”选项。这都会提高报表展现效率的。


8. 错误案例:过度依赖帆软来处理数据编辑

我承认帆软来处理数据轻松便捷,但是当我们把非必要的各项运算,统计数量、过滤等等操作都交给帆软来做的时候,会发现效率远远低于数据库执行而直接返回结果。这是因为数据库在进行上述操作的时候,能够进行大量的优化算法,而帆软只能被动的一一匹配。所以,把能交给数据库执行的操作都交给数据库来做,帆软只做自身更具优势的处理,会提高页面展示效率。