Java 由于tomcat JVM崩溃,Web应用程序apache tomcat服务正在重新启动

Java 由于tomcat JVM崩溃,Web应用程序apache tomcat服务正在重新启动,java,tomcat7,Java,Tomcat7,我们正在运行托管在tomcat7上的web应用程序。但由于JVM崩溃,服务正在停止。下面是JVM崩溃的堆栈跟踪 Stack: [0x3aa40000,0x3aa60000], sp=0x3aa5fb64, free space=126k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C [tcnative-1.dll+0x6da6] J 2140 org.apache.tom

我们正在运行托管在tomcat7上的web应用程序。但由于JVM崩溃,服务正在停止。下面是JVM崩溃的堆栈跟踪

Stack: [0x3aa40000,0x3aa60000],  sp=0x3aa5fb64,  free space=126k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [tcnative-1.dll+0x6da6]
J 2140  org.apache.tomcat.jni.Poll.poll(JJ[JZ)I (0 bytes) @ 0x0133ce94 [0x0133cde0+0xb4]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J 2140  org.apache.tomcat.jni.Poll.poll(JJ[JZ)I (0 bytes) @ 0x0133ce50 [0x0133cde0+0x70]
J 2139% C2 org.apache.tomcat.util.net.AprEndpoint$Poller.run()V (2291 bytes) @ 0x012f4420 [0x012f3f80+0x4a0]
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub
这是它的标题部分

# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x35a86da6, pid=2756, tid=4612
#
# JRE version: Java(TM) SE Runtime Environment (7.0_65-b19) (build 1.7.0_65-b19)
# Java VM: Java HotSpot(TM) Server VM (24.65-b04 mixed mode windows-x86 )
# Problematic frame:
# C  [tcnative-1.dll+0x6da6]

我们已经发现,就在崩溃之前,只有一个线程从我们自己的应用程序运行,但不确定这个线程将如何导致tomcat崩溃。我们正在本地进行模拟。感谢您的帮助。

尝试添加以下属性:

org.apache.catalina.connector.RECYCLE\u FACADES=true


转到tomcat/conf/catalina.properties文件,并根据重新启动应用程序服务器。

似乎您使用了导致崩溃的本机库
tcnative-1.dll
。有没有任何方法可以在不使用tcnative-1.dll的情况下运行tomcat?不使用此dll会有什么后果?我在某个地方读到这个dll是可选的,但我不知道如何禁用它,禁用这个dll会有什么影响?请让我知道。上述解决方案在我们的情况下不起作用。即使应用了上述解决方法,我们仍然能够看到崩溃。还有什么我们可以尝试的吗?