温馨提示×

centos怎么调java参数

小樊
35
2026-10-02 19:29:08
栏目: 编程语言

在 CentOS 上调 Java 参数,通常取决于你是临时运行 Java 程序,还是通过服务(如 systemd / Tomcat)运行。下面按常见场景说明。


一、临时运行 Java 程序时设置参数

直接在命令中加 JVM 参数即可:

java -Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m -jar app.jar

常用参数说明:

  • -Xms:初始堆内存
  • -Xmx:最大堆内存
  • -XX:PermSize / -XX:MaxPermSize(JDK8 及以前)
  • -XX:MetaspaceSize / -XX:MaxMetaspaceSize(JDK8+)

示例(JDK11):

java -Xms1g -Xmx2g -XX:MetaspaceSize=128m -jar app.jar

二、通过环境变量设置(对所有 Java 生效)

1. 设置 JAVA_OPTS(常用)

export JAVA_OPTS="-Xms512m -Xmx1024m"

可写入:

vi ~/.bashrc

或

vi /etc/profile

添加:

export JAVA_OPTS="-Xms512m -Xmx1024m"

然后:

source ~/.bashrc

⚠️ 注意:JAVA_OPTS 不是 Java 自动读取的,只有在启动脚本里使用才有效(如 Tomcat)。


三、Tomcat 在 CentOS 上调整 Java 参数

方法 1:修改 setenv.sh(推荐)

cd /usr/local/tomcat/bin
vi setenv.sh

内容:

export JAVA_OPTS="-Xms512m -Xmx1024m -XX:MetaspaceSize=128m"

赋予权限:

chmod +x setenv.sh

重启 Tomcat:

systemctl restart tomcat

四、systemd 服务方式(CentOS 7+)

如果你是 systemctl 启动的 Java 服务:

vi /etc/systemd/system/your-app.service

示例:

[Service]
Environment="JAVA_OPTS=-Xms512m -Xmx1024m"
ExecStart=/usr/bin/java $JAVA_OPTS -jar /opt/app/app.jar

重新加载:

systemctl daemon-reload
systemctl restart your-app

五、查看当前 Java 参数

jps -v

或:

ps -ef | grep java

六、常见建议(生产环境)

  • 堆内存不超过物理内存 70%
  • 开启 GC 日志:
-Xlog:gc*:file=/var/log/gc.log:time

(JDK9+)


如果你能告诉我:

  • CentOS 版本
  • JDK 版本
  • 是 Tomcat / Spring Boot / 普通 Jar / 服务

我可以给你精确到文件的配置示例。

0 踩