最近tomcat老是报错,查看了日志出现PermGen 内存不够用,重启tomcat后查询使用情况
通过启动参数发现没有设置 PermGen,继续通过jmap查看
jmap -heap 21179
发现99%已使用,而且默认是30.5M,太小了,这里设置成256M
1. 创建`setenv.sh`文件
在`/usr/local/tomcat/bin`目录下创建一个新的`setenv.sh`文件。这个文件将被Tomcat的启动和停止脚本(如`catalina.sh`)使用。
2. 编辑文件:
编辑`setenv.sh`文件,并添加以下内容:
JAVA_OPTS="$JAVA_OPTS -Xms512m -Xmx1024m -XX:PermSize=64M -XX:MaxPermSize=256m"
3. 给文件执行权限:
chmod +x setenv.sh
4. 重启Tomcat:
重启后可以通过jps -l或者ps -ef|grep java 来查看当前启动的tomcat的PermSize
继续通过jmap 可以查看详细使用情况,如果是256M说明设置成功,PermSize代表初始的内存