Как контролировать использование пространства PermGen перед повторным развертыванием в Tomcat
Чтобы решить, может ли jvm столкнуться с нехваткой пространства permgen после следующего повторного комментария, я бы хотел проконтролировать текущее использование пространства permgen перед этим.
что-то вроде:
set myPermGenThreshold = 0.51 (51%)
currentlyUsedPermGenSize = (...ask the jvm here... say it's 0.6)
if (currentlyUsedPermGenSize > myPermGenThreshold ) {
(...restart tomcat...)
}
else {
(...redeploy application...)
}
1 ответ
Решение
Memory MX Bean предоставит вам все возможности использования без кучи, частью которой является perm gen. Размер самого пула perm gen должен быть доступен с помощью bean-компонента MX пула памяти, но имейте в виду, что имена пулов зависят от реализации и зависят от GC.
Обе эти компоненты JMX, как обычно, доступны с сервера платформы, поэтому они должны быть доступны извне с помощью клиента JMX.
Изменить - ссылки обновлены до 1.7.