linuxt与windows下tomcat内存设置

Linux下修改JVM内存大小:

要添加在tomcat 的bin 下catalina.sh文件中,找到cygwin=false,在这一行的前面加入参数,具体如下# vi TOMCAT_HOME/bin/catalina.sh(默认文件内容)

JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:MaxNewSize=512m"

以下是自己设置的另外增加一个setenv.sh文件来设置tomcat内存,给文件加上执行权限

#vi /opt/app/tomcat6/bin/setenv.sh 
export JAVA_OPTS="-server -Xms512m -Xmx1024m -XX:MaxNewSize=512m -XX:PermSize=128m  -XX:MaxPermSize=256m -XX:SurvivorRatio=14 -XX:+UseParallelOldGC"
或直接修改tomcat的配置文件
#vi TOMCAT_HOME/bin/catalina.sh
JAVA_OPTS="-server -Xms512m -Xmx1024m -XX:MaxNewSize=512m -XX:PermSize=128m  -XX:MaxPermSize=256m -XX:SurvivorRatio=14 -XX:+UseParallelOldGC"

jvm参数说明:

-server                一定要作为第一个参数,启用JDK的server版本,在多个CPU时性能佳

-Xms                    java Heap初始大小。 默认是物理内存的1/64。

-Xmx                    java heap最大值。建议均设为物理内存的80%。不可超过物理内存。

-Xmn                    java heap最小值,一般设置为Xmx的3、4分之一。

-XX:PermSize            设定内存的永久保存区初始大小,缺省值为64M。

-XX:MaxPermSize        设定内存的永久保存区最大大小,缺省值为64M。

-XX:SurvivorRatio=2    生还者池的大小,默认是2。如果垃圾回收变成了瓶颈,您可以尝试定制生成池设置

-XX:NewSize            新生成的池的初始大小。 缺省值为2M。

-XX:MaxNewSize          新生成的池的最大大小。 缺省值为32M。

+XX:AggressiveHeap      让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。

-Xss                    每个线程的Stack大小

-verbose:gc            现实垃圾收集信息

-Xloggc:gc.log          指定垃圾收集日志文件

-XX:+UseParNewGC        缩短minor收集的时间

-XX:+UseConcMarkSweepGC 缩短major收集的时间

-XX:userParNewGC        可用来设置并行收集(多CPU)

-XX:ParallelGCThreads  可用来增加并行度(多CPU)

-XX:UseParallelGC      设置后可以使用并行清除收集器(多CPU)

-XX:+UseParallelOldGC:配置年老代垃圾收集方式为并行收集。JDK6.0支持对年老代并行收集。

windows下修改JVM内存大小:

情况一:解压版本的Tomcat, 要通过startup.bat启动tomcat才能加载配置

要添加在tomcat 的bin 下catalina.bat 里rem Guess CATALINA_HOME if not defined

set CURRENT_DIR=%cd%后面添加:

set JAVA_OPTS="-server -Xms800m -Xmx3072m -XX:PermSize=512m -XX:MaxNewSize=256m -XX:MaxPermSize=1024m"

另翻注(详细解释):

常见JVM参数配置汇总

堆设置

-Xms:初始堆大小

-Xmx:最大堆大小

-XX:NewSize=n:设置年轻代大小

-XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4

-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如:3,表示Eden:

Survivor=3:2,一个Survivor区占整个年轻代的1/5

-XX:MaxPermSize=n:设置持久代大小

收集器设置

-XX:+UseSerialGC:设置串行收集器

-XX:+UseParallelGC:设置并行收集器

-XX:+UseParalledlOldGC:设置并行年老代收集器

-XX:+UseConcMarkSweepGC:设置并发收集器

垃圾回收统计信息

-XX:+PrintGC

-XX:+PrintGCDetails

-XX:+PrintGCTimeStamps

-Xloggc:filename

并行收集器设置

-XX:ParallelGCThreads=n:设置并行收集器收集时使用的CPU数。并行收集线程数。

-XX:MaxGCPauseMillis=n:设置并行收集最大暂停时间

-XX:GCTimeRatio=n:设置垃圾回收时间占程序运行时间的百分比。公式为1/(1+n)

并发收集器设置

-XX:+CMSIncrementalMode:设置为增量模式。适用于单CPU情况。

-XX:ParallelGCThreads=n:设置并发收集器年轻代收集方式为并行收集时,使用的CPU数。并行收集线程数。

时间: 2024-10-22 13:18:17

linuxt与windows下tomcat内存设置的相关文章

window下tomcat内存设置,bat启动

windows下和linux设置方法不一样,请注意取消双引号,前面增加set: 在catalina.bat的@echo off下面添加 set JAVA_OPTS=-server -Xms512m -Xmx1024m -XX:MaxNewSize=512m -XX:MaxPermSize=256m

Tomcat内存设置详解

Java内存溢出详解 一.常见的Java内存溢出有以下三种: 1. java.lang.OutOfMemoryError: Java heap space ----JVM Heap(堆)溢出JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不可超过物理内存. 可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置.Heap的大小是Young Generation 和Tenured Generaion 之和. 在JVM中如

(转)Tomcat内存设置

Java内存溢出详解 一.常见的Java内存溢出有以下三种: 1. java.lang.OutOfMemoryError: Java heap space ----JVM Heap(堆)溢出 JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不可超过物理内存. 可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置.Heap的大小是Young Generation 和Tenured Generaion 之和. 在JVM中

eclipse内存设置,tomcat内存设置,查看内存大小

eclipse内存设置,tomcat内存设置,查看内存大小 1.点击eclipse上的debug图标旁边的下拉箭头 2.然后选择Run Configurations, 3.系统弹出设置tomcat配置页面,在Argument中末尾添加参数中的VM arguments中追加: -Xms256M -Xmx512M -XX:PermSize=256m -XX:MaxPermSize=512m

maven学习五 Eclipse下Tomcat常用设置

Eclipse下Tomcat常用设置 1,Eclipse建立Tomcat服务 1.1 新建Server 首先这里是指,jee版的Eclipse.Eclipse是没有像MyEclipse那样集成Tomcat的,需要我们自己设置. New -> Other -> Server ,然后选择Apache下的tomcat的版本. 注意:如果Next或Finish按钮都是灰的,那么需要到Windw- > Preferences -> Server -> Runtime Environme

Eclipse下Tomcat常用设置

Eclipse下Tomcat常用设置 1,Eclipse建立Tomcat服务 1.1 新建Server 首先这里是指,jee版的Eclipse.Eclipse是没有像MyEclipse那样集成Tomcat的,需要我们自己设置. New -> Other -> Server ,然后选择Apache下的tomcat的版本. 注意:如果Next或Finish按钮都是灰的,那么需要到Windw- > Preferences -> Server -> Runtime Environme

Windows下安装并设置Redis

作者: 铁锚 日期: 2014年8月10日 Redis对于Linux是官方支持的,安装和使用没有什么好说的,普通使用按照官方指导,5分钟以内就能搞定.详情请参考: http://redis.io/download 但有时候又想在windows下折腾下Redis,可以从redis下载页面看到如下提示: Win64 Unofficial The Redis project does not directly support Windows, however the Microsoft Open Te

Tomcat内存设置

MyEclipse Tomcat的JDK菜单:"Optional Java VM arguments:"框中输入"有前置空格"   -Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m Tomcat window:  在这行上面:echo Using CATALINA_BASE:   "%CATALINA_BASE%" set JAVA_OPTS=%JAVA_OPTS% -serve

Linux下 Tomcat内存溢出

Tomcat本身不能直接在计算机上运行,需要依赖于操作系统和一个JAVA虚拟机.JAVA程序启动时JVM会分配一个初始内存和最大内存给APP.当APP需要的内存超出内存的最大值时虚拟机就会提示内存溢出,并且导致应用服务崩溃. 一.常见的Java内存溢出有以下三种: 1. java.lang.OutOfMemoryError: Java heap space      即JVM Heap溢出 解释说明:JVM在启动的时候会自动设置JVM Heap的值,JVM堆的设置是指java程序运行过程中JVM