Re[3]: tomcat && outOfMemory
От: AVM Россия  
Дата: 04.01.09 10:47
Оценка: +1
Здравствуйте, Partisan, Вы писали:

P>Здравствуйте, AVM, Вы писали:


AVM>>Здравствуйте, inopressa, Вы писали:


I>>>работаю с Томкатом из под Идеи. Проект на JSF. Регулярно (после нескольких деплоев) вываливается с OutOfMemoryException. PemGemSpace error.


I>>>Памяти добавил, вываливаться стало чуть реже. Куда копать?

AVM>>PemGemSpace — специальная область памяти отвечающая за хранение классов. Когда ты делаешь undeploy, некоторые классы твоего приложения могут не выгружаться class loader-ом. Смотри профайлером, какие именно классы не выгружаются. Например, такая проблема может возникать при использовании commons-logging.
AVM>>Как вариант решения проблемы, использовать class loader сервера вместо class loader-а приложения. Подробности смотри в доке на Томкэт.

P>Объяснение неправильное. Да и вопрос тоже. На фига использовать IDEA, непонятно. Хотя проблема не имеет отношения к IDEA.

P>В общем, не хватает размера области памяти PermGen. Решение:
P>- увеличить его. Поиском в google по слову PermGen можно найти рецепты, в частности подходящий:
P>настройка PermGen
P>Что такое PermGen — см. в документации по JVM.
P>Посмотреть, сколько памяти сейчас используется в PermGen, можно программой jconsole и др.
P>- использовать JVM, в которой нету PermGen, а именно Oracle JRockit (ранее BEA JRockit).
Увеличение размера perm gen просто отстрочит вылет с out of memory, но не решит проблему. Надо внимательно смотреть какие классы не выгружаются после undeploy приложения.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.