Tomcat服务器Day07-JVM配置

JVM配置

  • 基本概念
  • JVM内存模型
  • JVM内存配置

基本概念

  • 通常情况下的JVM配置是指内存分配
  • 在大部分情况下,特别是生产环境下 ,JVM默认分配的内存无法满足需求,所以需要手动修改Tomcat启动时的内存参数分配

JVM内存模型

Tomcat服务器Day07-JVM配置_第1张图片

JVM内存配置

  • Windows: catalina.bat
set JAVA_OPTS=-server -Xms2048m -Xmx2048m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -XX:SurvivorRatio=8
  • Linux: catalina.sh
JAVA_OPTS="-server -Xms2048m -Xmx2048m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -XX:SurvivorRatio=8"
参数 含义
-Xms 堆内存的初始大小
-Xmx 堆内存的最大大小
-Xmn 新生代的内存大小,推荐为堆内存空间的 3 8 \cfrac{3}{8} 83
-XX:MetaspaceSize 元空间内存的初始大小
-XX:MaxMetaspaceSize 元空间内存最大大小
-XX:InitialCodeCacheSize
-XX:ReservedCodeCacheSize
代码缓存区大小
-XX:NewRation 设置新生代和老年代的大小比例
这样设置新生代的大小会随着整个堆大小动态扩展
比如 -XX:NewRation=3 设置新生代和老年代的比例为 1 : 3 1:3 1:3,其中新生代占 1 4 \cfrac{1}{4} 41 ,老年代占 3 4 \cfrac{3}{4} 43
-XX:SurvivorRation 设置伊甸园区Eden和幸存区的大小比例
比如 -XX:SurvivorRation=8 表示伊甸园区Eden和幸存区的比例是 8 : 1 8:1 8:1
伊甸园区Eden占新生代大小的 8 10 \cfrac{8}{10} 108 ,幸存区From和幸存区To各占新生代的 1 10 \cfrac{1}{10} 101 . 这两个幸存区的大小是一样的
  • 建议内存的初始大小和最大大小设置为一样的,这样JVM在运行时就不会重新开辟内存空间,可以提高性能
  • 配置完成后,重新启动Tomcat,使配置生效

你可能感兴趣的:(Improve,ARCHITECTOR,jvm,tomcat)