Windows环境下修改“%TOMCAT_HOME%bincatalina.bat”文件,在文件开头增加如下设置:

set JAVA_OPTS=-Xms256m -Xmx512m

Linux环境下修改“%TOMCAT_HOME%bincatalina.sh”文件,在文件开头增加如下设置:

JAVA_OPTS=’-Xms256m -Xmx512m’

其中,-Xms设置初始化内存大小,-Xmx设置可以使用的最大内存。

--------------------------------------

一、Tomcat的JVM提示内存溢出

查看%TOMCAT_HOME%logs文件夹下,日志文件是否有内存溢出错误

二、修改Tomcat的JVM

1、错误提示:java.lang.OutOfMemoryError: Java heap space

Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,有可能导致系统无法运行。常见的问题是报Tomcat内存溢出错误,Out of Memory(系统内存不足)的异常,从而导致客户端显示500错误,一般调整Tomcat的使用内存即可解决此问题。

Windows环境下修改“%TOMCAT_HOME%bincatalina.bat”文件,在文件开头增加如下设置:set JAVA_OPTS=-Xms256m -Xmx512m

Linux环境下修改“%TOMCAT_HOME%bincatalina.sh”文件,在文件开头增加如下设置:JAVA_OPTS=’-Xms256m -Xmx512m’

其中,-Xms设置初始化内存大小,-Xmx设置可以使用的最大内存。

2、错误提示: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)那么就会产生此错误信

息了。

解决方法:

在catalina.bat的第一行增加:

set JAVA_OPTS=-Xms64m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m -

XX:MaxPermSize=256m

在catalina.sh的第一行增加:

JAVA_OPTS=-Xms64m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m -

XX:MaxPermSize=256m

最终解决方案:(直接编辑所用的JVM)

在Run/Debug editconfiguration 的你要运行的tomcat里面的

vm options里面输入:

-server -XX:PermSize=256M -XX:MaxPermSize=512m

3、JVM设置

堆的尺寸

-Xmssize in bytes

设定Java堆的初始尺寸,缺省尺寸是2097152 (2MB)。这个值必须是1024个字节(1KB)的倍数,且比它大。(-server选项把缺省尺寸增加到32M。)

-Xmnsize in bytes

为Eden对象设定初始Java堆的大小,缺省值为640K。(-server选项把缺省尺寸增加到2M。)

-Xmxsize in bytes

设定Java堆的最大尺寸,缺省值为64M,(-server选项把缺省尺寸增加到128M。) 最大的堆尺寸达到将近2GB(2048MB)。

请注意:很多垃圾收集器的选项依赖于堆大小的设定。请在微调垃圾收集器使用内存空间的方式之前,确认是否已经正确设定了堆的尺寸。

垃圾收集:内存的使用

-XX:MinHeapFreeRatio=percentage as a whole number

修改垃圾回收之后堆中可用内存的最小百分比,缺省值是40。如果垃圾回收后至少还有40%的堆内存没有被释放,则系统将增加堆的尺寸。

-XX:MaxHeapFreeRatio=percentage as a whole number

改变垃圾回收之后和堆内存缩小之前可用堆内存的最大百分比,缺省值为70。这意味着如果在垃圾回收之后还有大于70%的堆内存,则系统就会减少堆的尺寸。

-XX:NewSize=size in bytes

为已分配内存的对象中的Eden代设置缺省的内存尺寸。它的缺省值是640K。(-server选项把缺省尺寸增加到2M。)

-XX:MaxNewSize=size in bytes

允许您改变初期对象空间的上限,新建对象所需的内存就是从这个空间中分配来的,这个选项的缺省值是640K。(-server选项把缺省尺寸增加到2M。)

-XX:NewRatio=value

改变新旧空间的尺寸比例,这个比例的缺省值是8,意思是新空间的尺寸是旧空间的1/8。

-XX:SurvivorRatio=number

改变Eden对象空间和残存空间的尺寸比例,这个比例的缺省值是10,意思是Eden对象空间的尺寸比残存空间大survivorRatio+2倍。

-XX:TargetSurvivorRatio=percentage

设定您所期望的空间提取后被使用的残存空间的百分比,缺省值是50。

-XX:MaxPermSize=size in MB

长久代(permanent generation)的尺寸,缺省值为32(32MB)。

三、查看Tomcat的JVM内存

1. Tomcat6中没有设置任何默认用户,因而需要手动往Tomcat6的conf文件夹下的tomcat-users.xml文件中添加用户。

如:

注:添加完需要重启Tomcat6。

2. 访问http://localhost:8080/manager/status,输入上面添加的用户名和密码。

3. 然后在如下面的JVM下可以看到内存的使用情况。

JVM

Free memory: 2.50 MB Total memory: 15.53 MB Max memory: 63.56 MB

四、Tomcat连接数设置

在tomcat配置文件server.xml中的配置中,和连接数相关的参数有:

minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10

maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75

acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100

enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为false

connectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。

其中和最大连接数相关的参数为maxProcessors和acceptCount。如果要加大并发连接数,应同时加大这两个参数。

web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。Unix中如何设置这些参数,请参阅Unix常用监控和管理命令

bat窗口大小设置_Tomcat的JVM和连接数设置相关推荐

  1. JVM 内存优化设置

    from:http://blog.sina.com.cn/s/blog_707577700100vy4m.html 在一些规模稍大的应用中,Java虚拟机(JVM)的内存设置尤为重要,想在项目中取得好 ...

  2. jvm(2)-JVM内存的设置(解决eclipse下out of memory问题)

    [0]README 0.1)本文转自: http://blog.csdn.net/sjf0115/article/details/8889201 一.JVM内存的设置的原理 默认的java虚拟机的大小 ...

  3. 直通BAT必考题系列:JVM性能调优的6大步骤,及关键调优参数详解

    JVM系列 直通BAT必考题系列:7种JVM垃圾收集器特点,优劣势.及使用场景 直通BAT必考题系列:JVM的4种垃圾回收算法.垃圾回收机制与总结 直通BAT必考题系列:深入详解JVM内存模型与JVM ...

  4. 如何开启jvm日志_直通BAT必考题系列:JVM性能调优的6大步骤,及关键调优参数详解...

    JVM系列 直通BAT必考题系列:7种JVM垃圾收集器特点,优劣势.及使用场景 直通BAT必考题系列:JVM的4种垃圾回收算法.垃圾回收机制与总结 直通BAT必考题系列:深入详解JVM内存模型与JVM ...

  5. Tomcat配置之连接数设置

    1 连接数参数介绍 回顾一下Tomcat处理请求的过程:在accept队列中接收连接(当客户端向服务器发送请求时,如果客户端与OS完成三次握手建立了连接,则OS将该连接放入accept队列):在连接中 ...

  6. java tomcat jvm内存_Tomcat修改JVM内存,修改了就是不生效,

    设置Tomcat启动的初始内存其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4. 可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置 三.实例,以下给 ...

  7. JVM内存 大小设置

    Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个Java虚拟机.Tomcat的内存溢出本质就是JVM内存溢出,所以在本文开始时,应该先对Java JVM有关内存方面的知识 ...

  8. jvm优化 JVM 内存大小设置

    Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个Java虚拟机.Tomcat的内存溢出本质就是JVM内存溢出,所以在本文开始时,应该先对Java JVM有关内存方面的知识 ...

  9. jvm内存配置参数_性能测试连载 (23)jvm内存参数设置

    概述 java内存溢出之后,我们需要根据错误信息分析一下内存溢出的具体原因,及时调整中间件的参数. 查看jvm内存分配 linux下可以通过jmap -heap [pid]命令查看jvm的内存分配 例 ...

最新文章

  1. 4个可以写进简历的京东 NLP 项目实战
  2. 深度学习Caffe实战笔记(19)Windows平台 Faster-RCNN 制作自己的数据集
  3. Spark _04集群搭建及测试
  4. SpringMVC容器和Spring容器
  5. Swift - 26 - 函数的基础写法
  6. Intellij idea 快键键
  7. 《Python Cookbook 3rd》笔记(4.15):顺序迭代合并后的排序迭代对象
  8. 阿里云总裁张建锋:新型计算体系结构正在形成
  9. 计算机寄存器及标志位详解
  10. jfinal 获取路径
  11. jquery easyui validatebox remote使用
  12. 冒泡排序c语言标准代码,C语言实现冒泡排序法和选择排序法代码参考
  13. 奉劝各位准大一的学弟学妹们,这个暑假只要作对一件事,大学的时候你就是王者!
  14. SPSS实现距离分析
  15. 禁用U盘,不影响其他设备的使用
  16. dw怎么保存html格式,教你如何用Dreamweaver制作网页以及保存网页的方法--系统之家...
  17. 初始化云硬盘切换云主机挂载验证lvm跨主机可读
  18. 性能优化--启动优化(网易云音乐启动方案)
  19. Python二级考试公共基础知识
  20. C89标准和C99标准C11标准的区别

热门文章

  1. 如何将bing搜索页面以HTML Mashup的方式嵌入到SAP C4C页面
  2. how to attach source code of Spark
  3. SAP Business Application Studio和Authentication Trust Management
  4. SAP customer engagement center Fiori界面登录后的处理
  5. ABAP和Java里的单例模式攻击
  6. Tax debug and BP number external generation
  7. Opportunity在Fiori cloud system上编辑之后超时的根源分析
  8. How is data replicted from HANA to AS
  9. CM: Word document里某些值没有被web service 填充的原因
  10. 如何关闭SAP Fiori的病毒扫描设