反饋已提交

網絡繁忙

效能優化常見問題

1. 概述

本文匯總效能模組遇到的問題及解決方案。

2. 範例

2.1 所有範本預覽變的很慢

2.1.1 現象一

問題描述

範本載入慢,空範本也慢,F12 看請求耗時很長。

解決方案

客戶設定了全局參數,公式寫的查詢資料庫,本身執行就很慢。因為全局參數會在範本載入的時候去計算,所以導致所有的範本慢。全局參數去掉,或者改成簡單一點的寫法。

2.1.2 現象二

問題描述

所有範本預覽很慢,記憶體配置都正常。

解決方案

檢查一下全局水印設定是否寫了 sql 函式進行取數,sql 函式那邊取不到資料,所有的範本都需要等 sql 函式取數逾時之後才能夠顯示出來,就導致所有的範本預覽慢,可以透過關掉全局水印進行測試。

2.1.3 現象三

問題描述

範本存取慢,且點選儲存的時候很慢。

解決方案

檢查範本是否新增了很多圖片。

2.2 存取 OA 主頁導致其他報表頁面存取卡慢

問題描述

使用者以 iframe 方式,在 OA 主頁的 html 頁面中嵌入了幾十個報表連結。存取這個 html 頁面時,開啟其他報表也會卡住,直到 html 頁面載入完成才會恢復。

原因分析

瀏覽器有同域名請求最大併發數限制,而使用者的 html 中嵌入了幾十個報表連結,請求過多導致同域名的請求都要佇列等待。這種等待給使用者的體驗就是「卡死」,取代瀏覽器或者在其他電腦存取就不受影響了。

1637233432724303.png

2.3 決策平台左側目錄載入慢

問題描述

決策平台左側目錄載入慢,客戶做了外接資料庫的,遷移到了oracle10。

原因分析

從資料庫取數耗時長導致的載入慢。

解決方案

取代 ojdbc 驅動,把 ojdbc7 換成 ojdbc14 即可。

2.4 預覽參數面板介面耗時長

問題描述

範本預覽很慢,就連參數面板載入都要 5 秒。

原因分析

「總是重新讀取範本」按鈕處於開啟狀態,導致每次都要重新載入,沒有快取;範本用到了報表快重新整理插件,但是伺服器裏沒裝,導致每次都會去讀取插件類。

解決方案

關閉「總是重新讀取範本」按鈕;範本用到什麼插件,伺服器就裝什麼插件。

QQ20250618-092112.png

2.5 叢集環境下範本載入慢

問題描述

切換為單機,範本載入速度正常,但是叢集環境下,範本載入異常緩慢。

原因分析

springboot 內嵌的 Tomcat 版本過低導致的。

解決方案

升級 springboot 內嵌的 Tomcat 版本。

2.6 多sheet範本導致設計器很慢或者卡死

問題描述

複製了 20 個左右的 sheet ,操作程式中設計器卡頓甚至卡死。

原因分析

原因一:每個 sheet 中的內容過多,有幾百列空白列導致範本檔案就有30m。

原因二:遠端設計對範本的儲存或開啟關閉,都是需要和伺服器進行通訊,所以和通訊狀態也有關。

2.7 資料庫資源佔用過高

問題描述

透過資料庫監視工具,發現存在以下的異常 sql 語句在執行,佔用資料庫資源。

SELECT NULL AS table_cat,      o.owner AS table_schem,      o.object_name AS table_name,      o.object_type AS table_type,      NULL AS remarks FROM all_objects o WHERE o.owner LIKE :1 ESCAPE '/'   AND o.object_name LIKE :2 ESCAPE '/'   AND o.object_type IN ('xxx', 'VIEW') ORDER BY table_type, table_schem, table_name

解決方案

取消勾選設計器「選項>進階>顯示oracle所有表」的選項即可。

QQ20250618-092307.png

2.8 決策平台開啟範本後有留白

問題描述

決策平台 url 存取範本,有一段留白(不是轉圈載入,是單純的空白頁面時間)。

原因分析

轉圈載入是 sql 執行和頁面計算,而在此之前還會執行全局參數的計算,使用者寫了很多的全局參數,而且很多都是 sql 公式,需要一定計算時間,這個時間在前端表現為留白。

全局參數在範本計算之前會全部計算一遍(不管範本裏用沒用到)。

解決方案

把 sql 公式寫成伺服器資料集,全局參數透過 value 公式從這些資料集裏取資料,同時資料集設定快取來提高資料集取數,進而提升存取速度。

2.9 磁碟空間不足導致範本無法存取

問題描述

前台報錯 tools.jar 不匹配,後台 message 報錯如下:

Jul  8 16:23:55 VM-SYRPT-PRD java: *** Error in `/data/soft/roc-component-report/jre/bin/java': corrupted double-linked list: 0x00007f82e9fdd970 ***Jul  8 16:23:56 VM-SYRPT-PRD abrt-hook-ccpp: Only 0MiB is available on /var/spool/abrtJul  8 16:23:56 VM-SYRPT-PRD abrt-hook-ccpp: Process 15223 (java) of user 0 killed by SIGABRT - ignoring (low free space)

原因分析

磁碟空間不足。

解決方案

清理磁碟中無用檔案,如可以檢查 FR 工程中是否有過大的日誌檔案,備份檔案等。

2.10 jvm參數配置過大導致GC時間長

問題描述

決策平台無法存取,請求處於pending。

解決方案

Tomcat 的 Xmx 值設定小些。

2.11 範本查詢nginx報錯504 Gateway Time-out

問題描述

遠端連結範本查詢,nginx 報錯:504 Gateway Time-out

解決方案

先檢查 nginx 配置,是否是推薦配置;若只有單個範本查詢會有報錯,且資料量大,查看是不是後台資料量超過了前台設定的最大單頁限制,調整 單資料集行數限制 即可。

2.12 大數據量範本載入卡頓

範本資料量較大載入時卡頓嚴重,載入結束後查詢時仍會卡頓,並且範本掛載到決策平台後會導致平台卡頓。

可以嘗試以下設定來解決問題:

  • 採用分頁預覽

  • 開啟新計算引擎


附件列表


主題: 效能優化
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙