1、PermGen space简介
PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。
2、说说为什么会内存益出
(1)这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和和存放Instance的Heap区域不同。
(2) GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的APP会LOAD很多CLASS 的话,就很可能出现PermGen space错误。这种错误常见在web服务器对JSP进行pre compile的时候。
3、Tomcat产生内存溢出解决
如果你的WEB APP下都用了大量的第三方jar,其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。
解决方法: 手动设置MaxPermSize大小
修改TOMCAT_HOME/bin/catalina.sh,在echo "Using CATALINA_BASE: $CATALINA_BASE"上面加入以下行:
JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m
建议:将相同的第三方jar文件移置到tomcat/shared/lib目录下,这样可以减少jar 文档重复占用内存
4、Eclipse产生内存溢出解决
在eclipse.ini配置文件中加上以下两行
-XX:PermSize=128M
-XX:MaxPermSize=128M
加上上2行后,我的eclipse.ini文件如下所示:
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512m
-vmargs
-Xms256m
-Xmx512m
-XX:PermSize=128M
-XX:MaxPermSize=128M
这里的内存大小根据自己的物理内存情况来决定吧。
从网上的资料看PermSize大一点肯定更好,而且最好是设置PermSize和MaxPermSize一样大。理由如下:
PermSize 和MaxPermSize如果设置为相同还可以在一定程度上提高性能,因为,PermSize在不断的变化中会需要转移其中的数据。如果固定了以后,则可以减少每次扩大PermSize带来的性能损失。
---
三、实例,以下给出1G内存环境下java jvm 的参数设置参考:
http://blog.csdn.net/oiote/archive/2008/07/25/2707877.aspx
JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true "
分享到:
相关推荐
### Eclipse与Tomcat的内存配置详解 #### 一、引言 在开发环境中,合理配置Eclipse和Tomcat的内存参数对于提升应用性能至关重要。本文将详细介绍如何根据个人需求及计算机硬件条件,优化Eclipse和Tomcat的内存配置...
### Tomcat与Eclipse配置内存溢出解决方案 #### 背景介绍 在进行Web应用程序开发过程中,尤其是在使用Tomcat服务器结合Eclipse或MyEclipse等集成开发环境(IDE)时,开发者可能会遇到一个常见的问题——内存溢出。...
本教程将详细介绍如何安装Maven,以及如何在Eclipse集成Maven和Tomcat,帮助开发者更高效地进行Java Web项目的开发。 **一、Maven的安装** 1. **下载Maven**: Maven的安装包可以从官方网站Apache Maven ...
### Eclipse Tomcat 启动时出现内存溢出问题解析及解决方法 #### 一、问题背景与概述 在使用Eclipse集成开发环境部署并运行基于Tomcat的应用程序时,经常会出现“java.lang.OutOfMemoryError: Java heap space”这...
在IT行业中,Tomcat和Eclipse是两个非常重要的工具,特别是在Java Web开发领域。Tomcat是一个免费、开源的Servlet容器,实现了Java Servlet和JavaServer Pages(JSP)规范,是Apache软件基金会的Jakarta项目的一部分...
本教程将详细介绍如何配置`JDK`、`Tomcat`以及`Eclipse`,这三个组件是构建Java环境开发配置的核心,尤其对于进行Web应用程序开发,如JSP,至关重要。 首先,让我们详细了解一下这三个组件: 1. **JDK (Java ...
### Eclipse + Tomcat 内存溢出参数设置详解 在Java开发过程中,特别是在使用Eclipse作为集成开发环境(IDE)并结合Apache Tomcat服务器进行Web应用开发时,经常会遇到内存溢出的问题。这类问题通常表现为应用程序...
eclipse配置tomcat:Eclipse 配置 Tomcat 详细教程; eclipse配置tomcat:Eclipse 配置 Tomcat 详细教程; eclipse配置tomcat:Eclipse 配置 Tomcat 详细教程; eclipse配置tomcat:Eclipse 配置 Tomcat 详细教程; ...
【标题】"TomcatPlugin eclipse插件"是一个专门为Eclipse集成开发环境设计的插件,它的主要功能是方便开发者在Eclipse中管理和调试Tomcat服务器。这个插件极大地提升了Java Web应用开发的效率,因为它允许用户直接在...
对于使用 Eclipse IDE 部署 Tomcat 的用户来说,还可以直接在 Eclipse 中进行内存配置。 1. **打开 Eclipse 并选择 Tomcat 服务器**: - 选择 `Window > Preferences`。 - 在弹出的对话框中,依次展开 `Server > ...
### Tomcat与Eclipse的连接方法详解 #### 一、前言 在Java Web开发过程中,集成开发环境(IDE)与应用服务器之间的有效连接对于快速部署和测试Web应用程序至关重要。本文将详细介绍如何在Eclipse IDE中配置Apache ...
4. **自动部署**:Eclipse支持自动部署功能,当项目源代码有改动并保存后,Eclipse会自动将更改同步到Tomcat服务器,无需手动部署。 **三、高级操作** 1. **配置端口**:在服务器配置中,可以修改Tomcat的HTTP、...
### 使用Tomcat+Eclipse进行远程Debug的详细步骤与配置 #### 一、前言 在软件开发过程中,尤其是Web应用的开发中,调试是必不可少的一个环节。为了更好地定位和解决问题,开发者经常需要对运行在服务器上的应用...
标题 "ECLIPSE,TOMCAT,JVM内存设置" 涉及到的是在开发Java Web应用程序时,如何配置Eclipse集成开发环境(IDE)、Apache Tomcat服务器以及Java虚拟机(JVM)的内存参数,以优化性能和避免内存溢出等问题。...
【标题】:“Tomcat与Eclipse集成v7.0版本” 在Java Web开发中,Tomcat服务器和Eclipse IDE的集成是常见的工作流程,能够帮助开发者便捷地进行项目部署、调试和测试。Tomcat 7.0版本是一个流行的轻量级应用服务器,...
【标题】"Tomcat6.0及Eclipse插件"涉及了两个主要的IT知识点:Apache Tomcat 6.0服务器的安装与配置,以及Eclipse集成开发环境中的Tomcat插件的使用。 Apache Tomcat 6.0是Apache软件基金会Jakarta项目的一个开源...
"eclipse部署tomcat报错解决方案" 在Eclipse中部署Tomcat服务器时,可能会遇到各种问题。本文将讨论在Eclipse中部署Tomcat服务器时出现的问题和解决方案。 问题描述 在Eclipse中部署Tomcat服务器时,可能会出现...
Eclipse是一款广受欢迎的开源Java集成开发环境(IDE),它为开发者提供了丰富的功能,包括代码编辑、调试、构建以及项目管理等。而Tomcat则是一款轻量级的Java应用服务器,主要用于运行Servlet和JSP应用。在Eclipse...
修改eclipse中的tomcat内存的大小,以防止内存溢出。-------------------------------------------------------------------------------------------------------------------------------------------------------...