Ubuntu上Tomcat内存设置建议
总体原则
按内存规模的起步配置
| 服务器可用内存 | 建议堆(-Xms/-Xmx) | 元空间建议 | 备注 |
|---|---|---|---|
| ≤2 GB | 512 MB – 1 GB | 128–256 MB | 保守起步,重业务需评估升级内存 |
| 4 GB | 2 GB | 256–512 MB | 通用Web应用常见起点 |
| 8 GB | 4 GB | 512 MB – 1 GB | 并发较高时优先增加堆或优化应用 |
| 16 GB | 8 GB | 1–2 GB | 结合GC日志与停顿目标再微调 |
| ≥32 GB | 12–16 GB(视负载) | 2–4 GB | 考虑G1/ZGC;避免把堆设得过大导致GC停顿与寻址压力上升 |
配置方式与关键参数示例
export CATALINA_OPTS="$CATALINA_OPTS -server -Xms2g -Xmx2g \
-XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m \
-XX:+UseG1GC -XX:MaxGCPauseMillis=200 \
-XX:+AlwaysPreTouch -XX:+PrintGCDetails -XX:+PrintGCDateStamps \
-Xloggc:/var/log/tomcat/gc.log -Dfile.encoding=UTF-8"
export CATALINA_OPTS="$CATALINA_OPTS -server -Xms4g -Xmx4g \
-XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=1g \
-XX:+UseZGC -XX:+AlwaysPreTouch \
-Xlog:gc*:file=/var/log/tomcat/gc.log:time -Dfile.encoding=UTF-8"
验证与常见误区