Skip to content

java memory model

upan edited this page Jun 20, 2016 · 16 revisions

Java 内存模型

栈(Stack)

相关启动参数: -Xss 每个线程的栈大小

根据应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。一般小的应用,如果栈不是很深,应该是128k够用,大的应用建议使用256k。这个选项对性能影响比较大。

本地方法栈

方法区(Method Area)

相关启动参数 -XX:PermSize 设置Perm区的初始大小,默认物理内存的1/64 -XX:MaxPermSize 设置Perm区的最大值,物理内存的1/4

堆(Heap)

相关启动参数 -Xms 设置堆内存初始化大小,默认是物理内存的1/64但是小于1G -Xmx 设置堆内存最大值,默认是物理内存的1/4但小于1G,服务器一般设置 -Xms、-Xmx相等以避免每次GC后调整堆的大小

Clone this wiki locally