前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JVM 内存区域大小参数设置

JVM 内存区域大小参数设置

作者头像
飞天小子
修改2020-02-29 16:01:47
8.5K0
修改2020-02-29 16:01:47
举报

jmeter工具使用系列

jmeter基础内容在线公开课

jmeter性能测试在线公开课

接口自动化课程

性能测试课程

性能测试常见面试题

性能测试技能树JVM内存包括区域

Heap(堆区)   New Generation(新生代)   Eden 伊甸园   Survivor From   Survivor To   Old Generation(老年代) 方法区   Permanent Generation(持久代)   Stack(栈区)   Metaspace(元空间)   Direct ByteBuffer(堆外内存) 通过JVM启动参数来配置以上内存空间   Heap(堆)内存大小设置   -Xms512m 设置JVM堆初始内存为512M   -Xmx1g 设置JVM堆最大可用内存为1G New Generation(新生代)内存大小设置   -Xmn256m 设置JVM的新生代内存大小(-Xmn 是将NewSize与MaxNewSize设为一致。256m),同下面两个参数   -XX:NewSize=256m   -XX:MaxNewSize=256m

通过新生代和老年代内存的比值来设置新生代大小   -XX:NewRatio=3   设置新生代(包括Eden和两个Survivor区)与老年代的比值。设置为3,则新生代与老年代所占比值为1:3,新生代占整个堆栈的1/4

Survivor内存大小设置   -XX:SurvivorRatio=8   设置为8,则两个Survivor区与一个Eden区的比值为2:8,一个Survivor区占整个新生代的1/10

Eden内存大小设置 新生代减去2*Survivor的内存大小就是Eden的大小

Old Generation(老年的)的内存大小设置   堆内存减去新生代内存   如上面设置的参数举例如下:   老年代初始内存为:512M-256M=256M   老年代最大内存为:1G-256M=768M

Stack(栈)内存大小设置   -Xss1m   每个线程都会产生一个栈。在相同物理内存下,减小这个值能生成更多的线程。如果这个值太小会影响方法调用的深度

Permanent Generation(持久代)内存大小设置   方法区内存分配(JDK8以前的版本使用,JDK8以后没有持久代了,使用的MetaSpace)   -XX: PermSize=128m 设置持久代初始内存大小128M   -XX:MaxPermSize=512m 设置持久代最大内存大小512M

Direct ByteBuffer(直接内存)内存大小设置   -XX:MaxDirectMemorySize   当Direct ByteBuffer分配的堆外内存到达指定大小后,即触发Full GC。该值是有上限的,默认是64M,最大为sun.misc.VM.maxDirectMemory()。   在程序中可以获得-XX:MaxDirectMemorySize的设置的值

设置新生代代对象进入老年代的年龄   -XX:MaxTenuringThreshold=15

  设置垃圾最大年龄。如果设置为0的话,则新生代对象不经过Survivor区,直接进入老年代。

  对于老年代比较多的应用,可以提高效率。如果将此值设置为一个较大值,则新生代对象会在Survivor区进行多次复制,这样可以增加对象在新生代的存活时间,增加在新生代即被回收的概论   最大值为15岁,因为对象头中用了4位进行存储垃圾年龄 【1111(二进制)=15(十进制)】

不常用的参数   -XX:MaxHeapFreeRatio=70   GC后java堆中空闲量占的最大比例,大于该值,则堆内存会减少

  -XX:MinHeapFreeRatio=40   GC后java堆中空闲量占的最小比例,小于该值,则堆内存会增加

  -XX:PretenureSizeThreshold=1024   (单位字节)对象大小大于1024字节的直接在老年代分配对象

  -XX:TLABWasteTargetPercent =1   TLAB占eden区的百分比 默认1%

jmeter工具使用系列

jmeter基础内容在线公开课

jmeter性能测试在线公开课

接口自动化课程

性能测试课程

性能测试常见面试题

性能测试技能树

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档