最近遇到了这个问题:java.lang.OutOfMemoryError: PermGen space,已经上线一段时间。
找了点资料看看,前辈已经总结的很好了,我参考了一下这几个文章:
http://www.iteye.com/topic/80620 -- 参与的人挺多的
http://java.chinaitlab.com/base/836419.html
http://developer.51cto.com/art/200906/129346.htm
http://baike.baidu.com/view/79183.htm -- 百度百科,我感觉总结的挺好的
我想找到导致这次内存溢出的原因,就要好好的分析一下了,我初步估计可能是因为报表查询时的数据量比较大,而且的有段时间频繁的查询导致的,导致内存溢出原因之一:内存中加载的数据量过于庞大,如一次从数据库取出过多数据。我这个数据量也不是特别大,1万条左右吧。
现在的话,就是想模拟一下,想办法监测内存情况,参考高手的博客:
我接下来的话就是实际动手做起来,最终的结果之后再补充上来吧。。。
相关推荐
Java内存溢出(Out of Memory,OOM)是Java应用程序中常见的问题,会导致程序崩溃或性能急剧下降。HeapAnalyzer是一款强大的工具,专为分析Java应用程序的内存状况,特别是针对内存溢出问题进行诊断。本文将详细介绍...
本文将深入探讨Java内存溢出的原因、表现以及如何解决。 1. **Java内存结构** Java内存主要分为堆内存(Heap)和栈内存(Stack),堆是存储对象实例的主要区域,而栈主要用于存储基本类型和对象引用。除此之外,...
本文将深入探讨如何检测和分析Java内存泄露与溢出,并介绍一种常用的工具——Memory Analyzer(MAT)。 首先,理解内存泄露的概念至关重要。在Java中,内存泄露通常发生在对象不再被程序使用但仍然保持在内存中,...
而压缩包中的“内存溢出分析工具”可能包含了其他辅助分析内存问题的资源或文档,如使用教程、示例文件等。 总之,HeapAnalyzer456.jar是Java开发中不可或缺的内存诊断工具,通过它可以深入剖析内存溢出的原因,...
在处理Java内存溢出问题时,除了使用上述工具外,还需要理解以下几个关键概念: 1. 堆内存:Java对象主要存储在堆内存中,过大或过多的对象可能导致堆溢出。 2. 非堆内存:包括JVM自身使用的内存(如方法区、元空间...
Java内存溢出问题,全称为Java OutOfMemoryError,是Java开发者经常遇到的运行时异常。内存溢出通常发生在程序运行过程中,系统无法为运行的应用程序分配足够的内存资源,导致程序无法正常执行。理解并解决Java内存...
Java内存溢出问题通常指的是程序在试图分配内存时,无法找到足够的连续内存空间而抛出的异常。在Java中,内存分为几个区域:堆(Heap)、栈(Stack)、方法区(Method Area,Java 8后被元空间取代)以及程序计数器和...
为了解决这一问题,Java提供了多种内存分析工具,其中CoreAnalyzer是一款专业的Java内存溢出分析工具。下面将详细介绍CoreAnalyzer的功能、使用方法以及如何通过它来分析和解决内存问题。 CoreAnalyzer主要功能: 1...
Java内存溢出(Out Of Memory, OOM)是开发者在编程过程中经常遇到的问题,尤其是在处理大量数据或长时间运行的应用程序时。本篇文章将详细解析三种常见的Java内存溢出类型:JVM PermGen space溢出、JVM heap space...
Java内存溢出问题通常指的是Java应用程序在运行过程中由于内存分配不当或使用过度导致JVM无法分配更多的内存,从而抛出`java.lang.OutOfMemoryError`异常。本文将深入探讨Java内存溢出的不同类型及其解决方案。 1. ...
内存溢出配置是IT行业中,尤其是在Java应用开发与运维领域中的一个重要话题,它涉及到系统资源管理、性能调优以及故障排查等多个方面。标题与描述中重复提到“内存溢出配置”,这表明了对这一主题的关注与重视。接...
通过分析Javacore,我们可以定位内存溢出的原因,例如是否有无用对象未能正确垃圾回收,是否存在内存泄漏的类或者静态变量等。 JCA(Java Core Analysis)456是一款专门用于解析和分析Javacore文件的工具,它能帮助...
在软件开发领域,尤其是涉及到数据库应用的场景下,内存泄漏(Memory Leak)和内存溢出(Out of Memory,简称OOM)是两个常见的问题,它们直接影响到程序的性能、稳定性和可扩展性。以下是对这两个概念及其相关知识...
"JAVA内存泄漏分析工具"正是一款用于解决此类问题的专业工具,它能帮助开发者定位并修复内存相关的问题,如内存泄漏和内存溢出。 内存泄漏是程序在申请内存后,无法释放已申请的内存空间,一次小的内存泄漏可能看似...
Java内存溢出问题,是Java开发中常见的性能问题,它发生在程序运行时,由于系统无法分配足够的内存资源来满足程序的运行需求,导致程序异常终止。深入理解Java内存溢出,有助于我们优化程序,提高系统稳定性。下面...
标题中的“was内存溢出 javacore分析工具jca 401”指的是在WebSphere应用服务器(WAS)环境中,出现内存溢出问题时,使用名为JCA(Java Core Analysis)401的工具进行分析的情况。内存溢出是程序运行过程中,因分配...
### Eclipse Memory Analyzer (MAT) 分析 Tomcat 内存溢出详解 #### 一、引言 在软件开发过程中,特别是在 Java 应用程序中,内存管理是非常关键的一环。当应用程序遭遇 `OutOfMemoryError` 异常时,通常意味着...
### JBoss内存溢出原因分析 #### 一、概述 JBoss是一款开源的应用服务器,它支持多种企业级应用,如EJB(Enterprise JavaBeans)、JMS(Java Messaging Service)、JPA(Java Persistence API)等。在运行过程中,...
在探讨如何解决JAVA内存溢出问题时,我们首先需要理解几个关键的概念,...通过上述详细的分析和解释,相信读者已经对如何解决JAVA内存溢出问题有了更全面的理解和掌握,能够更加自信地应对和解决实际开发中的相关挑战。