JVM内存分配

堆内存

JVM 初始分配的内存由-Xms 指定,默认是物理内存的 1/64;

JVM 最大分配的内存由-Xmx 指定,默认是物理内存的 1/4;

默认空余堆内存小于 40% 时,JVM 就会增大堆直到-Xmx 的最大限制;空余堆内存大于 70% 时,JVM 会减少堆直到 -Xms 的最小限制;

因此服务器一般设置-Xms、-Xmx 相等以避免在每次 GC 后调整堆的大小。对象的堆内存由称为垃圾回收器的自动内存管理系统回收。


非堆内存分配

JVM 使用-XX:PermSize 设置非堆内存初始值,默认是物理内存的 1/64;

由 XX:MaxPermSize 设置最大非堆内存的大小,默认是物理内存的 1/4;

-Xmn2G:设置年轻代大小为 2G;

-XX:SurvivorRatio,设置年轻代中 Eden 区与 Survivor 区的比值。
阅读更多
个人分类: JVM
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭