-Xms(初始堆大小)和-Xmx(最大堆大小)指定堆内存,建议设置为相同值避免动态调整开销,如-Xms2g -Xmx2g。-XX:+UseG1GC),平衡吞吐量和延迟,可搭配-XX:MaxGCPauseMillis设置最大停顿时间。-XX:NewSize和-XX:MaxNewSize设置新生代大小,-XX:SurvivorRatio调整Eden区与Survivor区比例(如-XX:SurvivorRatio=8)。StringBuilder/StringBuffer替代字符串拼接,减少String对象频繁创建。ArrayList(随机访问)或LinkedList(频繁插入/删除)。sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo "/swapfile none swap sw 0 0" >> /etc/fstab
/etc/sysctl.conf,如降低vm.swappiness(默认60,可设为10)减少内存交换倾向。jstat、jmap、VisualVM等工具分析GC日志和内存使用情况,定位瓶颈。JAVA_OPTS)统一管理参数,避免硬编码在代码中。参考来源: