需要命令来检查运行tomcat服务器中的permgenspace

时间:2015-09-16 07:27:17

标签: linux tomcat

我需要一个命令来检查tomcat服务器中的permgenspace。基本的是,如果我遇到permgenspace错误,我想看到那里的空间。

我使用下面的命令来检查permgenspace,它总是显示相同的大小,尽管Tomcat可能会遇到java.lang.OutOfMemoryError:PermGen空间错误。

java -XX:+PrintFlagsFinal tomcat | grep PermSize
uintx AdaptivePermSizeWeight                    = 20              {product}           
uintx MaxPermSize                               = 174063616       {pd product}        
uintx PermSize                                  = 21757952        {pd product}        

错误:无法找到或加载主类tomcat

请在此建议我。

2 个答案:

答案 0 :(得分:1)

您应该尝试以下命令:

  

jstat -gcpermcapacity SERVERPID

对于java 8+,不推荐使用此命令;请改用这些:

  

jstat -gcutil SERVERPID
  jstat -gc SERVERPID

来源:http://docs.oracle.com/javase/7/docs/technotes/tools/share/jstat.html#gcpermcapacity_option

答案 1 :(得分:0)

你可以试试这个:

  

export JAVA_OPTS =" -Xms1024m -Xmx10246m -XX:NewSize = 256m   -XX:MaxNewSize = 356m -XX:PermSize = 256m -XX:MaxPermSize = 356m"

您可以根据需要更改实际堆大小和PermGen Space。

重新启动并再次运行tomcat命令