这里向大家描述一下如何使用Tomcat配置JVM参数,Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个java虚拟机。您可以选择自己的需要选择不同的操作系统和对应的JDK的版本,但还是推荐您使用Sun公司发布的JDK。
主要通过以下的几个jvm参数来设置堆内存的:
-Xmx512m | 最大总堆内存,一般设置为物理内存的1/4 |
-Xms512m | 初始总堆内存,一般将它设置的和最大堆内存一样大,这样就不需要根据当前堆使用情况而调整堆的大小了 |
-Xmn192m | 年轻带堆内存,sun官方推荐为整个堆的3/8 |
堆内存的组成 | 总堆内存 = 年轻带堆内存 + 年老带堆内存 + 持久带堆内存 |
年轻带堆内存 | 对象刚创建出来时放在这里 |
年老带堆内存 | 对象在被真正会回收之前会先放在这里 |
持久带堆内存 | class文件,元数据等放在这里 |
-XX:PermSize=128m | 持久带堆的初始大小 |
-XX:MaxPermSize=128m |
持久带堆的最大大小,eclipse默认为256m。如果要编译jdk这种,一定要把这个设的很大,因为它的类太多了。
|
一、windows环境下
1、添加JVM参数
到Tomcat的bin目录下,打开文件catalina.bat,添加如下参数,然后保存。
set JAVA_OPTS=-server -Xms8024m -Xmx8048m -XX:PermSize=512m -XX:MaxPermSize=512m -Xss2048k
或者
set "JAVA_OPTS=%JAVA_OPTS% -Xms9024m -Xmx9024m -Xss512k"
2、检验是否生效
双击bin目录下的startup.bat启动tomcat,然后命令行窗口中输入命令jvisualvm(打开JDK自带的JVM工具Java Visual),查看tomcat的JVM参数。
jvisualvm
如下图所示,JVM启动参数和我们添加的参数一样,说明有效。
如果jvisualvm 没有看到tomcat , 可以手工添加 JMX连接,写上具体的站点和端口,如下图:
二、Linux环境下
1、添加JVM参数
到Tomcat的bin目录下,打开文件catalina.sh,添加如下参数,然后保存。
JAVA_OPTS="-Xms512M -Xmx1024M"
2、检验是否生效
执行startup.sh启动tomcat。
./startup.sh
1
查看JVM参数,输入如下命令。
jps -v
如下图所示,JVM启动参数和我们添加的参数一样,说明有效。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端