以下是 JVM 常见十大配置参数:
1. -Xms : 初始堆大小。 只要启动,就占用的堆大小。
2. -Xmx : 最大堆大小。 java.lang.OutOfMemoryError: Java heap这个错误可以通过配置-Xms和-Xmx参数来设置。
3. -Xss : 栈大小分配。 栈是每个线程私有的区域,通常只有几百K大小,决定了函数调用的深度,而局部变量、参数都分配到栈上。
当出现大量局部变量,递归时,会发生栈空间OOM(java.lang.StackOverflowError)之类的错误。
4. XX:NewSize :设置新生代大小的绝对值。
5. -XX:NewRatio : 设置年轻代和年老代的比值。 比如设置为3,则新生代: 老年代=1:3,新生代占总heap的1/4。
6. -XX:MaxPermSiz e:设置持久代大小。
java.lang.OutOfMemoryError:PermGenspace这个OOM错误需要合理调大PermSize和MaxPermSize大小。
7. -XX:SurvivorRatio :年轻代中Eden区与两个Survivor区的比值。注意,Survivor区有form和to两个。比如设置为8时,那么eden:form:to=8:1:1。
8. -XX:HeapDumpOnOutOfMemoryError :发生OOM时转储堆到文件,这是一个非常好的诊断方法。
9. -XX:HeapDumpPath: 导出堆的转储文件路径。
10. -XX:OnOutOfMemoryError :OOM时,执行一个脚本,比如发送邮件报警,重启程序。后面跟着一个脚本的路径。
今天,再给大家推荐一个腾讯课堂的 《Java虚拟机》 训练营课程,原价99元,粉丝特惠,仅需 0.02元 !
讲师将带着大家棒打 Java 虚拟机这个 进阶大厂的拦路虎,从理论到实战逐步攻克。
正好宅在家,可以好好学习了。
点击「 阅读原文 」带你飞~
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。