Overview
Version
| FineReport Version |
|---|
11.0 |
Application Scenario
This document summarizes common performance issues of charts and their solutions.
Method
Checking the Data Volume and Row Limit of Templates
When the data volume is large, charts may load slowly and display empty data eventually. This does not necessarily indicate a performance issue; it may be caused by the row limit setting on the decision-making platform, which prevents the system from processing large datasets.
Checking Dataset Query Speed
Most templates load slowly because SQL queries are time-consuming. You can check the SQL query speed with the following methods:
You can query the dataset directly in the designer to assess the speed. If the query is slow, consider changing the database driver.
You can export the template as one with built-in datasets and preview the datasets to see if the loading speed improves. Fast loading of the exported built-in datasets indicates that the data retrieval environment is suboptimal. You can optimize the SQL statements or improve database performance.
You can enable dataset cache or use the Extracted Data Cache plugin to see if the query speed improves. If it does, the dataset query performance is suboptimal.
You can simplify the SQL statements to see if the query speed improves.
Checking Chart Issues
1. Use any screen recording tool to record the template loading process, and measure the loading time in your environment.
2. Check whether FineReport supports the data volume or scenario of the template and whether it has reached peak performance.
For report charts, you need to focus on whether the total loading time and memory usage of the template meet the required performance standards.
For extended charts, you need to focus on whether the loading time, and memory, CPU, and GPU usage of the template meet the required performance standards.
3. If performance issues occur because the data volume is not supported or recommended in FineReport, you can take the following measures:
Reduce the number of charts in templates or the use of animations and additional configurations in charts when necessary. This can help save backend computation and frontend rendering time.
For large datasets, you are advised to use charts that support the big data mode, for example, line charts of the Cartesian coordinate system with the large data mode enabled.
4. If the data volume is supported in FineReport, you need to rule out the hardware factors below:
Browser: Switch to Chrome and see if chart performance improves.
System: Check if the system is causing any issues.
Memory: If memory and CPU usage are high, check if the computer memory or the memory allocated to the server is insufficient.
Graphics card: If the GPU usage of extended charts is high, you can further rule out issues with the graphics card. (You can skip this step for general charts.)
Network: For GIS layers, check if the slow loading is caused by issues with the external network.
5. If you have ruled out product-related and hardware issues, check the backend performance to see if any exception exists.