您可以通过以下步骤动态设置Tomcat中的JVM参数:
打开Tomcat的启动脚本(Linux/Unix)或(Windows)。
找到JAVA_OPTS变量,添加需要修改的JVM参数,例如:
exportJAVA_OPTS="-Xms256m-Xmx512m-XX:MaxPermSize=256m"
上面的示例将JVM的最小堆内存设置为256MB,最大堆内存设置为512MB,最大永久代大小设置为256MB。
保存并关闭启动脚本。
重新启动Tomcat以使新的JVM参数生效。
此外,JVM参数可以通过JavaManagementExtensions(JMX)动态设置。JMX是Java中的一种管理和监控机制,允许您通过JConsole或其他JMX客户端工具连接到JVM,实时监控和管理JVM。在JMX中,JVM参数可以通过MBean动态设置。
JVM内存有不同类型
更改Windows中JVM内存的大小:
情况一:对于解压版本的Tomcat,需要通过启动方式启动Tomcat。bat加载配置
添加到Tomcat垃圾桶中的
remGuessCATALINA_HOMEifnotfine
在setCURRENT_DIR=%cd%后添加,红色的是刚刚添加的。
setJAVA_OPTS=-Xms256m-Xmx512m-XX:PermSize=128M-XX:MaxNewSize=256m-XX:MaxPermSize=ss=true
情况二:安装的Tomcat版本中没有
Windows服务运行bin\读取注册表中的值,而不是设置。
编辑注册表HKEY_LOCAL_MACHINE\SOFTWARE\ApacheSoftwareFoundation\TomcatServiceManager\Tomcat5\Parameters\JavaOptions
原始值为
="C:\ApacheGroup\Tomcat5。0"
="C:\ApacheGroup\Tomcat5.0\common\endorsed"
-Xrs
Join-Xms300m-Xmx350m
重启Tomcat服务,设置生效
jvm参数说明:
-server必须作为第一个参数,启用服务器版本JDK的。在多个CPU上具有良好的性能
-XmsjavaHeap初始大小。默认值为物理内存的1/64。
-Xmxjavaheap最大值。建议设置为物理内存的80%。它无法超越物理内存。
-最小Xmnjavaheap值,通常设置为Xmx的3或1/4。
-XX:PermSize设置内存永久存储区域的初始大小。默认值为64M。
-XX:MaxPermSize设置内存永久存储区域的最大大小。默认值为64M。
-XX:SurvivorRatio=2survivor池的大小,默认为2。例如
-XX:NewSize是新生成的池的初始大小。默认值为2M。
-XX:MaxNewSize是新生成的池的最大大小。默认值为32M。
+XX:AggressiveHeap导致jvm忽略Xmx参数,疯狂吞噬1G物理内存,进而吞噬1Gswap。
-Xss每个线程的堆栈大小
-verbose:gc真实的垃圾收集信息
-Xloggc:垃圾收集日志文件指定的垃圾
-XX:+UseParNewGC缩短minor收集时间
-XX:+UseConcMarkSweepGC缩短major收集时间
-XX:userParNewGC可用于设置并行收集(更多CPU)
-XX:ParallelGCThreads可用于增加并行度(更多CPU)
-XX:UseParallelGC可用于使用并行清除配置后的收集器(多CPU)
上一篇:云计算的三种架构
下一篇:tomcat内存溢出配置