优秀的编程知识分享平台

网站首页 > 技术文章 正文

常用jvm的参数的理解(jvm基本参数)

nanyue 2024-10-28 16:42:00 技术文章 3 ℃

tomcat服务器的内存参数,设置最多的就是Xms -Xmx -Xmn -Xss,这几个参数了,

除了这四个,-XX:NewRatio=4 -XX:SurvivorRatio=6这两个参数也用的多

具体含义为:

-Xmx2000m:设置JVM最大可用内存为2000M。

-Xms2000m:设置JVM促使内存为2000m。一般设置与-Xmx相同,为了避免每次垃圾回收完成后JVM重新分配内存。

-Xmn9g:设置年轻代大小为9G。整个JVM内存大小=年轻代大小 + 老代大小。

此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。

-Xss64k:设置每个线程的堆栈大小。JDK5.0以后每个线程堆栈大小为1M,

以jdk5之前前每个线程堆栈大小为256K,可以调整应用的线程所需内存大小进行调整。

在相同物理内存下,这个值越小这个值能生成更多的线程。

但是每个操作系统对一个进程内的线程数是有限制的,

不可能无限生成,经验值的推荐值在3000~5000左右!!!!

-XX:NewRatio=7 新生代和老年代的比值为1:7,即年轻代占整个堆的1/8,年轻代为eden和2个s区

-XX:SurvivorRatio=6 幸存区与eden区的比例 2:6,即2个Survivor与eden区的比例为2:6,很诡异吧,不知道为什么sun要这样的定义,确实不易记住哦

Tags:

最近发表
标签列表