Ubuntu上提升Java程序稳定性的实用方案
一 运行环境与进程管理
二 JVM内存与GC策略
三 应用代码与异常处理
四 监控、日志与系统层面优化
五 快速检查清单
| 检查项 | 关键动作 | 验证方式 |
|---|---|---|
| 进程托管 | systemd配置Restart=always,日志输出到文件 | sudo systemctl status java-service;journalctl -u java-service -f |
| 资源限制 | 设置LimitNOFILE;检查ulimit -n | cat /proc/ |
| JDK版本 | 使用update-alternatives统一版本;设置JAVA_HOME | java -version;echo $JAVA_HOME |
| 内存与GC | 固定**-Xms/-Xmx**;启用G1 GC;设置MaxMetaspaceSize | jstat -gc |
| 日志与诊断 | 应用日志规范;开启GC日志;准备jstack/jmap | grep -i error app.log;ls -lh gc-*.log |