Tomcat耗尽了PermGen空间,即使保留了很多PermGen空间

时间:2014-07-02 09:12:18

标签: tomcat tomcat7 out-of-memory permgen

运行Tomcat失败并显示java.lang.OutOfMemoryError - 与缺少PermGen空间相关的错误。

我最近将Tomcat改为以自己的用户身份运行(而不是root用户)。

我尝试将PermGen中的CATALINA_OPTS大小增加到512MB和1024MB,但似乎没有任何影响。

我还通过(暂时)为用户提供与root用户相同的限制来排除ulimit限制。

1 个答案:

答案 0 :(得分:0)

解决方案结果是缺少磁盘空间。

Tomcat和我们的应用程序日志/配置文件位于几乎已满的分区上。

随着分区变得完全填满,我们的日志框架开始抛出IOException s尝试写入日志文件(而不是PermGen错误)。 IOEXceptions给了我解决问题所需的提示。运行df表明分区已经完全填满。

将日志文件移动到另一个分区可以解决问题,并允许我们以自己的(非root用户)用户身份运行Tomcat。