服务器宕机拉!求救啊OutOfMemoryError

牛一样的程序员 2010-06-02 09:41:26
说明一下,这是一个集群的,运行半年多了,前些天出现一次宕机,是其中一台受管机,总共四台,应用服务器是weblogic9.2,数据库是oracle10G,服务器内存是2G,jVM分配的是1G,下面是出错日志,发现一直报内存溢出,但是我在测试机上重现宕机确没有重现得了,如果内存溢出了,那他马上又回收掉了,不会宕机。
####<2010-5-26 上午11时54分01秒 CST> <Error> <HTTP> <kjfxjc-web4> <ManagedServer_3> <[ACTIVE] ExecuteThread: '27' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1274846041124> <BEA-101017> <[weblogic.servlet.internal.WebAppServletContext@1aca178 - appName: 'arms', name: 'arms.war', context-path: '/arms'] Root cause of ServletException.
java.lang.OutOfMemoryError: mmAllocArray - Object size: 24, Num elements: 1
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2395)
at java.lang.Class.getDeclaredMethods(Class.java:1763)
at java.beans.Introspector$1.run(Introspector.java:1265)
at java.beans.Introspector.getPublicDeclaredMethods(Introspector.java:1263)
at java.beans.Introspector.internalFindMethod(Introspector.java:1299)
at java.beans.Introspector.findMethod(Introspector.java:1370)
at java.beans.Introspector.findMethod(Introspector.java:1350)
at java.beans.PropertyDescriptor.getReadMethod(PropertyDescriptor.java:179)
at java.beans.PropertyDescriptor.setWriteMethod(PropertyDescriptor.java:270)
at java.beans.PropertyDescriptor.getWriteMethod(PropertyDescriptor.java:249)
at org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:964)
at org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:811)
at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:298)
at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1252)
at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:821)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at com.sunyard.arms.busm.servlet.SessionFilter.doFilter(SessionFilter.java:57)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at com.sunyard.common.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:78)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3242)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2010)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1916)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
>
####<2010-5-26 上午11时54分02秒 CST> <Error> <Cluster> <kjfxjc-web4> <ManagedServer_3> <weblogic.cluster.MessageReceiver> <<WLS Kernel>> <> <> <1274846042202> <BEA-000110> <Multicast socket receive error: java.lang.OutOfMemoryError: nativeGetNewTLA
java.lang.OutOfMemoryError: nativeGetNewTLA
at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:44)
at java.lang.StringBuilder.<init>(StringBuilder.java:69)
at java.lang.Class.argumentTypesToString(Class.java:2740)
at java.lang.Class.getDeclaredMethod(Class.java:1909)
at java.io.ObjectStreamClass.getInheritableMethod(ObjectStreamClass.java:1321)
at java.io.ObjectStreamClass.access$2200(ObjectStreamClass.java:52)
at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:432)
at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:400)
at java.io.ObjectStreamClass.lookup0(ObjectStreamClass.java:297)
at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java)
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:531)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1552)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1466)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1699)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
at weblogic.common.internal.WLObjectInputStream.readObjectWL(WLObjectInputStream.java:98)
at weblogic.cluster.MulticastReceiver.getNextMessage(MulticastReceiver.java:259)
at weblogic.cluster.MulticastReceiver.dispatch(MulticastReceiver.java:109)
at weblogic.cluster.MulticastManager.run(MulticastManager.java:469)
at java.lang.Thread.run(Thread.java:595)
>
####<2010-5-26 上午11时54分02秒 CST> <Error> <Cluster> <kjfxjc-web4> <ManagedServer_3> <weblogic.cluster.MessageReceiver> <<WLS Kernel>> <> <> <1274846042202> <BEA-000110> <Multicast socket receive error: java.lang.OutOfMemoryError: nativeGetNewTLA
java.lang.OutOfMemoryError: nativeGetNewTLA
at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:44)
at java.lang.StringBuilder.<init>(StringBuilder.java:69)
at java.lang.Class.argumentTypesToString(Class.java:2740)
at java.lang.Class.getDeclaredMethod(Class.java:1909)
at java.io.ObjectStreamClass.getInheritableMethod(ObjectStreamClass.java:1321)
at java.io.ObjectStreamClass.access$2200(ObjectStreamClass.java:52)
at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:432)
at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:400)
at java.io.ObjectStreamClass.lookup0(ObjectStreamClass.java:297)
at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java)
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:531)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1552)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1466)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1699)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
at weblogic.common.internal.WLObjectInputStream.readObjectWL(WLObjectInputStream.java:98)
at weblogic.cluster.MulticastReceiver.getNextMessage(MulticastReceiver.java:259)
at weblogic.cluster.MulticastReceiver.dispatch(MulticastReceiver.java:109)
at weblogic.cluster.MulticastManager.run(MulticastManager.java:469)
at java.lang.Thread.run(Thread.java:595)
>
####<2010-5-26 上午11时54分02秒 CST> <Error> <Cluster> <kjfxjc-web4> <ManagedServer_3> <weblogic.cluster.MessageReceiver> <<WLS Kernel>> <> <> <1274846042202> <BEA-000110> <Multicast socket receive error: java.lang.OutOfMemoryError: nativeGetNewTLA
java.lang.OutOfMemoryError: nativeGetNewTLA
at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:44)
at java.lang.StringBuilder.<init>(StringBuilder.java:69)
at java.lang.Class.argumentTypesToString(Class.java:2740)
at java.lang.Class.getDeclaredMethod(Class.java:1909)
at java.io.ObjectStreamClass.getInheritableMethod(ObjectStreamClass.java:1321)
at java.io.ObjectStreamClass.access$2200(ObjectStreamClass.java:52)
at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:432)
at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:400)
at java.io.ObjectStreamClass.lookup0(ObjectStreamClass.java:297)
at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java)
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:531)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1552)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1466)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1699)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
at weblogic.common.internal.WLObjectInputStream.readObjectWL(WLObjectInputStream.java:98)
at weblogic.cluster.MulticastReceiver.getNextMessage(MulticastReceiver.java:259)
at weblogic.cluster.MulticastReceiver.dispatch(MulticastReceiver.java:109)
at weblogic.cluster.MulticastManager.run(MulticastManager.java:469)
at java.lang.Thread.run(Thread.java:595)
>
...全文
529 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
li_shou_lu 2012-01-04
  • 打赏
  • 举报
回复
我现在出现了一样的异常。兄弟你解决了吗?帮忙我一下?
phoenixYiYou 2010-06-08
  • 打赏
  • 举报
回复
在测试机上对你们的系统做压力测试!要不然很难再现错误!无法再现错误,就无法定位错误!
TeaMo801023 2010-06-08
  • 打赏
  • 举报
回复
看一下你的过滤器程序吧
at com.sunyard.arms.busm.servlet.SessionFilter.doFilter(SessionFilter.java:57)

5,655

社区成员

发帖
与我相关
我的任务
社区描述
Web开发应用服务器相关讨论专区
社区管理员
  • 应用服务器社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧