JVM 参数

Xms : 最小堆

Xmx : 最大堆 (一般和Xms配置成一样以避免每次gc后JVM重新分配内存,扩容消耗)

Xmn:  年轻代内存大小,整个JVM内存=年轻代 + 年老代 + 持久代 

Xss  : 栈大小

XX:PermSize:最小永久代

XX:MaxPermSize: 最大永久代 (JDK 1.8:XX:MetaspaceSize,XX:MaxMetaspaceSize)

 

 

如果发生oom(out of menery)异常时,排除法如下:

  1、看gc日志,如果为永久代容量不足,则扩大年老代的容量。(JDK1.6之前)

  2、看gc日志,如果为old代容量不足,则可以适当调大。查看是否有内存溢出,即对象逃逸。

  3、看日志,如果yong gc 多次,则可以扩大yong代容量。

 

堆的分配:

  1、年老代,默认占用整个堆的2/3

  2、年轻代,默认占用整个堆的1/3

    eden默认占用年轻代的4/5

    s1占用年轻代的1/10  

    s2占用年轻代的1/10  

 

元数据取代了堆空间中的年老代(方法区),元数据区和永久代本质上都是方法区的实现。方法区存放虚拟机加载的类信息,静态变量,常量等数据。 

 

运行内存划分图:

 

 

转载于:https://www.cnblogs.com/chen--biao/p/10147094.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值