Java heap space设置方法记录

最近被 OutOfMemory Error折腾得够呛,记载一点设置JVM虚拟机内存Javaheap space的方法。

Tomcat 7

参考:

http://www.davidghedini.com/pg/entry/install_tomcat_7_on_centos

http://blog.csdn.net/f_zongjian/article/details/5723665

网上找了半天tomcat的设置方法,各式各样。其实非常简单,设置JAVA_OPTS参数。

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

Linux下在%TOMCAT_HOME%/bin/catalina.sh, 在开头的任意位置加入参数设置:

[plain] view plain copy

  1. #                   LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
  2. #
  3. # $Id: catalina.sh 1498485 2013-07-01 14:37:43Z markt $
  4. # -----------------------------------------------------------------------------
  5. JAVA_OPTS="-Xms128m -Xmx1512m"
  6. # OS specific support.  $var _must_ be set to either true or false.
  7. cygwin=false
  8. darwin=false
  9. os400=false

重启tomcat:

[plain] view plain copy

  1. TOMCAT_PATH/bin/shutdown.sh
  2. TOMCAT_PATH/bin/startup.sh

如果配置没错,那么tomcat将正常启动。

拥有manager账户即可通过http://localhost:8080/manager/status 查看。

设置账户可参考下列代码修改%TOMCAT_HOME%/conf/tomcat-users.xml, 增加以下3行:

[html] view plain copy

  1. <role rolename="admin-gui"/>
  2. <role rolename="manager-gui"/>
  3. <user username="tomcat" password="tomcat" roles="admin-gui,manager-gui"/>

Eclipse

更加简单,打开run-run configurations,

修改Arguments下面的VM arguments

[plain] view plain copy

  1. -Xms512M
  2. -Xmx3072M

当然,根据你自己的机子 量力而行。。。

同学们很多在找如何在eclipse里面添加程序参数,只要在上面program arguments里面添加即可。

时间: 2024-10-14 10:30:21

Java heap space设置方法记录的相关文章

Java heap space 设置

当Java处理的数据量比较大时常常会出现: java.lang.OutOfMemoryError: Java heap space 意味着JVM的堆内存耗尽了.如果有需要的话,可以通过设置JVM的参数来调整Heap的大小. 这中间有几个参数: 参数名称 含义 默认值   -Xms 初始堆大小 物理内存的1/64(<1GB) 默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制. -Xmx 最大堆大小 物理内存的1/4(<1GB) 默

java.lang.OutOfMemoryError: Java heap space解决方法

//首先检查程序有没有限入死循环 这个问题主要还是由这个问题 java.lang.OutOfMemoryError: Java heap space 引起的.第一次出现这样的的问题以后,引发了其他的问题.在网上一查可能是JAVA的堆栈设置太小的原因. 跟据网上的答案大致有这两种解决方法: 1.设置环境变量 解决方法:手动设置Heap size 修改TOMCAT_HOME/bin/catalina.sh set JAVA_OPTS= -Xms32m -Xmx512m 可以根据自己机器的内存进行更改

转载:java.lang.OutOfMemoryError: Java heap space解决方法

//首先检查程序有没有限入死循环 这个问题主要还是由这个问题 java.lang.OutOfMemoryError: Java heap space 引起的.第一次出现这样的的问题以后,引发了其他的问题.在网上一查可能是JAVA的堆栈设置太小的原因.跟据网上的答案大致有这两种解决方法:1.设置环境变量 解决方法:手动设置Heap size修改TOMCAT_HOME/bin/catalina.shset JAVA_OPTS= -Xms32m -Xmx512m可以根据自己机器的内存进行更改. 2.j

[转]java.lang.OutOfMemoryError: Java heap space内存不足问题

今晚,在定义一个new int[19001][13001]的数组时候内存不够:特转了一下方法: Exception in thread "main" java.lang.OutOfMemoryError: Java heap space解决方法 问题描述 Exception in thread "main" java.lang.OutOfMemoryError: Java heap space 解决方案[转] 一直都知道可以设置jvm heap大小,一直用eclip

Tomcat 启动项目报错 java.lang.OutOfMemoryError: Java heap space

近日使用myeclipse 部署web项目,启动tomcat时报错: SEVERE: Error waiting for multi-thread deployment of directories to completehostConfig.deployWar=Deploying web application archive {0} java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap s

Java_异常_05_ OutOfMemoryError: Java heap space

一.异常现象: 二.异常原因 JAVA的堆栈设置太小 注: 出现此异常之后,会引发其他的问题. 三.异常解决 手动设置Heap size: 修改 TOMCAT_HOME/bin/catalina.sh,在  echo "Using CATALINA_BASE:   $CATALINA_BASE"  上面加入以下行: JAVA_OPTS="-server -Xms800m -Xmx800m -XX:MaxNewSize=256m" 如: 四.由此异常引发的其他异常 二

正确使用MySQL JDBC setFetchSize()方法解决JDBC处理大结果集 java.lang.OutOfMemoryError: Java heap space

昨天在项目中需要对日志的查询结果进行导出功能. 日志导出功能的实现是这样的,输入查询条件,然后对查询结果进行导出.由于日志数据量比较大.多的时候,有上亿条记录. 之前的解决方案都是多次查询,然后使用limit 限制每次查询的条数.然后导出.这样的结果是效率比较低效. 那么能不能一次查询就把所有结果倒出来了?于是我就使用一次查询,不使用limit分页.结果出现 java.lang.OutOfMemoryError: Java heap space问题. 看来是DB服务器端将一次将查询到的结果集全部

Tomcat 优化 java.lang.OutOfMemoryError: Java heap space 的解决方法

java.lang.OutOfMemoryError: Java heap space 的解决方法 关键字: tomcat outofmemoryerror permgen space java heap space 最近在熟悉一个开发了有几年的项目,需要把数据库从mysql移植到oracle,首先把jdbc的连接指向mysql,打包放到tomcat里面,可以跑起来,没有问题,可是当把jdbc连接指向oracle的时候,tomcat就连续抛java.lang.OutOfMemoryError的错

内存大小设置 Java heap space错误(finereport报表)

1. 问题描述 当从数据库中查询大量的数据,每个模板取出来几百万条数据,或者是频繁的刷新项目.模板时就会占用Java虚拟机JVM的大量内存,超过内存就会出现报java.lang.OutOfMemoryError:Java heap space内存一处的错误,具体报错如下: 2. 原因 由于服务器的JVM不够用而抛出的错误,JVM在启动的时候会自动设置Heap size的值,初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4.所以可以根据自己的情况进行修改JVM的-