jvm内存管理

[align=left]一、JVM堆内存的划分
分为年轻代和年老代。年轻代又分为三部分:一个eden,两个survivor。
工作过程是这样的:e区空间满了后,执行minor gc,存活下来的对象放入s0, 对s0仍会进行minor gc,存活下来的的对象放入s1中,对s1同样执行minor gc,依旧存活的对象就放入年老代中;
年老代满了之后会执行major gc,这个是stop the word模式,执行major gc时所有线程都要等待,对应用可能会有影响,如果频繁进行major gc的话,有可能会出现应用超时的情况;
-xms:初始堆内存大小 -xmx:最大堆内存大小
二、持久代
持久代(perm gen)不属于堆内存,执行的是full gc,full gc对应用的影响也较大
-xx:PermSize=持久代初始内存大小 -xx:MaxPermSize=最大持久代内存大小
三、栈内存
与堆内存不同,栈内存主要存放的是临时的变量、引用对象,遵循LIFO原则
四、监控
jstat -gc pid time time指打印时间间隔
结果参数中:
s0c,s1c指2个s区空间大小
s0u,s1u指2个s区当前使用量
ec,eu指e区空间大小和当前使用量
oc,ou指年老代空间大小和当前使用量
pc,pu指持久代空间大小和当前使用量
ygc,ygct指年轻代gc次数和花费的时间
fgc,fgct指full gc次数和花费时间
gct指gc花费的总时间[align=left][/align][/align]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值