JVM参数

作者: 老骥码字 | 来源:发表于2020-02-15 01:08 被阅读0次

-Xms

初始堆大小。只要启动,就占用的堆大小。

-Xmx

最大堆大小。java.lang.OutOfMemoryError:Java heap这个错误可以通过配置-Xms和-Xmx参数来设置。

-Xss

栈大小分配。栈是每个线程私有的区域,通常只有几百K大小,决定了函数调用的深度,而局部变量、参数都分配到栈上。
当出现大量局部变量,递归时,会发生栈空间OOM(java.lang.StackOverflowError)之类的错误。

-XX:NewSize

设置新生代大小的绝对值。

-XX:NewRatio

设置年轻代和年老代的比值。比如设置为3,则新生代:老年代=1:3,新生代占总heap的1/4。

-XX:SurvivorRatio

年轻代中Eden区与两个Survivor区的比值。注意,Survivor区有form和to两个。比如设置为8时,那么eden:form:to=8:1:1。

-XX:MetaspaceSize

jvm8取消了设置持久代,转而使用了元空间。如果没有指定的话,元空间会根据应用程序运行时的需要动态地调整大小

-XX:MaxMetaspaceSize

设置元空间的最大值,默认是没有上限的,也就是说你的系统内存上限是多少它就是多少

-XX:HeapDumpOnOutOfMemoryError

发生OOM时转储堆到文件,这是一个非常好的诊断方法。

-XX:HeapDumpPath

导出堆的转储文件路径。

-XX:OnOutOfMemoryError

OOM时,执行一个脚本,比如发送邮件报警,重启程序,后面跟着一个脚本的路径。

JVM7 常用参数

-XX:PermSize
设置持久代初始化大小。

-XX:MaxPermSize
设置持久代大小。

java.lang.OutOfMemoryError:PermGen space 这个OOM错误需要合理调大PermSize和MaxPermSize大小。

相关文章

网友评论

      本文标题:JVM参数

      本文链接:https://www.haomeiwen.com/subject/wqnsfhtx.html