在Ubuntu中优化Java性能可从JVM调优、代码优化、系统配置及监控工具四方面入手,具体如下:
JVM参数调优
-Xms和-Xmx指定初始和最大堆大小(建议设为相同值,避免动态调整开销),如-Xms2g -Xmx2g。-XX:+UseG1GC -XX:MaxGCPauseMillis=200。-XX:+UseParallelGC -XX:ParallelGCThreads=CPU核心数。-XX:NewRatio=2,或大对象直接进入老年代-XX:PretenureSizeThreshold=3M。代码优化
StringBuilder替代字符串拼接,复用对象或使用对象池。HashMap替代ArrayList用于快速查找),避免嵌套循环。系统配置优化
/etc/sysctl.conf,优化文件描述符限制(fs.file-max)、网络缓冲区(net.core.somaxconn)等。systemctl disable关闭冗余守护进程,释放内存和CPU资源。performance模式(如cpupower frequency-set -g performance)。性能监控与分析
jstat监控GC状态,jstack分析线程阻塞,jmap生成堆转储。-Xloggc:/path/to/gc.log)定位Full GC频率、停顿时间等问题,使用GCViewer等工具辅助分析。其他优化技巧
注意:调优需结合应用特性(如高并发、大数据量等),优先通过代码优化减少资源消耗,再逐步调整JVM参数,每次修改后需通过压力测试验证效果。