vm.swappiness
值:減少系統對交換空間(Swap)的依賴,優先使用物理內存。編輯/etc/sysctl.conf
文件,添加vm.swappiness=10
(數值越小,越傾向于使用物理內存),執行sysctl -p
使配置生效。/etc/sysctl.conf
,添加vm.dirty_ratio=10
(當臟數據占比達到10%時觸發寫回),執行sysctl -p
生效。ulimit -n 65535
臨時設置,或修改/etc/security/limits.conf
文件(添加* soft nofile 65535
、* hard nofile 65535
)永久生效。sudo dd if=/dev/zero of=/swapfile bs=1M count=12288
(12GB=12288MB),執行sudo mkswap /swapfile
、sudo swapon /swapfile
啟用,最后將/swapfile swap swap defaults 0 0
添加到/etc/fstab
實現開機自啟。$DOMAIN_HOME/bin/setDomainEnv.sh
(Linux環境);startWebLogic.sh
或commEnv.cmd
(Windows環境)。-Xms
)與最大堆內存(-Xmx
):建議設置為相同值(如-Xms2048m -Xmx2048m
),避免JVM動態擴展堆內存帶來的性能開銷;-XX:PermSize
(初始永久代大小,如-XX:PermSize=512m
)和-XX:MaxPermSize
(最大永久代大小,如-XX:MaxPermSize=512m
);Java 8及以上版本移除了永久代,改為元空間,設置-XX:MetaspaceSize
(初始元空間大小,如-XX:MetaspaceSize=256m
)和-XX:MaxMetaspaceSize
(最大元空間大小,如-XX:MaxMetaspaceSize=512m
)。-XX:+UseG1GC
,并根據堆內存大小調整G1相關參數(如-XX:MaxGCPauseMillis=200
設置最大GC停頓時間為200ms)。setDomainEnv.sh
中的JAVA_OPTIONS
參數:-Dweblogic.threadpool.MinPoolSize=200
(最小線程數)、-Dweblogic.threadpool.MaxPoolSize=4000
(最大線程數)(64位系統經驗值,32位系統需根據JVM堆內存調整)。初始容量=20
(創建連接池時初始化的物理連接數)、最大容量=50
(連接池允許的最大物理連接數)、容量增長=5
(新增連接時的增量)。設置前需確認數據庫的最大線程數(如Oracle數據庫可通過show parameter processes
查看)。http://服務器IP:7001/console
)進入“服務器→監控→內存”頁面,查看堆內存使用率、GC次數、線程池狀態等指標。-Xmx
值;若頻繁發生Full GC,需調整垃圾回收器參數(如增大-XX:MaxGCPauseMillis
)或優化應用代碼(減少內存泄漏)。