问题表现:
当用户执行一个大数据的应用时(净字节码量约为5M)时,系统会提示出错:
前台错误为:HTTP Status 500-Dispatch[EAITool] to method listCurTree retrun an
exception
(以下省略)
………………………………………………………
………………………………………………………
后台错误为:java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start(Native Method)
at org.apache.catalina.loader.WebappLoader.notifyContext(WebappLoader.ja
va:847)
(以下省略)
………………………………………………………
………………………………………………………
问题分析:
由于TOMCAT内存溢出而引发的问题,主要原因是JVM的虚拟内存默认为128M,当超过这个值时就把先前占用的内存释放,而导致好象TCP/IP丢包的假象,出现HTTP500的错误。
解决方法主要是加大TOMCAT可利用内存,并在程序当中加大内存使用。
解决方法:
方法:加大TOMCAT可利用内存:
在TOMCAT的目录下,也就是在TOMCAT41/bin/catalina.bat文件最前面加入
set
JAVA_OPTS=-Xms800m -Xmx800m
表现效果是当你启动TOMCAT时,系统内存会增加近800M使用
操作方法:
1)、先关掉WINDOWS服务当中的TOMCAT4服务。
2)、再找到TOMCAT/BIN目录下startup.bat,双击打开它,你会发现现WINDOWS内存占用会增加近800M。
3)、执行程序,因为是TOMCAT重新编译程序,所以第一次会比较慢。
结论:
经过测试,我们得出如下数据:
当系统传输约2000条数据时,大约近12M的净数据(不压缩时),系统辅助运行的内存大约占用150M左右的空间,也就是近200M的内存占用,而我们扩大了近800M的JAVA内存使用,这对于业务本身来说是足够了。所以你们不用担心大数据量的传递问题。
基于JAVA虚拟机的原理,JAVA自动有垃圾回收机制,也就是在你对一些内存长时间不使用时(近2分钟,取决于使用频度和优先级等),就会自动垃圾回收,从而释放不用的内存占用。
分享到:
相关推荐
本篇将详细介绍如何解决Tomcat内存溢出的问题,以及如何进行相应的配置优化。 首先,我们需要理解什么是内存溢出。当一个程序在运行过程中,分配给它的内存不足以存储所有数据时,就会发生内存溢出。在Java环境中,...
在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内存原因是不一样的,当然处理方式也不一样。本文就介绍了Tomcat内存溢出的三种情况及解决办法分析
一个jsp页面导致的tomcat内存溢出的解决方法.doc
### Java Excel导出Tomcat内存溢出处理方法 在Java应用开发过程中,特别是在进行大量数据处理如Excel导出等操作时,经常会遇到Tomcat服务器内存溢出的问题。内存溢出是指程序运行时申请的内存超过了系统能提供的...
项目在tomcat下运行时,出现常见的几种内存溢出的解决方案
LINUX部署tomcat内存溢出解决方案 已经使用过了,确实是好用的。
### Eclipse + Tomcat 内存溢出参数设置详解 在Java开发过程中,特别是在使用Eclipse作为集成开发环境(IDE)并结合...通过以上步骤,可以有效地解决Eclipse和Tomcat中的内存溢出问题,提高系统的稳定性和响应速度。
解决Tomcat内存溢出问题的关键在于优化JVM的内存配置。以下是几个关键步骤: 1. **调整JVM启动参数**:你可以通过设置JVM的启动参数 `-Xms` 和 `-Xmx` 来控制Java进程的初始堆大小和最大堆大小。例如,可以将它们...
本文将详细介绍如何利用 Eclipse Memory Analyzer (MAT) 工具来诊断并解决 Tomcat 服务器上的 Java 应用程序内存溢出问题。 #### 二、内存溢出的原因及处理思路 ##### 2.1 内存泄露 - **定义**:内存泄露是指不再...
### Tomcat内存溢出在不同系统上的解决方案 #### 一、引言 在部署和运维基于Java的应用程序时,Tomcat作为广泛使用的轻量级Web容器之一,常常会在高负载或资源管理不当的情况下遭遇内存溢出的问题。内存溢出不仅会...
### Eclipse Tomcat 启动时出现内存溢出问题解析及解决方法 #### 一、问题背景与概述 在使用Eclipse集成开发环境部署并运行基于Tomcat的应用程序时,经常会出现“java.lang.OutOfMemoryError: Java heap space”这...
tomcat内存溢出,里面列出集中导出内存溢出的愿意和解决方案。
【Tomcat内存溢出解决办法】 Tomcat是Apache软件基金会的一个开源项目,作为一个流行的Java Servlet容器,它常用于部署和运行Java Web应用程序。内存溢出问题(Out of Memory Error,OOME)在高负载或长时间运行的...
tomcat内存溢出解决办法,错误信息:java.lang.OutOfMemoryError:PermGen space 参考该文档可快速解决内存溢出的问题,服务器:tomcat
通过以上步骤,我们可以利用MAT有效地诊断和解决Tomcat的内存溢出问题。理解MAT的使用方法对于优化Java应用的性能和稳定性至关重要。在实际操作中,可能还需要结合其他工具和日志信息,才能全面分析和解决问题。
二、内存溢出解决方法 1. 调整Tomcat启动参数 根据提供的文件内容,调整Tomcat启动时JVM的内存设置是解决内存溢出问题的关键步骤。通过设置JAVA_OPTS参数来控制JVM启动时的内存分配,其中-Xms用来指定JVM初始化堆...