在CentOS上配置WebLogic的JVM參數,需先定位域的啟動腳本。通常路徑為:
/path/to/weblogic/domain/bin/startWebLogic.sh
(AdminServer)或/path/to/weblogic/domain/bin/startManagedWebLogic.sh
(受管服務器)。
注意:修改前務必備份原腳本(如cp startWebLogic.sh startWebLogic.sh.bak
),避免配置錯誤導致無法啟動。
打開startWebLogic.sh
,找到設置JAVA_OPTIONS
或MEM_ARGS
的行(通常在腳本中段),在其下方添加自定義JVM參數。常見參數及示例如下:
-Xms
:初始堆內存大?。ㄈ?code>-Xms2g,表示初始分配2GB);-Xmx
:最大堆內存大?。ㄈ?code>-Xmx4g,表示最大不超過4GB)。-Xms
和-Xmx
設為相同值,避免堆內存動態調整帶來的性能損耗(如-Xms4g -Xmx4g
)。Java 8及以上版本用**元空間(Metaspace)**替代永久代,需設置:
-XX:MetaspaceSize
:初始元空間大?。ㄈ?code>-XX:MetaspaceSize=512m);-XX:MaxMetaspaceSize
:最大元空間大?。ㄈ?code>-XX:MaxMetaspaceSize=1g)。-XX:NewRatio
:新生代與老年代的比例(如-XX:NewRatio=3
,表示新生代占堆的1/4,老年代占3/4)。-XX:NewRatio=2
)。-XX:SurvivorRatio
:Eden區與單個Survivor區的比例(如-XX:SurvivorRatio=8
,表示Eden區占新生代的8/10,每個Survivor區占1/10)。-XX:SurvivorRatio=6
)。根據應用需求選擇合適的垃圾回收器:
-XX:+UseG1GC
;-XX:+UseConcMarkSweepGC
;-XX:+UseParallelGC
。-XX:+UseG1GC
)。-XX:ParallelGCThreads
:GC線程數(如-XX:ParallelGCThreads=8
,建議設為CPU核心數的1/2~1倍)。Ctrl+O
保存,Ctrl+X
退出(vim編輯器)。./stopWebLogic.sh
停止服務器,再執行./startWebLogic.sh
啟動,觀察啟動日志確認參數生效(日志路徑通常為/path/to/weblogic/domain/servers/AdminServer/logs/AdminServer.log
)。jinfo -flags <PID>
命令(<PID>
為WebLogic進程ID,可通過ps -ef | grep weblogic
獲?。?,檢查JVM參數是否包含配置的項。jstat -gcutil <PID> 1000
命令(每秒刷新一次),監控GC頻率、停頓時間等指標,若Full GC頻繁,需調整堆大小或GC策略。jmap -heap <PID>
命令查看堆內存各區域使用情況,或用VisualVM
、JConsole
等工具可視化監控。通過以上步驟,可在CentOS上完成WebLogic的JVM參數配置。需根據應用特性(如內存占用、并發量、GC需求)靈活調整,持續監控優化。