JBoss потребляет больше памяти на RHEL 6

Недавно мы обновили RHEL 5 до RHEL 6. У нас есть веб-приложение, работающее на JBoss, которое потребляет больше памяти в RHEL 6 по сравнению с RHEL 5.

Мы используем библиотеку glibc версии 2.12-1.166. Мы установили для переменной MALLOC_ARENA_MAX значение 1. Это уменьшило первоначальный выброс памяти, но PermGen продолжает увеличиваться. Анализ статистики heapdump и gc не выявил каких-либо утечек памяти, вызванных приложением.

Кто-нибудь сталкивался с подобной проблемой? Мне нужно решить эту проблему, так как это вредит нашим рабочим серверам. Теперь мы перезагружаемся 3 раза в неделю, чтобы избежать ошибки OOM.

Я провел тест на утечку памяти на RHEL 6, и стало очевидно, что malloc выделяет больше памяти. Я пробовал с MALLOC_ARENA_MAX=1 и MALLOC_ARENA_TEST=1, как предлагалось в некоторых постах. Но это не помогает.

Мы почти уверены, что проблема связана с упомянутой выше библиотекой glibc. Есть ошибки, подобные этой, которые предполагают, что проблема связана с библиотекой glibc. Но нам нужно больше информации о том, как эффективно использовать переменные окружения glibc для решения проблемы.


person VinayBS    schedule 13.04.2016    source источник
comment
Можете ли вы вернуться к RHEL 5, а затем провести тестирование на утечку на нерабочем сервере?   -  person halfer    schedule 13.04.2016
comment
Я тестировал на RHEL 5 и анализировал дамп кучи и статистику gc. Это не указывает на какие-либо утечки в приложении. Более того, мы ясно видим увеличение потребления памяти после обновления до RHEL 6.   -  person VinayBS    schedule 13.04.2016
comment
Конечно, но это означает, что в приложении RHEL5 нет утечек. Возможно, в приложении RHEL6 есть утечки — вы проверяли это в неживой среде?   -  person halfer    schedule 13.04.2016
comment
Да. Я тестирую неживую среду RHEL 6, используя jemalloc, чтобы проверить, есть ли утечки памяти. Я буду обновлять здесь с выводом. В то же время, я хотел проверить, не сталкивался ли кто-нибудь с подобными проблемами.   -  person VinayBS    schedule 13.04.2016
comment
Я провел тест на утечку памяти на RHEL 6, и стало очевидно, что malloc выделяет больше памяти. Я пробовал с MALLOC_ARENA_MAX=1 и MALLOC_ARENA_TEST=1, как предлагалось в некоторых постах. Но это не помогает.! Я все еще в затруднительном положении. Любая помощь в решении этой проблемы приветствуется.   -  person VinayBS    schedule 15.04.2016
comment
Я не смогу помочь, я не использую RHEL или Java - просто помогаю здесь с отладкой резиновой утки. Можете ли вы сузить проблему в RHEL 6 до одного компонента/библиотеки?   -  person halfer    schedule 15.04.2016
comment
Да. Мы почти уверены, что проблема связана с библиотекой glibc версии 2.12. Есть такие ошибки, как здесь: stackoverflow-link это говорит о том, что проблема связана с библиотекой glibc. Но нам нужно больше информации о том, как эффективно использовать переменные среды glibc для решения проблемы.   -  person VinayBS    schedule 04.05.2016