Попытка диагностировать некоторые странные 7.0.21
Tomcat (7.0.21
) и/или JVM на 64-битной машине Linux (CentOS).
Я загружаю наше серверное приложение и пытаюсь использовать его со 100 КБ сообщениями. Запустил jvisualvm
и все время jvisualvm
на кучу. Все выглядело отлично * (см. Ниже), пока я не получил около 93K обработанных сообщений, а затем Tomcat только что умер. Вызвали ps
на номер PID Tomcat, чтобы подтвердить, что он был мертв.
До этого краха:
- Испытание на нагрузку продолжалось около 90 минут; должен был закончить вскоре после того, как мы были в 93K/100K)
- Процессор держался крепче около 45%
- Используемая куча была около 2 ГБ (плюс или минус пучок после GC), но размер кучи вырос с 4 до
MAX_HEAP
примерно через 30 минут - Класс загрузки/разгрузки
- Отвалы резьбы были нормальными
Нигде в коде сервера нет вызовов в System.exit()
поэтому мы можем править этим правом (и да, я дважды проверял !!!).
Я не уверен, что это сбой Tomcat или JVM (как мне сказать?). И даже если бы я знал, я не могу найти никаких признаков того, что пошло не так:
- Все журналы серверных приложений просто останавливаются без сообщений ERROR (хотя у нас есть журнал, универсально настроенный на DEBUG и выше)
- Tomcat
catalina.out
и уважениеlocalhost_access_*
файлы просто останавливаются без какой-либо информации
Я слышал, что возможно, что Tomcat регистрирует coredump, когда он это делает, но не уверен, как это сделать, и онлайн-примеры не помогают.
Как бы это сделать? Какие шаги я должен предпринять, чтобы устранить все возможные факторы?
Заранее спасибо!