1. 概述
1.1 版本
FineReport 版本 |
---|
11.0 |
1.2 应用场景
本文主要总结了图表常见的性能问题及解决方案。
2. 排查步骤
2.1 查看模板数据量,并检查决策平台数据行数限制和 sql 执行时长。
大数据量时,图表加载一会,会出现空数据展示,这时不一定是性能不支持,有可能是设计器设置的数据行数限制,导致系统不支持那么大的数据量。
2.2 查看数据集查询速度
大部分模板加载慢,都是因为 sql 执行速度比较慢。验证 sql 速度快慢的方法如下:
在设计器的数据集中直接查询,人为感受sql的执行速度,设计器查询慢可考虑更换驱动
将模板导出为内置数据集进行预览,查看速度是否变快。导出内置数据集快说明是取数环境慢,优化 sql 或数据库性能
开启数据集缓存或者使用抽数缓存插件,查看速度是否变快,开了缓存变快,说明是数据集本身查询速度不佳。
简化 sql,看是否速度变快。
2.3 排查图表原因
1)先使用任意录屏工具,统计环境下该模板展示时长。
2)查看对应数据量下或对应场景下,产品是否支持以及是否已达到性能极限状态
报表图表:关注总时长、内存占用大小是否达标。
扩展图表:关注模板加载时长、内存占用大小、CPU占有率、GPU占用率是否达标。
3)若产品不支持或不推荐该数据量导致模板出现性能问题,建议采取如下措施:
必要时减少模板图表个数,或者减少图表动画、图表附加的配置项等的使用,一定程度上可以节约后台计算与前端渲染时间。
大数据量,推荐使用大数据图表,直角坐标系图形:折线图-开启大数据模式较推荐。
4)若产品是支持的,依次排查一下硬件的因素,如下所示:
浏览器:更换 chrom e浏览器,性能是否提升。
系统:排查是否是系统影响了。
内存:若内存占用很大,cpu占用率很高,可以查看下电脑内存以及服务器分配内存是否太小了。
显卡:若扩展图表 GPU 占用率很高,可以查看下需要进一步排查显卡因素(普通图表可跳过该排查项)。
网络:地图图层需要查看是否为外网网络导致的加载时长较长。
5)若产品支持且硬件没有问题,可以排查前后端性能,查看是否有异常点。