`
三问飞絮
  • 浏览: 321114 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

Tomcat内存泄漏一览

    博客分类:
  • Java
阅读更多

    Tomcat在停止或者重新部署应用时可能存在内存泄漏。 以下面的地址中,尝试列出它们,并解释在什么情况下可以检测并修复泄漏。

    http://wiki.apache.org/tomcat/MemoryLeakProtection

 

 

Leak cause

Detected by tomcat

Fixed by tomcat

Possible enhancements

Custom ThreadLocal class

>=6.0.24

>= 7.0.6

 

Webapp class instance as ThreadLocal value

>=6.0.24

>= 7.0.6

 

Webapp class instance indirectly held through a ThreadLocal value

no

>= 7.0.6

 

ThreadLocal pseudo-leak

>=6.0.24

>= 7.0.6

 

ContextClassLoader / Threads spawned by webapps

>=6.0.24

In 6.0.24-6.0.26 TimerThread are stopped but it may lead to problems. Optional from 6.0.27 with the clearReferencesStopTimerThreads flag. Other threads may be stopped with the clearReferencesStopThreads flag, but it's unsafe.

Fix the application to stop the thread when the application is stopped

ContextClassLoader / Threads spawned by classes loaded by the common classloader

>=6.0.24

In 6.0.24-6.0.26 TimerThread are stopped but it may lead to problems. Optional from 6.0.27 with the clearReferencesStopTimerThreads flag. Other threads may be stopped with the clearReferencesStopThreads flag, but it's unsafe.

Fix the offending code (set the correct CCL when spawning the thread)

ContextClassLoader / Threads spawned by JRE classes

no

>=6.0.24 pre-spawns some known offenders

 

static class variables

no

> 6.0.? . Disabled by default with tomcat 7

 

LogFactory

 

> 6.0.?

 

JDBC driver registration

> 6.0.?

> 6.0.?

 

RMI Target

 

> 6.0.?

 

 

分享到:
评论

相关推荐

    Tomcat内存泄露问题排查

    ### Tomcat内存泄露问题排查 #### 测试环境与问题描述 - **测试环境**:天津中石油现场。 - **问题背景**:天津中石油9820加油站平台在运行一段时间后,内存占用量达到4GB,导致Tomcat出现假死现象,用户无法登录...

    tomcat内存泄漏备份方法

    Tomcat内存泄漏是Java应用服务器在运行过程中常见的问题,它可能导致系统性能下降,服务不稳定,甚至引发系统崩溃。解决这个问题需要深入理解Tomcat的内存管理机制以及如何诊断和修复内存泄漏。以下是对“tomcat内存...

    eclipse启动tomcat内存泄漏解决

    ### Eclipse启动Tomcat内存泄漏解决方案 #### 一、问题背景 在使用Eclipse集成开发环境(IDE)启动Tomcat服务器时,可能会遇到内存泄漏的问题。这种情况不仅会导致应用程序运行缓慢,严重时甚至会使得Tomcat服务器...

    查看Tomcat内存文件

    这是一个查看Tomcat内存的文件。放在应用工程中,直接访问就可以。 个人感觉这是一个非常有用的文件。

    修改tomcat内存大小.txt

    ### 修改Tomcat内存大小 在部署Java Web应用时,经常需要根据实际运行需求调整Tomcat服务器的内存配置。本文将详细介绍如何修改Tomcat的内存大小,包括常用的内存参数及其意义,并提供具体的设置方法。 #### 一、...

    Tomcat 检测内存泄漏实例详解

    Tomcat如何检测内存泄漏 一般情况下,如果我们重启web应用是通过重启tomcat的话,则不存在内存泄漏问题。但如果不重启tomcat而对web应用进行重加载则可能会导致内存泄漏,因为重加载后有可能会导致原来的某些内存...

    监控tomcat内存使用情况

    监控Tomcat内存使用情况是确保应用稳定运行的关键环节。Tomcat作为一款广泛应用的Java Servlet容器,其内存管理直接影响到Web应用程序的性能和响应速度。理解并监控这些内存指标可以帮助我们及时发现并解决潜在的...

    Tomcat内存设置详解

    ### Tomcat内存设置详解 #### 引言 在构建高性能且稳定的Web应用时,合理配置Tomcat内存参数是至关重要的一步。Tomcat作为一款广泛使用的开源应用服务器,其性能受到诸多因素的影响,其中内存配置尤为关键。正确的...

    TOMCAT内存溢出之解决方法

    Tomcat内存溢出之解决方法 Tomcat内存溢出是指Tomcat服务器在处理大数据量时出现的内存溢出错误,导致系统崩溃或返回HTTP状态码500的错误页面。本文将详细介绍Tomcat内存溢出之解决方法,包括问题分析、解决方法和...

    TOMCAT内存大小调整

    "TOMCAT内存大小调整" TOMCAT内存大小调整是指在使用Java程序从数据库中查询大量数据或应用服务器(如Tomcat、JBoss、WebLogic)加载jar包时,出现java.lang.OutOfMemoryError异常的解决方法。这种异常主要是由于...

    Tomcat的内存释放

    - 如果代码中存在循环套接层数过多或死循环的情况,也会导致资源无法正常释放,进而引发内存泄漏。 3. **EJB组件的支持限制**: - Tomcat本身不支持EJB(Enterprise JavaBeans)组件的开发。因此,在开发J2EE...

    Tomcat内存溢出的三种情况及解决办法分析

    这种情况常见于生产环境中Tomcat内存设置不良,或者应用程序本身存在内存泄露的情况。 根据实际情况和相关资料,Tomcat内存溢出的原因可以分为三种情况: 1.OutOfMemoryError:Java heap space 这种情况是由于...

    解决tomcat内存溢出的配置方法

    4. **监控和分析**:使用JMX(Java Management Extensions)或者第三方工具(如VisualVM,JProfiler)实时监控Tomcat的内存使用情况,帮助找出内存泄露的源头。此外,JVM的堆转储(Heap Dump)文件也能提供详细的...

    Tomcat内存溢出三种情况及解决办法

    - **优化程序代码**:检查是否有内存泄漏等问题,并进行修复。 ##### 2. OutOfMemoryError:PermGen space **原因分析:** PermGen空间主要用于存储类元数据、静态变量等信息。当该区域无法再分配新的对象时,就会...

    tomcat内存监测工具probe。

    可以监测tomcat设置的内存是否生效,监测当前使用的内存和剩余内存,监测当前在线用户量。不错的工具,作为一个tomcat的web项目运行,不需要额外安装插件和程序。登录用户直接使用tomcat的用户,请有conf\tomcat_...

    tomcat 内存优化

    总结来说,Tomcat内存优化是一个涉及多方面因素的过程,包括理解内存区域、合理设置JVM参数、监控内存使用、排查内存泄漏等。通过这些措施,可以有效避免内存溢出,提升Tomcat服务的稳定性和性能。

    tomcat 内存调优文档

    Tomcat 内存调优文档 Tomcat 是一款流行的 Java 服务器,但是在高并发和大数据量的情况下,Tomcat 的性能可能会下降。本文档主要介绍 Tomcat 的内存调优设置,包括堆大小设置、回收器选择等,以提高 Tomcat 的性能...

    Eclipse + Tomcat 内存溢出参数设置

    ### Eclipse + Tomcat 内存溢出参数设置详解 在Java开发过程中,特别是在使用Eclipse作为集成开发环境(IDE)并结合Apache Tomcat服务器进行Web应用开发时,经常会遇到内存溢出的问题。这类问题通常表现为应用程序...

    修改 TOMCAT 内存 的 方法 有图 有真相

    **修改TOMCAT内存的方法详解** Apache Tomcat是一款流行的开源Java Servlet容器,它用于部署和运行Java Web应用程序。在处理大型或复杂应用时,可能需要调整Tomcat的内存配置以优化性能。本文将详细介绍如何在不同...

Global site tag (gtag.js) - Google Analytics