【问题标题】:Howto monitor PermGen space usage before redeploying in Tomcat如何在 Tomcat 中部署之前监控 PermGen 空间使用情况
【发布时间】:2012-08-18 16:16:33
【问题描述】:

为了确定 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...)
}

【问题讨论】:

  • 你看过 JMX 吗?应该有一个命令行客户端。它可以提供我认为的数据。

标签: java tomcat permgen redeploy


【解决方案1】:

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

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

编辑 - 链接更新到 1.7。

【讨论】:

  • 完成 - 我们的企业基线是 1.5;我忘记了时间(和版本)已经过去了。
  • Here 是一个合理的 CLI jmx 客户端。
猜你喜欢
  • 1970-01-01
  • 2016-03-26
  • 2013-12-04
  • 2014-08-23
  • 2012-03-12
  • 2013-08-18
  • 1970-01-01
  • 1970-01-01
  • 2012-04-22
相关资源
最近更新 更多