Я использую weblogic 9.2, jdk1.5 и oracle 10g для своего приложения и получаю некоторые проблемы с памятью
У меня есть сервлет отчетов для 4 различных типов отчетов миллионов записей в БД
Теперь моя проблема в том, что когда я запускаю отчет по одному (для одного пользователя), не возникает проблем с памятью, скажем
при выполнении отчета объем памяти составлял 775 МБ
по окончании отчета объем памяти составлял 836 мб
Теперь
раньше, когда параллельные пользователи запрашивают отчеты, начинается утечка памяти
даже после окончания каждого отчета восстанавливается только немного памяти, скажем
при выполнении отчетов объем памяти составлял 33 МБ
когда отчеты заканчивали выполнение памяти было 86 мб
он остается на 86 МБ навсегда, пока следующий запрос не получит java.lang.OutOfMemoryError
Я вызывал System.gc после завершения каждого отчета, но он уменьшается до 86 МБ
~ Я создаю экземпляр объекта отчета внутри метода post сервлета для каждого запроса