在Jetty 的VM参数中设置:
-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

在tomcat运行环境中设置:
window环境 startup.bat第一行
SET CATALINA_OPTS= -Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

linux环境在catalina.sh

"if [ $have_tty -eq 1 ]; then"之后增加
  JAVA_OPTS="-server -Xms256m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m"

1、对于安装版的TOMCAT:

进入TOMCAT的安装目录下的bin目录,双击tomcat6w.exe。点击Java选项卡,可设置初始化内存,最大内存,线程的内存大小。
初始化内存:如果机器的内存足够大,可以直接将初始化内存设置为512M,如果机器内存较小可适当调小,对于运行了EJB的应用,最好不要低于128M。
最大内存:最大内存目前设置为512M.
线程内存大小:目前配置为1024KB,这也是JDK5.0后的默认配置。
对于容器下运行了多个WEB应用时,尽量将相同的JAR包转移到TOMCAT的lib下,此外还需要在JAVA OPTIONS加上如下配置:
-XX:PermSize=16m
-XX:MaxPermSize=128m
此配置表示JAVA永久保存区域(即不会被虚拟机回收)初始大小为16M,最大为128M。

2、对于解压版的TOMCAT:

如果是WINDOWS操作系统,修改catalina.bat文件;否则修改catalina.sh文件。只需要在文件的头部加上"set JAVA_OPTS=-Xms512m -Xmx512m -Xss1024k”,数值分别对应了初始化的最小内存,最大内存,线程内存大小。如果JDK的版本是5.0之后的,线程内存可以不用设置。

3、linux系统下修改方法

在/usr/local/apache-tomcat-5.5.23/bin目录下的catalina.sh
添加:JAVA_OPTS=’-Xms512m -Xmx1024m’
要加“m”说明是MB,否则就是KB了,在启动tomcat时会报内存不足。
-Xms:初始值
-Xmx:最大值
-Xmn:最小值

对于容器下运行了多个WEB应用时,尽量将相同的JAR包转移到TOMCAT的lib下,此外还需要在JAVA OPTS后加上如下配置:
-XX:PermSize=16m -XX:MaxPermSize=128m

即为:JAVA_OPTS=’-Xms256m –Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m’
此配置表示JAVA永久保存区域(即不会被虚拟机回收)初始大小为16M,最大为128M。

修改内存后,可启动TOMCAT,输入http://127.0.0.1:8080,进入Status,会提示输入登录的用户名和密码,用户可以在conf/tomcat-user.xml中配置(配置完后需要重启TOMCAT),

1

<?xmlversion='1.0'encoding='utf-8'?>

2

<tomcat-users>

3

<rolerolename="manager"/>

4

<userusername="tomcat"password="s3cret"roles="manager"/>

5

</tomcat-users>

登录后即可看到TOMCAT当前的空闲内存和最大内存。

tomcat报Exception in thread "http-8080-36" java.lang.OutOfMemoryError: PermGen space异常的解决:

PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,

这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中,
它和存放类实例(Instance)的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对
PermGen space进行清理,所以如果你的应用中有很多CLASS的话,就很可能出现PermGen space错误,
这种错误常见在web服务器对JSP进行pre compile的时候。如果你的WEB APP下都用了大量的第三方jar, 其大小
超过了jvm默认的大小(4M)那么就会产生此错误信息了。
解决方法: 手动设置MaxPermSize大小

修改TOMCAT_HOME/bin/catalina.sh
在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行:
JAVA_OPTS="-server -XX:PermSize=128m -XX:MaxPermSize=256m”

建议:将相同的第三方jar文件移置到tomcat/shared/lib目录下,这样可以达到减少jar 文档重复占用内存的目的。

修改 tomcat 内存的更多相关文章

  1. linux下修改tomcat内存大小

    转载自:http://blog.sina.com.cn/s/blog_7fb5109d0101o49a.html 1.  出现此问题的原因:       在tomcat中发布了多个webapp引用,每 ...

  2. 修改Tomcat内存大小

    Windows下,在文件/bin/catalina.bat,Linux下,在文件/bin/catalina.sh的前面,增加如下设置: JAVA_OPTS=-Xms[初始化内存大小] -Xmx[可以使 ...

  3. Linux下修改tomcat内存

    由于服务器上放的tomcat太多,造成内存溢出. 常见的内存溢出有以下两种: java.lang.OutOfMemoryError: PermGen space java.lang.OutOfMemo ...

  4. Linux和windows下修改tomcat内存

    原文地址:https://www.cnblogs.com/wdpnodecodes/p/8036333.html 由于服务器上放的tomcat太多,造成内存溢出. 常见的内存溢出有以下两种: java ...

  5. tomcat在win10系统中安装失败的问题,修改tomcat内存

    自己以前在其他系统上安装tomcat服务都没有问题,但是在win10系统上安装就经常出现问题,自己总结了一下安装步骤: 1.首先需要配置环境变量, CATALINA_HOME 2.修改service. ...

  6. tomcat修改jvm内存

    内存大小:-Xms256M -Xmx512M -XX:PermSize=256m -XX:MaxNewSize=256m -XX:MaxPermSize=512m -Djava.awt.headles ...

  7. 增加eclipse启动的Tomcat内存的方法 tomcat内存增加

    增加eclipse启动的Tomcat内存的方法 Tomcat一般默认情况下最大最优内存设置为2G 这种情况下,修改Tomcat\bin\catalina.bat,添加如下内容 set JAVA_OPT ...

  8. Tomcat 内存设置

    大型项目或者使用了SSH 的话, Tomcat 可能会报 java.lang.OutOfmemoryError: PermGen Space Windows: 在 bin/catlina.bat 最上 ...

  9. Linux 下修改Tomcat使用的JVM内存大小

    我的服务器的配置: # OS specific support.  $var _must_ be set to either true or false. JAVA_OPTS="-Xms10 ...

随机推荐

  1. 使用device.js检测设备并实现不同设备展示不同网页

    现在很多时候会用@media来控制页面在不同分辨率的设备商展示不同效果,但是有些时候想在直接在PC上展示一个做好的页面,在mobile展示另一个页面.这个时候可以借助device.js来检测设备,然后 ...

  2. XML_PULL解析

    一.在Android应用中的XML文件来源 1.本地xml文件     本地XML文件可以放在应用根目录assets文件夹.res/xml.res/raw.SDcard卡.应用的data目录等: 除r ...

  3. MYSQL 日志文件路径错误 1067错误

    场景再现: ---------------------------------------------------------------------------------------------- ...

  4. Landsat8数据不同波段组合的用途

    2013年2月11日发射的Landsat系列最新卫星Landsat8,携带有OLI陆地成像仪和TIRS热红外传感器,Landsat8的OLI陆地成像仪包括9个波段,OLI包括了ETM+传感器所有的波段 ...

  5. ab压力测试报错: apr_socket_recv: Connection reset by peer (104)

    使用ab对网站进行压力测试,开始设置并发500,可以正常使用,当设置并发为1000,则报错: apr_socket_recv: Connection reset by peer (104) 改服务端a ...

  6. java--工具方法

    根据时间戳得到具体的时间: public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat(& ...

  7. Javascript基本算法演练 Seek and Destroy

    转载自:http://aeroj-blog.logdown.com/posts/435808 Seek and Destroy You will be provided with an initial ...

  8. unity 距离某天还有多久

    距离某一天还有多久,简单的小例子. using UnityEngine; using System.Collections; using System; public class test : Mon ...

  9. Linux学习之十一、环境变量的功能

    环境变量的功能 可以利用两个命令来查阅,分别是 env 与 export 呢! 范例一:列出目前的 shell 环境下的所有环境变量与其内容. [root@www ~]# env SHELL 告知我们 ...

  10. 全国计算机等级考试二级教程-C语言程序设计_第15章_位运算

    位运算,不适用于实数,仅仅适用于整数.字符. C语言的位运算只能操作整数.字符,实数是指数方式表示的,不适用于位运算. #define _CRT_SECURE_NO_WARNINGS #include ...