一、参数说明

-Xms:                         JVM初始分配的堆内存

-Xmx:                         JVM最大允许分配的堆内存,按需分配

-XX:PermSize:           JVM初始分配的非堆内存

-XX:MaxPermSize:    JVM最大允许分配的非堆内存,按需分配


补充

1、JVM初始分配的堆内存由-Xms指定,默认是物理内存的1/64

2、JVM最大分配的堆内存由-Xmx指定,默认是物理内存的1/4

3、默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制

4、空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制

因此服务器一般设置-Xms、-Xmx 相等以避免在每次GC 后调整堆的大小


二、windows服务器配置内存

1、进入tomcat的bin目录,找到catalina.bat文件

在这里插入图片描述


2、打开catalina.bat,在@echo off下新增以下配置(内存大小可自行调整

set JAVA_OPTS=-server -Xms512m -Xmx512m -XX:PermSize=512M -XX:MaxPermSize=1024M

在这里插入图片描述


3、配置完成重启tomcat


三、linux服务器配置内存

1、进入tomcat的bin目录,找到catalina.sh文件

在这里插入图片描述


2、打开catalina.sh,新增以下配置(内存大小可自行调整

JAVA_OPTS="-server -Xms200m -Xmx200m -XX:PermSize=124m -XX:MaxPermSize=256m -XX:MaxNewSize=256m"

在这里插入图片描述


3、配置完成重启tomcat


四、查看内存配置是否生效

方式一:重启tomcat,如果看到以下内容,说明配置成功(部分情况即使配置成功也有可能没有打印以下信息,这时可以使用ps -ef|greo XXX命令查看进程信息)

在这里插入图片描述


方式二:使用ps -ef|greo XXX命令查看进程信息

在这里插入图片描述


五、配置无效的情况

如果在tomcat配置多个JAVA_OPTS,配置位置最后的一项生效,其他靠前的配置不生效

如下,这时内存的配置是不生效的,但远程调试的配置是生效的

在这里插入图片描述


如下,这时远程调试的配置是不生效的,但是内存的配置生效的

在这里插入图片描述


六、在tomcat配置JAVA_OPTS配置多个功能

示例一

在这里插入图片描述

在这里插入图片描述


示例二

在这里插入图片描述

在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐