Tomcat内存大小配置及查看内存情况

tech2024-05-07  82

Tomcat在大并发下,出现内存溢出的问题,可以通过修改Tomcat的内存大小解决此问题。

一、修改Tomcat内存大小

a、Linux服务器下

#打开在Tomcat的安装目录的bin文件的catalina.sh文件 vim tomcat目录/bin/catalina.sh #在注释后面加上如下脚本: #JAVA_OPTS='-Xms512m -Xmx1024m' 是设置Tomcat使用的内存的大小. JAVA_OPTS='-Xms512m -Xmx1024m' #XX:PermSize=64M -XX:MaxPermSize=256m 指定类空间(用于加载类)的内存大小 JAVA_OPTS="$JAVA_OPTS -server -XX:PermSize=64M -XX:MaxPermSize=256m"

 

 b、Windwos服务器下

#修改Tomcat目录下/bin/catalina.bat #找到下面的内容 %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% #在%DEBUG_OPTS%后追加-Xms256m -Xmx512m

 

 上面的两种方法修改完后记得重启服务

二、查看现有Tomcat的内存大小

1、启动Tomcat

2、访问 http://localhost:8080/manager/status ,并输入您在安装Tomcat时输入的用户与口令,如 admin ,密码 admin(密码是您在tomcat安装时输入的)

#注:添加用户,修改conf/tomcat-users.xml <?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="tomcat"/> <role rolename="role1"/> <role rolename="manager"/> <role rolename="admin"/> <user username="tomcat" password="tomcat" roles="tomcat"/> <user username="both" password="tomcat" roles="tomcat,role1"/> <user username="role1" password="tomcat" roles="role1"/> <user username="admin" password="admin" roles="admin,manager"/> </tomcat-users>

三、进入了Server Status页面后可以查看到具体的内存情况

Free memory: 423.01 MB Total memory: 510.06 MB Max memory: 1008.06 MB​​​​​​​

空闲内存、总内存、最大可使用内存三个数据。确定了最大内存足够大时,Tomcat即可正常运转

 

 

 

 

最新回复(0)