为了确定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...)
}
答案 0 :(得分:7)
Memory MX Bean将为您提供所有非堆使用,其中perm gen是其中的一部分。 perm gen池本身的大小应该可以使用Memory Pool MX Bean获得,但要注意池的名称是实现和GC依赖的。
这些JMX bean都可以像往常一样从平台服务器上获得,因此可以使用JMX client在外部获取它们。
编辑 - 链接已更新至1.7。