java jvm常见配置汇总(Xmx Xms Xss Xmn)

堆设置
-Xms:初始堆大小
-Xmx:最大堆大小

-Xmn2g: 设置年轻代大小为2G。整个堆大小=年轻代大小 + 年老代大小 +
持久代大小。持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对
系统性能影响较大, Sun官方推荐配置为整个堆的3/8。

-Xss128k: 设置每个线程的栈大小。 JDK5.0以后每个线程堆栈大小为1M,以前每个线程
堆栈大小为256K。更具应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值
能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验
值在3000~5000左右。

-XX:NewSize=n:设置年轻代大小
-XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1: 3
,年轻代占整个年轻代年老代和的1/4
-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两
个。如: 3,表示Eden: Survivor=3: 2,一个Survivor区占整个年轻代的1/5
-XX:MaxPermSize=n:设置持久代大小

收集器设置
-XX:+UseSerialGC:设置串行收集器
-XX:+UseParallelGC:设置并行收集器
-XX:+UseParalledlOldGC:设置并行年老代收集器
-XX:+UseConcMarkSweepGC:设置并发收集器

垃圾回收统计信息
-XX:+PrintGC
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-Xloggc:filename

并行收集器设置
-XX:ParallelGCThreads=n:设置并行收集器收集时使用的CPU数。 并行收集线程数。
-XX:MaxGCPauseMillis=n:设置并行收集最大暂停时间
-XX:GCTimeRatio=n:设置垃圾回收时间占程序运行时间的百分比。公式为1/(1+n)

并发收集器设置
-XX:+CMSIncrementalMode:设置为增量模式。适用于单CPU情况。
-XX:ParallelGCThreads=n:设置并发收集器年轻代收集方式为并行收集时,使用的CPU数
。并行收集线程数。


-Xmx设置JVM堆内存大小,这并不是所有JVM内存

猜你喜欢

转载自forlan.iteye.com/blog/2335911
今日推荐