修改記憶體

1. 概述

FineBI 是一款純 B/S 端的商業智慧分析服務平台,支援透過 Web 應用伺服器將其部署在伺服器上,提供企業雲伺服器。

因此對伺服器有一定的配置要求,當伺服器不能滿足 BI 使用時,會出現當機風險。

FineBI 在部署後需要修改使用記憶體和其他參數,確定伺服器穩定運作。

注:本文主要介紹如何修改記憶體,其他參數的修改方法,請參考 Java虛擬機檢查

2. 記憶體簡介

2.1 內容分類

FineBI使用的物理記憶體分為 Heap 記憶體和直接物理記憶體。

強烈建議物理機/雲主機記憶體至少 16GB,物理記憶體太小,會嚴重影響 FineBI 計算效能和系統穩定性。

FineBI 使用的物理記憶體 BIMax 要求:BIMax = Xmx + MaxDirectMemorySize + FineIO + Other。為了保障主機穩定性,要求 BIMax <= 使用者伺服器記憶體 * 7/8

建議修改的記憶體相關配置項包括:

記憶體配置參數
說明建議值
Xmx

指定Java堆的最大記憶體大小

它設定堆的上限,當堆大小達到該值時,JVM將停止分配新的記憶體並觸發垃圾回收

建議:

8GB <= Xmx < 32 GB或者

40GB <= Xmx <= 64GB

注:< 8GB 有當機風險,32GB ~ 40GB 會導致效能問題,> 64GB 效能差

使用者可在 健康巡檢 查看推薦的「堆內記憶體」大小(Xmx 值)

Xms

指定Java堆的初始記憶體大小

它設定堆的初始大小,JVM會在啟動時分配該大小的記憶體

建議 Xms = Xmx
MaxDirectMemorySize堆外NIO記憶體,指定直接記憶體(Direct Memory)的最大大小

直接記憶體不受Java堆大小的限制,透過本地記憶體直接分配,而不是在Java堆中分配

建議 4GB

不限制最大值,但需要考慮使用者伺服器記憶體的大小,FineBI 使用的記憶體(BIMax)<= 使用者伺服器記憶體 * 7/8

Dfineio.read_mem_limit

fineIO讀記憶體


建議 2GB
Dfineio.write_mem_limitfineIO寫記憶體建議 1GB

2.2 記憶體上限溢位的現象

  • 預覽範本時報錯記憶體上限溢位:java.lang.OutOfMemoryError:Java heap space

  • Tomcat 後臺提示 Memory is over threshold

  • 報錯:gc overhead

  • 報錯:記憶體上限溢位

  • 記憶體佔用過高

  • 工程用久了回应速度慢,出現卡頓

  • 預覽儀表板經常出現等待佇列中

  • 伺服器壓力大

3. 修改Tomcat下工程記憶體

3.1 Linux

1)關閉Tomcat伺服器。

2)進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。

注:請確定setenv.sh檔案具有可執行權限。如果沒有可執行權限,可以使用以下命令進行設定:chmod +x setenv.sh

3)使用正文編輯器開啟setenv.sh檔案。在檔案中新增/修改以下行來設定:

JAVA_OPTS="$JAVA_OPTS -Xms8192m -Xmx8192m"

JAVA_OPTS="$JAVA_OPTS -XX:MaxDirectMemorySize=2g"

JAVA_OPTS="$JAVA_OPTS -Dfineio.read_mem_limit=2"

JAVA_OPTS="$JAVA_OPTS -Dfineio.write_mem_limit=1"

4)儲存並關閉setenv.sh檔案。

5)重啟Tomcat伺服器以使修改生效。

3.2 Windows

1)關閉Tomcat伺服器。

2)進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。

3)使用正文編輯器開啟setenv.bat檔案。在檔案中新增新增以下行來設定:

set JAVA_OPTS=%JAVA_OPTS% -Xms8192m -Xmx8192m

set JAVA_OPTS=%JAVA_OPTS% -XX:MaxDirectMemorySize=4g

set JAVA_OPTS=%JAVA_OPTS% -Dfineio.read_mem_limit=2

set JAVA_OPTS=%JAVA_OPTS% -Dfineio.write_mem_limit=1

4)儲存並關閉setenv.bat檔案。

5)重啟Tomcat伺服器以使修改生效。

4. 修改直接部署的工程記憶體參數

若工程直接部署在作業系統中,可直接在%FineBI%/bin目錄下的配置檔案中修改記憶體的大小。

4.1 Linux/Windows

1)關閉FineBI工程。

2)進入%FineBI_HOME%\bin目錄。尋找名為finebi.vmoptions的檔案。

3)使用正文編輯器開啟finebi.vmoptions檔案,新增/修改以下行

-Xms8192m

-Xmx8192m

-XX:MaxDirectMemorySize=4g

-Dfineio.read_mem_limit=2

-Dfineio.write_mem_limit=1

4)儲存並關閉檔案。重啟FineBI工程生效。

4.2 Mac

1)關閉設計器。

2)進入%FR_HOME%\bin目錄,右擊designer.app,點選「顯示包內容」。

3)開啟Content/vmoptions.txt檔案,新增/修改以下行

-Xms8192m

-Xmx8192m

-XX:MaxDirectMemorySize=4g

-Dfineio.read_mem_limit=2

-Dfineio.write_mem_limit=1

4)儲存並關閉檔案。重啟FineBI工程生效。

5. 修改weblogic下工程記憶體

5.1 Linux

1)進入WebLogic域(Domain)的bin目錄下。尋找setDomainEnv.sh檔案。

2)使用正文編輯器開啟setDomainEnv.sh檔案。在檔案中新增以下行來設定:

MEM_ARGS="-Xms8g -Xmx8g -XX:MaxPermSize=4g -XX:MaxDirectMemorySize=4g"

MEM_ARGS="-Djava.awt.headless=true -Dfineio.read_mem_limit=2 -Dfineio.write_mem_limit=1"

3)儲存並關閉setDomainEnv.sh檔案

4)重啟WebLogic Server以使修改生效。

5.2 Windows

1)進入WebLogic域(Domain)的bin目錄下。尋找setDomainEnv.cmd檔案。

2)使用正文編輯器開啟setDomainEnv.cmd檔案。在檔案中新增以下行來設定:

set MEM_ARGS=-Xms8g -Xmx8g -XX:MaxPermSize=4g -XX:MaxDirectMemorySize=4g

set MEM_ARGS=-Djava.awt.headless=true -Dfineio.read_mem_limit=2 -Dfineio.write_mem_limit=1

3)儲存並關閉setDomainEnv.cmd檔案

4)重啟WebLogic Server以使修改生效。

6. 修改WebSphere下工程記憶體

1)使用管理者憑據登入到 WebSphere 管理控制檯。

2)在導航欄,點選「伺服器>伺服器類型>WebSphere Application Server」。

3)點選需要修改的應用名稱,點選「伺服器基礎結構>Java和進程管理>進程定義」。

4)點選「Java虛擬機」,即可修改初始堆大小和最大堆大小。

5)在「通用 JVM 參數」中,可修改和新增一些JVM參數。

-Xss1024k

-XX:MaxDirectMemorySize=4096m

-Dfineio.read_mem_limit=2

-Dfineio.write_mem_limit=1

6)完成修改後,點選「應用」即可儲存對伺服器配置的更改。

7)重啟WebSphere伺服器以使修改生效。

7. 修改WildFly下工程記憶體

1)開啟Wildfly安裝目錄,導航到Wildfly的配置檔案目錄。在 Wildfly10 及更高版本中,該目錄位於standalone/configuration。

2)找到名為standalone.conf(Linux)或standalone.conf.bat(Windows)的檔案,並使用正文編輯器開啟它。

3)在開啟的檔案中,可以找到關於JVM設定的部分。在JAVA_OPTS變數中,您可以設定JVM的記憶體參數。


附件列表


主题: 部署整合
已经是第一篇
已经是最后一篇
  • 有帮助
  • 没帮助
  • 只是浏览
中文(繁體)

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

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

不再提示

9s后關閉

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

反馈已提交

网络繁忙