java启动参数共分为三类;
其一是 标准参数 (-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容;
其二是 非标准参数 (-X),默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足,且不保证向后兼容;
其三是 非Stable参数 (-XX),此类参数各个jvm实现会有所不同,将来可能会随时取消,需要慎重使用;
1.设置环境变量JAVA_OPTS
2.Windows下,在/bin/catalina.bat,Unix下,在/bin/catalina.sh的前面,增加 JAVA_OPTS=’-Xms256m -Xmx512m’
Tomcat 的启动参数位于安装目录 ${TOMCAT_HOME}/bin目录下, Linux *** 作系统就是 catalina.sh 文件。JAVA_OPTS,就是用来设置 JVM 相关运行参数的变量,还可以在 CATALINA_OPTS 变量中设置。关于这 2 个变量,还是多少有些区别的:
JAVA_OPTS:用于当 Java 运行时选项“start”、“stop”或“run”命令执行。
CATALINA_OPTS:用于当 Java 运行时选项“start”或“run”命令执行。
为什么有两个不同的变量?它们之间都有什么区别呢?
首先,在启动 Tomcat 时,任何指定变量的传递方式都是相同的,可以传递到执行“start”或“run”命令中,但只有设定在 JAVA_OPTS 变量里的参数被传递到“stop”命令中。对于 Tomcat 运行过程,可能没什么区别,影响的是结束程序,而不是启动程序。
第二个区别是更微妙,其他应用程序也可以使用 JAVA_OPTS 变量,但只有在 Tomcat 中使用 CATALINA_OPTS 变量。如果你设置环境变量为只使用 Tomcat,最好你会建议使用 CATALINA_OPTS 变量,而如果你设置环境变量使用其它的 Java 应用程序,例如 JBoss,你应该把你的设置放在JAVA_OPTS 变量中。
我在本地配置的:
其他暂时没用到的:
Xms与Xmx配置相同的值,为了能够在GC后不需要重新分隔计算堆区的大小而浪费资源。
JVM系列四:生产环境参数实例及分析【生产环境实例增加中】
jvm的GC日志分析
JVM常用参数配置
深入了解JVM
JVM参数与实际环境中的优化配置实践
JVM启动参数大全
Java服务GC参数调优案例
关键业务系统的JVM参数推荐(2018仲夏版)
成为Java GC专家(5)—Java性能调优原则
以下给出1G内存环境下java jvm 的参数设置参考:JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true "
JAVA_OPTS="-server -Xms768m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:
NewSize=192m -XX:MaxNewSize=384m"
CATALINA_OPTS="-server -Xms768m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m
-XX:NewSize=192m -XX:MaxNewSize=384m"
1 spoon.bat是Spoon工具中用于启动Spoon GUI的批处理文件。2 在spoon.bat文件中,可以通过设置Java虚拟机的内存参数来配置内存大小,例如:在启动Spoon GUI前,设置-Xmx参数来指定最大堆内存大小,例如:set OPT="-Xmx2048m",表示最大堆内存为2GB。
3 如果需要进一步优化Spoon工具的性能,还可以通过修改Spoon.sh(Linux)或Spoon.bat(Windows)文件中的其他参数来进行配置,例如设置Java虚拟机的默认GC算法、线程数等。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)