java heap space 是指java 堆空间不足.
根据异常信息我们即可断定是由于JVM堆空间不足引起异常.
解决方法:
1.加大JVM堆空间大小(最简单的方法,但解决不了根本问题)
这种启动方式tomcat首先读取catalina.bat文件,我们需要在catalina.bat文件的第一行
或者在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下代码:
set JAVA_OPTS= -Xms128m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m
2>MyEclipse或其它IDE启动tomcat(以MyEclipse为例)
在这种启动tomcat方式下,程序是不读catalina.bat这个文件的,所以你在里面设置了参数也不管用的!应该在MyEclipse的配置服务
器的画面,选中要设置的tomcat,点开+号,下面有JDK的设置.在Optional Java VM arguments输入域中输入-Xms128m -Xmx512m
-XX:MaxNewSize=256m -XX:MaxPermSize=256m个参数.
3>系统服务版tomcat
如果使用的是服务版tomcat,打开tomcat服务主界面,打开Java选项卡,在Initial memory pool输入框和Maximun memory pool输
入框输入合适的大小.在Java options中输入 -XX:MaxNewSize=256m -XX:MaxPermSize=256m
2.代码调优
系统参数设置的再大,也扛不过应用程序长时间运行或大量用户同时访问.在程序中我们应该注意Java性能优化.急时释放没必要的内存!
1>急时把使用完的集合或大对象的值置为NULL
2>在Web开发中,尽量使用Request作用域存放变量,如果Request不能满足要求时,可以使Session作用域,但使用完毕后并没有再用到的
必要时,急时从Session作用域中把变量删除!
应用程序在开发阶段有时没必要优化JVM一些系统参数,但应用程序在生产阶段必须优化JVM参数.防止应用程序瘫痪.提高应用程序性能.
相关推荐
如果您的tomcat是6.X版本且是安装版的,那么系统设置环境变量是不起作用的,因为这个版本的只能通过点击tomcat6.exe 或tomcat6w.exe才能执行,这种方法可以通过修改注册表能解决:本例是以内存3G为例的。 windows...
Java heap space 解决方法,解决tomcat堆栈溢出问题.
Tomcat内存溢出的三种情况及解决办法分析 Tomcat内存溢出的原因 在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内存原因是不一样的,当然处理方式也不一样。 这里根据平时遇到的情况和相关资料进行一个...
解决Java_heap_space问题,解决tomcat内存溢出问题
Java内存溢出解决办法 加大Tomcat使用Jvm内存(转载) 注重版权 Caused by: java lang OutOfMemoryError: Java heap space 错误原因及解决方法
tomcat内存溢出总结 在生产环境中tomcat内存设置不好很容易出现内存溢出。... 1.OutOfMemoryError: Java heap space 2.OutOfMemoryError: PermGen space 3.OutOfMemoryError: unable to create new native thread.
TOMCAT出错:java.lang.OutOfMemoryError: Java heap space
1. java.lang.OutOfMemoryError: Java heap space 即JVM Heap溢出 解释说明:JVM在启动的时候会自动设置JVM Heap的值,JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置。其初始空间默认是物理...
但是用loadrunner压测了几分钟之后,分配了1024M堆内存的tomcat居然包heap space outofmemory!这个页面的代码如下: 代码如下: <%@ page language=”java” contentType=”text/html; charset=ISO-8859-1″ ...
JBOSS\Tomcat最大连接数配置和jvm内存配置,解决内存溢出问题 Java中OutOfMemoryError(内存溢出)的情况 第一种OutOfMemoryError: PermGen space 第二种OutOfMemoryError: Java heap space
在较大型的应用项目中,默认的内存是不够的,有可能导致系统无法运行。常见的问题是报Tomcat内存溢出错误“java.lang.OutOfMemoryError: Java heap space”,从而导致客户端显示500错误。