Назад | Перейти на главную страницу

Утечка памяти Glassfish 3.0.1 при запуске с Windows Server 2008 R2 Enterprise

У меня утечка памяти в Glassfish 3.0.1 и Windows Server 2008 R2 Enterprise (64-битная машина) с запущенными приложениями или без них.

Есть ли способ решить эту проблему?

Тот же Glassfish 3.0.1 отлично работает на linux и Windows XP SP2 без каких-либо утечек.

Я вижу утечку через диспетчер задач Windows. Я использую Java SE 6 update 22

Спасибо!

См. Эту проблему: http://java.net/jira/browse/GLASSFISH-15589.

Лучший способ выявить утечки памяти в Java - запустить сервер и дать ему прогреться до нормального рабочего уровня, а затем со временем сделать дамп кучи. Если вы используете Sun JDK, вы можете запустить дамп кучи следующим образом:

jmap -dump:file=normal.hprof <pid of java process>

Дайте серверу поработать некоторое время, а когда увидите, что память начинает увеличиваться, возьмите еще один дамп кучи.

Повторите этот процесс по мере роста кучи, пока не убедитесь, что у вас есть хороший набор данных.

Вы можете использовать jhat для анализа дампа кучи, чтобы увидеть, какие типы объектов заполняют кучу. Число виновников со временем будет увеличиваться.