Java Sun app server中的应用程序在处理一些消息后挂起

Java Sun app server中的应用程序在处理一些消息后挂起,java,sun,freeze,appserver,jstack,Java,Sun,Freeze,Appserver,Jstack,应用服务器Sun appserver 8.1 JVM-Java1.5.0.11 我们在Sun application Server 9.x中部署了一个处理消息的JMS接收器 在处理了大约50多条消息后,appserver挂起。 重新启动后,50多条消息被处理并再次挂起 没有抛出异常/错误(我们修改了代码以捕获Throwable并在严重模式下登录)。因此,在重新处理代码或消息时,不能将bhavior归因于它们 如有任何餐饮建议,我们将不胜感激 我无法加载整个堆栈,是否有方法附加文件 随附JSTAC

应用服务器Sun appserver 8.1 JVM-Java1.5.0.11

我们在Sun application Server 9.x中部署了一个处理消息的JMS接收器 在处理了大约50多条消息后,appserver挂起。 重新启动后,50多条消息被处理并再次挂起

没有抛出异常/错误(我们修改了代码以捕获Throwable并在严重模式下登录)。因此,在重新处理代码或消息时,不能将bhavior归因于它们

如有任何餐饮建议,我们将不胜感激 我无法加载整个堆栈,是否有方法附加文件

随附JSTACK o/p

regds, 甲壳虫


线程被阻塞,没有上下文就无法分析

考虑使用jvisualvm进行更好的调查。它还可以检测死锁

Thread t@139: (state = BLOCKED)
 - com.sun.httpservice.spi.HttpService.stop() @bci=0, line=286 (Interpreted frame)
 - com.sun.enterprise.web.HttpServiceWebContainer.stopHttpService() @bci=16, line=1080 (Interpreted frame)
 - com.sun.enterprise.web.HttpServiceWebContainer.stopInstance() @bci=24, line=913 (Interpreted frame)
 - com.sun.enterprise.web.HttpServiceWebContainerLifecycle.onShutdown() @bci=9, line=62 (Interpreted frame)
 - com.sun.enterprise.server.ApplicationServer.onShutdown() @bci=55, line=414 (Interpreted frame)
 - com.sun.enterprise.server.Shutdown.startShutdown(com.sun.enterprise.admin.event.ShutdownEvent) @bci=3, line=41 (Interpreted frame)
 - com.sun.enterprise.admin.event.AdminEventMulticaster.invokeShutdownEventListener(com.sun.enterprise.admin.event.ShutdownEventListener, com.sun.enterprise.admin.event.ShutdownEvent) @bci=7, line=1445 (Interpreted frame)
 - com.sun.enterprise.admin.event.AdminEventMulticaster.handleShutdownEvent(com.sun.enterprise.admin.event.AdminEvent) @bci=56, line=1434 (Interpreted frame)
 - com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(com.sun.enterprise.admin.event.AdminEvent) @bci=247, line=443 (Interpreted frame)
 - com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(com.sun.enterprise.admin.event.AdminEvent) @bci=37, line=139 (Interpreted frame)
 - com.sun.enterprise.admin.server.core.channel.AdminChannelServer.sendNotification(byte[], com.sun.enterprise.admin.event.AdminEvent) @bci=52, line=90 (Interpreted frame)
 - sun.reflect.NativeMethodAccessorImpl.invoke0(java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) @bci=0 (Compiled frame)
 - sun.reflect.NativeMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) @bci=87, line=39 (Compiled frame)
 - sun.reflect.DelegatingMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) @bci=6, line=25 (Compiled frame)
 - java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) @bci=111, line=585 (Compiled frame)
 - sun.rmi.server.UnicastServerRef.dispatch(java.rmi.Remote, java.rmi.server.RemoteCall) @bci=246, line=294 (Compiled frame)
 - sun.rmi.transport.Transport$1.run() @bci=23, line=153 (Interpreted frame)
 - java.security.AccessController.doPrivileged(java.security.PrivilegedExceptionAction, java.security.AccessControlContext) @bci=0 (Interpreted frame)
 - sun.rmi.transport.Transport.serviceCall(java.rmi.server.RemoteCall) @bci=163, line=149 (Interpreted frame)
 - sun.rmi.transport.tcp.TCPTransport.handleMessages(sun.rmi.transport.Connection, boolean) @bci=185, line=460 (Compiled frame)
 - sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run() @bci=685, line=701 (Interpreted frame)
 - java.lang.Thread.run() @bi=11, line=595 (Interpreted frame)