堆参数
-Xms : 堆初始值
-Xmx :堆最大值
-Xmn :新生代大小
-XX:SurvivorRatio: Eden区所占比例,默认8(80%)
实际配置-Xms与-Xmx大小相等的原因
默认堆内空余内存小于40%,JVM会增大内存到-Xmx;堆内空余内存大于70%时,JVM会减少内存到-Xms最小限制。因此服务器一般设置-Xms、-Xmx相等以避免在每次GC 后调整堆的大小。
栈参数
-Xss :栈空间大小,栈是线程独占的,该参数指一个线程使用的栈空间大小。默认1M。
实际使用
-XX:ParallelGCThreads :指定并行GC线程的数量
当 CPU 数量小于8, ParallelGCThreads 的值等于 CPU 数量;
当 CPU 数量大于 8 时,则使用公式:
ParallelGCThreads = 8 + ((N - 8) * 5/8) = 3 +((5*CPU)/ 8);