Tomcat muere de repente
Intentando diagnosticar un extraño Tomcat 7.0.21
) y / o errores de JVM en una máquina Linux de 64 bits (CentOS).
Estoy probando la carga de nuestra aplicación de servidor e intenté golpearla con 100K mensajes. Lanzadojvisualvm
y mantuve mi ojo en el montón todo el tiempo. Todo se veía genial * (ver abajo) hasta que llegué a unos 93K mensajes procesados y luego Tomcat simplemente murió. Corrió unps
en el número PID de Tomcat para confirmar que estaba muerto.
Hasta este bloqueo:
a prueba @Load se ejecutó durante aproximadamente 90 minutos; debería haber terminado poco después ya que estábamos en 93K / 100K)CPU se mantenía fuerte alrededor del 45%El montón utilizado era de alrededor de 2 GB (más o menos un montón después de los GC), pero el tamaño del montón aumentó de 4 GB aMAX_HEAP
después de unos 30 minutos La carga / descarga de la clase se estaba ejecutando normalmente Los volcados de subprocesos fueron normalesn ninguna parte del código del servidor hay llamadas aSystem.exit()
- para que podamos descartarlo (¡y sí, lo he verificado dos veces!).
No estoy seguro de si se trata de Tomcat o la JVM ¿Cómo lo digo?). E incluso si lo supiera, parece que no puedo encontrar ninguna indicación de lo que salió mal:
Todos los registros de la aplicación del servidor se detienen sin ningún mensaje de ERROR (a pesar de que tenemos el registro configurado universalmente en DEBUG y superior) Tomcat'scatalina.out
y respetolocalhost_access_*
los archivos simplemente se detienen sin ninguna informaciónEscuché que es posible que Tomcat registre un coredump cuando lo hace, pero no estoy seguro de cómo hacerlo y los ejemplos en línea no ayudan mucho.
¿Cómo se haría para diagnosticar esto? ¿Qué pasos debo tomar para comenzar a descartar todos los posibles factores?
¡Gracias por adelantado