Tomcat--JVM配置

本文详细解析了JVM内存配置的常见参数,包括-Xms、-Xmx等,阐述了如何在Windows和Linux环境下通过catalina.bat和catalina.sh文件调整Tomcat的JVM内存分配。

JVM配置

最常见的JVM配置当属内存分配,因为在绝大多数情况下,JVM默认分配的内存可能不能够满足我们的需求 ,特别是在生产环境,此时需要手动修改Tomcat启动时的内存参数分配。

JVM内存模型图

在这里插入图片描述

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=512m -XX:SurvivorRatio=8'
序号参数含义
1-Xms堆内存的初始大小
2-Xmx堆内存的最大大小
3-Xmn新生代的内存大小,官方建议是整个堆的3/8
4-XX:MetaspacesSize元空间内存初始大小,在JDK1.8之前为:-XX:PermSize(永久代)
5-XX:MaxMetaspaceSize元空间内存最大大小,在JDK1.8之前为 -XX:MaxPermSize(永久代)
6-XX:InitialCodeCacheSize
-XX:ReservedCodeCacheSize
代码缓存区大小
7-XX:NewRatio设置新生代和老年带的相对大小比例。这种方式的优点是新生代大小会随着整个堆大小动态扩展。
如-XX:NewRatio=3
指定老年带 / 新生代 为 3 / 1
老年带占堆大小的3/4,新生代占1/4
8-XX:SurvivorRatio指定伊甸区(Eden)与幸存区大小比例。
如-XX:SurvivorRatio=10
表示伊甸区是幸存区(To)大小的10倍(也是幸存区From的10倍)。
所以,伊甸区占新生代大小的10 / 12,幸存区From和幸存区To每个占新生代的1 / 12。注意:两个幸存区永远是一样大的

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值