tomcat设置自动加载 内存溢出

本文记录了在使用Apache Tomcat 5.5.23过程中遇到的内存溢出问题,特别是由于class文件加载过多导致的OutOfMemoryError错误。探讨了设置自动加载class及调整-Xms1024m-Xmx1024m参数后仍出现的问题,并寻求从根本上解决问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版本:apache-tomcat-5.5.23 jrockit-jdk1.5.0_11 设置了自动加载class 设置了内存-Xms1024m
-Xmx1024m 服务器上只有10javax.servlet.ServletException: class allocation JVM@check_alloc (src/jvm/model/classload/classalloc.c:122). 1296 bytes requested. Java heapsize=1073741824, pa
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:273)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
com.filter.EncodingFilter.doFilter(EncodingFilter.java:24)


root cause

java.lang.OutOfMemoryError: class allocation JVM@check_alloc (src/jvm/model/classload/classalloc.c:122). 1296 bytes requested. Java heapsize=1073741824, pa
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:620)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1876)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:889)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1353)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1232)
javax.xml.parsers.FactoryFinder.newInstance(FactoryFinder.java:88)
javax.xml.parsers.FactoryFinder.findJarServiceProvider(FactoryFinder.java:278)
javax.xml.parsers.FactoryFinder.find(FactoryFinder.java:185)
javax.xml.parsers.DocumentBuilderFactory.newInstance(DocumentBuilderFactory.java:98)
org.apache.jasper.xmlparser.ParserUtils.parseXMLDocument(ParserUtils.java:89)多个网站,只要有网站更新很多class的话,肯定使服务器内存溢出,如何根治这种问题呢
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值