如何在Tomcat中部署之前监视PermGen空间使用情况

时间:2012-08-23 07:25:00

标签: java tomcat permgen redeploy

为了确定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 个答案:

答案 0 :(得分:7)

Memory MX Bean将为您提供所有非堆使用,其中perm gen是其中的一部分。 perm gen池本身的大小应该可以使用Memory Pool MX Bean获得,但要注意池的名称是实现和GC依赖的。

这些JMX bean都可以像往常一样从平台服务器上获得,因此可以使用JMX client在外部获取它们。

编辑 - 链接已更新至1.7。