博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
tomcat 查看和修改内存
阅读量:5242 次
发布时间:2019-06-14

本文共 2300 字,大约阅读时间需要 7 分钟。

为了解决tomcat在大进行大并发请求时,出现内存溢出的问题,请修改tomcat的内存大小,其中分为以下两种方式:

一、使用 catalina.bat 等命令行方式运行的 tomcat

查看系统最大支持内存命令:java -Xmx1024m -version

1、修改 tomcat\bin\Catalina.bat 文件

windows环境下:

在166行左右

rem Execute Java with the applicable properties ”以下每行
%_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

linux环境下:

打开在Tomcat的安装目录的bin文件的catalina.sh文件,进入编辑状态.

在注释后面加上如下脚本:
JAVA_OPTS='-Xms512m -Xmx1024m'
JAVA_OPTS="$JAVA_OPTS -server -XX:PermSize=64M -XX:MaxPermSize=256m"
其中 JAVA_OPTS='-Xms512m -Xmx1024m' 是设置Tomcat使用的内存的大小.
-XX:PermSize=64M -XX:MaxPermSize=256m 指定类空间(用于加载类)的内存大小 

保存后,重新以命令行的方式运行 tomcat ,即可,然后通过最后面介绍的如何观察tomcat现有内存情况的方法进行查看是否已经变更成功。

 

 

 

二、使用 系统中的 “服务”,或者开始菜单的可执行程序运行的tomcat

1、关闭 现在正在运行的tomcat

2.1 [注意]

[高版本tomcat配置方法]

如果是tomcat 5.5 或者是 5.0.28 之后的版本,在 Java 选项卡中,下方,会有

Inital memory Pool:   
Maximum memory Pool:
Thread stack size:
三个输入框,在这里即可不用做上面的操作,直接配置内存大小,只需要设置
Inital memory Pool 为 256
Maximum memory Pool 为 512

点击确定后,重启tomcat 生效

 

如果您是低版本的tomcat,发现没有上面那几个录入框,请看下面的操作步骤

 

[低版本tomcat配置方法]

在开始菜单中,找到“Apache Tomcat 5.0”,并选择“Configure Tomcat”,在弹出的对话框窗口中,切换到 Java VM 选项卡,并在 Java Options 输入框的最前面输入

-Xms256m -Xmx512m

即输入框中的内容会像下面的代码(与自己的环境有所区别)

-Xms256m -Xmx512m

-Dcatalina.home="C:\tomcat5"
-Djava.endorsed.dirs="C:\tomcat5\common\endorsed"
-Xrs

设置完后,点击“确定”,并重启tomcat即可。

 

三、查看现有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>

3、进入了Server Status页面,可以在JVM表格中看到 

Free memory: 241.80 MB Total memory: 254.06 MB Max memory: 508.06 MB

上面的文字即代表了,当前空闲内存、当前总内存、最大可使用内存三个数据。

确定了最大内存足够大时,tomcat即可正常运转

转载于:https://www.cnblogs.com/LLLONG/p/3326400.html

你可能感兴趣的文章
C语言字符串查找函数
查看>>
Java float保留两位小数或多位小数
查看>>
数码成像原理
查看>>
Qt中SQLite数据库编程
查看>>
MYSQL表情存储数据库报错
查看>>
zTree V3 是个好东西 功能很强大
查看>>
linux下/dev/null被误删
查看>>
sysbench的安装及使用
查看>>
汽车制造MES介绍之1 - PMC过程监控
查看>>
我的第一个python web开发框架(7)——本地部署前端访问服务器
查看>>
解决Linux用户模板文件被删除后显示不正常问题
查看>>
问题诊断神器arthas
查看>>
html转pdf、html页面保存为word文件、将页面上的table表格导出为excel
查看>>
201521123029《Java程序设计》第三周学习总结
查看>>
camera摄像原理之四:曝光和GAMMA
查看>>
AS和C#通信,Flash和.net (winform)通信
查看>>
实现简易的android 直播技术
查看>>
Android中Socket大文件断点上传
查看>>
服务没有mysql
查看>>
ubuntu iftop工具安装和参数
查看>>