-Xms
和-Xmx
設置堆內存初始值和最大值(建議設為相同值,避免動態擴展開銷),如-Xms4g -Xmx4g
。-XX:+UseG1GC
),低延遲場景可設最大停頓時間(-XX:MaxGCPauseMillis=200
)。-XX:UseParallelGC
)提升吞吐量,或根據需求調整新生代/老年代比例(-XX:NewRatio
)。/etc/security/limits.conf
,增加nofile
限制(如* hard nofile 65535
)。/etc/sysctl.conf
,降低vm.swappiness
(如設為10)減少交換,或調整net.core.somaxconn
提升網絡連接隊列長度。HashMap
替代ArrayList
用于快速查找)。ExecutorService
)管理線程,避免頻繁創建銷毀線程。jstat
監控GC情況,jconsole
或VisualVM
分析內存使用和線程狀態。-XX:+PrintGCDetails -Xloggc:gc.log
),定位內存泄漏或GC瓶頸。-XX:CompileThreshold
調整熱點代碼編譯閾值。注意:優化前需在測試環境驗證,根據應用負載和硬件配置調整參數,避免盲目修改導致性能下降[1,2,3,4,5,6,7,8,9,10,11]。