码迷,mamicode.com
首页 > 编程语言 > 详细

1.java应用jvm原理及参数调优

时间:2017-12-27 18:17:51      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:nbsp   vivo   图片   java程序   jvm   分享图片   统一   http   字节   

什么是jvm?

虚拟机 ,字节码,平台无关

技术分享图片

jvm是按照运行时数据的存储结构来划分内存结构的,jvm在运维java程序时,将它们划分成几种不同格式的数据,分别存储在不同的区域,这些数据统一称为运行时数据。运行时数据包括java程序本身的数据信息和jvm运行java需要的额外数据信息。

jvm堆配置参数

1  -Xms 初始堆大小

默认物理内存的1/641(<1g)

2  -Xms 最大堆大小

默认物理内存的1/4(<1GB),实际中建议不大于4G。

3 一般建议设置 -Xms= -Xmx 

好处是避免每次在gc后,调整堆的大小,减少系统内存分配开销

4 整个堆的大小= 年轻代大小+年老代大小+持久代大小.

 jvm  内存结构

技术分享图片

 jvm新生代(young generation)

新生代=1个eden区+2个Survivor区

-Xmn 年轻代大小(1.4 or lator)

-XX:NewSize, -XX:MaxNewSize (设置年轻代大小(for1.3/1.4))

默认值大小为整个堆的3/8

-XX:NewRatio

年轻代(包括Eden和两个survivor区)与年老代的比值(除去持久代)

Xms=Xmx  并且设置了Xmn的情况下,该参数不需要进行设置。

-XX:SurvivorRatio

Eden区与Survivor区的大小比值,设置为8,则两个Survivor区与一个Eden区的比值为2.8,一个Survivor区占整个年轻代的1/10

用来存放jvm 刚分配的java对象。

技术分享图片

 

java 持久代(perm generation)

1.代=整个堆-年轻代大小-老年代大小

1.

1.java应用jvm原理及参数调优

标签:nbsp   vivo   图片   java程序   jvm   分享图片   统一   http   字节   

原文地址:https://www.cnblogs.com/wolfboy55-163-com/p/8126146.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!