我需要一个命令来检查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
请在此建议我。
答案 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命令