博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
内存溢出导致jenkins自动部署到tomcat失败
阅读量:6305 次
发布时间:2019-06-22

本文共 1611 字,大约阅读时间需要 5 分钟。

原文地址:http://openwares.net/java/jenkens_deploy_to_tomcat_error_of_outofmemoryerror.html

jenkins自动部署war到tomcat 7应用服务器时很不稳定,经常出现错误:

1
2
3
4
5
6
7
ERROR: Publisher hudson.plugins.deploy.DeployPublisher aborted due to exception
org.codehaus.cargo.container.ContainerException: Failed to deploy [
/var/lib/jenkins/jobs/devel_auto_build_deploy/workspace/build/libs/reis
.war]
    
...
Caused by: org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: FAIL - Encountered exception javax.management.RuntimeErrorException: Error invoking method check
...
org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: FAIL - Encountered exception javax.management.RuntimeErrorException: Error invoking method check
...

tomcat日志可以看到如下异常:

堆空间内存不足

1
java.lang.OutOfMemoryError: Java heap space

永久代内存不足

1
2
3
4
5
SEVERE: Exception invoking method check
java.lang.OutOfMemoryError: PermGen space
...
Exception
in
thread
"http-bio-8080-exec-38"
java.lang.OutOfMemoryError: PermGen space
OpenJDK 64-Bit Server VM warning: Exception java.lang.OutOfMemoryError occurred dispatching signal SIGTERM to handler- the VM may need to be forcibly terminated

出现此问题的原因是tomcat默认配置的堆和非堆内存都太小了,需要调整如下JVM内存配置参数:

    • -Xms

初始堆内存大小

    • -Xmx

最大堆内存大,一般设置-Xms与-Xmx一样大小,根据应用类型和物理内存大小来决定二者的大小

    • -Xmn或者-XX:NewSize

堆内存中年轻代的大小

    • -XX:PermSize

永久代内存的初始大小

    • -XX:MaxPermSize

永久代内存的最大值

一般设置这几个参数也就够了,debian系统上tomcat 7 设置JVM的内存参数要在配置文件/etc/default/tomcat7中的JAVA_OPTS参数中设置。

一个web app,服务器物理内存16G,其设置如下:

1
JAVA_OPTS=
"-Djava.awt.headless=true -Xmx5120m -Xms5120m -Xmn1024m -XX:PermSize=1024m -XX:MaxPermSize=1024m -XX:+UseConcMarkSweepGC"

References:

[1]
[2]
[3]

转载地址:http://xmnxa.baihongyu.com/

你可能感兴趣的文章
centos7系统基本操作命令
查看>>
使用合适的设计模式一步步优化前端代码
查看>>
网页性能管理详解
查看>>
Linux入门之磁盘管理(2)文件系统
查看>>
"=="和 equals 方法究竟有什么区别?
查看>>
我的友情链接
查看>>
Dockerfile构建镜像
查看>>
常用环境变量整理
查看>>
one page has two <form:input path="relatedArtic>
查看>>
开启Java之路——不走弯路,就是捷径,欲速则不达
查看>>
我的友情链接
查看>>
javascript基础(伪数组)
查看>>
apache虚拟主机配置
查看>>
PIC浅谈--《x86/x64体系探索及编程》试读
查看>>
Oracle12c启动数据库报错:ORA-01078: failure in processing system parameters
查看>>
Training的第二十六天
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
项目变更管理和项目安全管理及项目风险管理
查看>>
观察者模式
查看>>