宝兰德BES应用服务器部署应用日志报错`GC overhead limit exceeded Command deploy failed. java.lang.OutOfMemoryErro的处理办法

2023-05-16

在BES应用服务器上部署应用时,应用没有部署成功,通过查看安装目录下的服务器的log以及对应实例的log内容,发现:

服务器的server.log ,cat /opt/BES9/logs/server.log

####|2022-12-28 09:52:48.149|INFO|javax.enterprise.system.tools.deployment|_ThreadName=httpWorkThread-0.0.0.0-6900-40|Deploy application ntkoSignServer on target(s) `[testIns]`!|####
####|2022-12-28 09:53:50.823|ERROR|javax.enterprise.system.tools.deployment|_ThreadName=httpWorkThread-0.0.0.0-6900-40|Failure to deploy application ntkoSignServer on target(s) `testIns`!|####
com.bes.enterprise.cluster.deployment.DeploymentException: Failure to deploy application ntkoSignServer on target(s) `testIns`!
        at com.bes.enterprise.cluster.deployment.core.BaseDeploymentPhaseProcessor.getDeployFailureOnTargetsException(BaseDeploymentPhaseProcessor.java:567) ~[bes-cluster-deployment-manager.jar:?]
        at com.bes.enterprise.cluster.deployment.core.BaseDeploymentPhaseProcessor.logDeploymentPhaseProcessResult(BaseDeploymentPhaseProcessor.java:547) [bes-cluster-deployment-manager.jar:?]
        at com.bes.enterprise.cluster.deployment.core.DeployApplicationProcessor.doProcess(DeployApplicationProcessor.java:241) [bes-cluster-deployment-manager.jar:?]
        at com.bes.enterprise.cluster.deployment.core.BaseDeploymentPhaseProcessor.process(BaseDeploymentPhaseProcessor.java:177) [bes-cluster-deployment-manager.jar:?]
        at com.bes.enterprise.cluster.deployment.core.ApplicationDeploymentManager.deploy(ApplicationDeploymentManager.java:121) [bes-cluster-deployment-manager.jar:?]
        at com.bes.enterprise.cluster.admin.command.deployment.DeployApplicationCommand.handleDeploy(DeployApplicationCommand.java:335) [bes-cluster-admin-command.jar:?]
        at com.bes.enterprise.cluster.admin.command.deployment.DeployApplicationCommand.doExecute(DeployApplicationCommand.java:319) [bes-cluster-admin-command.jar:?]
        at com.bes.enterprise.cluster.command.api.BaseAdminCommand.execute(BaseAdminCommand.java:61) [bes-cluster-command-api.jar:?]
        at com.bes.enterprise.console.service.impl.AdminCommandExecutorHelper.executeAdminCommandWithResponse(AdminCommandExecutorHelper.java:191) [classes/:?]
        at com.bes.enterprise.console.service.impl.ApplicationResourceServiceImpl.deployApplication(ApplicationResourceServiceImpl.java:129) [classes/:?]
        at com.bes.enterprise.console.configurations.applications.application.action.ApplicationAction.deployApplication(ApplicationAction.java:569) [classes/:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_281]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_281]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_281]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_281]
        at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:222) [spring-web-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137) [spring-web-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:775) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:705) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:965) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:867) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:661) [bes-embed-core.jar:?]
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:841) [spring-webmvc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [bes-embed-core.jar:?]
        at com.bes.enterprise.console.core.action.BaseActionFilter.doFilter(BaseActionFilter.java:145) [classes/:?]
        at com.bes.enterprise.webtier.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.core.ServletWrapperValve.invoke(ServletWrapperValve.java:198) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.core.ServletContextValve.invoke(ServletContextValve.java:96) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.core.VirtualHostValve.invoke(VirtualHostValve.java:140) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.core.ServletEngineValve.invoke(ServletEngineValve.java:87) [bes-embed-core.jar:?]
        at com.bes.enterprise.webtier.connector.CoyoteAdapter.service(CoyoteAdapter.java:370) [bes-embed-core.jar:?]
        at com.bes.enterprise.web.crane.http11.Http11Processor.service(Http11Processor.java:803) [bes-embed-core.jar:?]
        at com.bes.enterprise.web.crane.AbstractProcessorLight.process(AbstractProcessorLight.java:66) [bes-embed-core.jar:?]
        at com.bes.enterprise.web.crane.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:822) [bes-embed-core.jar:?]
        at com.bes.enterprise.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1486) [bes-embed-core.jar:?]
        at com.bes.enterprise.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [bes-embed-core.jar:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_281]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_281]
        at com.bes.enterprise.util.threads.WorkThread$WrappingRunnable.run(WorkThread.java:61) [bes-embed-core.jar:?]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_281]
        Suppressed: com.bes.enterprise.cluster.deployment.DeploymentException: Failure to deploy application ntkoSignServer on instance testIns, the error msg is: `GC overhead limit exceeded

Command deploy failed.
`!

错误主要原因:`GC overhead limit exceeded Command deploy failed.

再查看实例日志:cat /opt/BES9/testnode/instances/testIns/logs/server.log

 错误主要信息:

|##
##|2022-12-28 09:52:53.543|INFO|configuration|_ThreadID=6233;_ThreadName=bes-deployment-thread-12|Configuring enterprise application: /opt/BES9/testnode/instances/testIns/deployments/ntkoSignServer|##
##|2022-12-28 09:53:50.088|SEVERE|deployment|_ThreadID=6233;_ThreadName=bes-deployment-thread-12|GC overhead limit exceeded
com.bes.enterprise.appserv.deployment.exception.DeploymentException: GC overhead limit exceeded
        at com.bes.enterprise.appserv.deployment.AppDeployer.deployApp(AppDeployer.java:134)
        at com.bes.enterprise.appserv.deployment.AppDeployer.deployApp(AppDeployer.java:99)
        at com.bes.enterprise.appserv.deployment.handler.DeployApplicationHandler.deploy(DeployApplicationHandler.java:142)
        at com.bes.enterprise.appserv.deployment.handler.DeployApplicationHandler.doApplicationProcess(DeployApplicationHandler.java:105)
        at com.bes.enterprise.appserv.deployment.handler.AbstractApplicationHandler$1.call(AbstractApplicationHandler.java:69)
        at com.bes.enterprise.appserv.deployment.handler.AbstractApplicationHandler$1.call(AbstractApplicationHandler.java:66)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
        at com.bes.enterprise.appserv.deployment.handler.AbstractApplicationHandler$TerminableThread.run(AbstractApplicationHandler.java:177)
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
|##
##|2022-12-28 10:55:14.693|INFO|configuration|_ThreadID=6247;_ThreadName=bes-deployment-thread-14|Configuring enterprise application: /opt/BES9/testnode/instances/testIns/deployments/ntkoSignServer|##
##|2022-12-28 11:01:00.215|SEVERE|deployment|_ThreadID=6247;_ThreadName=bes-deployment-thread-14|Java heap space
com.bes.enterprise.appserv.deployment.exception.DeploymentException: Java heap space
        at com.bes.enterprise.appserv.deployment.AppDeployer.deployApp(AppDeployer.java:134)
        at com.bes.enterprise.appserv.deployment.AppDeployer.deployApp(AppDeployer.java:99)
        at com.bes.enterprise.appserv.deployment.handler.DeployApplicationHandler.deploy(DeployApplicationHandler.java:142)
        at com.bes.enterprise.appserv.deployment.handler.DeployApplicationHandler.doApplicationProcess(DeployApplicationHandler.java:105)
        at com.bes.enterprise.appserv.deployment.handler.AbstractApplicationHandler$1.call(AbstractApplicationHandler.java:69)
        at com.bes.enterprise.appserv.deployment.handler.AbstractApplicationHandler$1.call(AbstractApplicationHandler.java:66)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
        at com.bes.enterprise.appserv.deployment.handler.AbstractApplicationHandler$TerminableThread.run(AbstractApplicationHandler.java:177)
Caused by: java.lang.OutOfMemoryError: Java heap space

Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
 

Caused by: java.lang.OutOfMemoryError: Java heap space
 

处理办法是修改实例的jvm内存大小:点击实例管理--实例名称--修改jvm配置的最大最小堆内存,通常改为8192M(当然这个数据的大小还要结合实际的内存大小)

JVM堆内存常用参数

参数

描述

-Xms    堆内存初始大小,单位m、g

-Xmx(MaxHeapSize)堆内存最大允许大小,一般不要大于物理内存的80%

-XX:PermSize  非堆内存初始大小,一般应用设置初始化200m,最大1024m就够了

-XX:MaxPermSize

参考资料:JVM堆内存(heap)详解_普通网友的博客-CSDN博客_jvm堆内存

这里我设置的2G,也就是2048M。 这里需要注意的是: 要根据实际的运行内存去设置这个堆最大值,而不是上述说的推荐是8192,假设内存本身就不大,那么设置大的堆最大值可能会出现其他的问题,比如说我就踩坑了,我的服务器只有4G的内存,然后设置的8G的堆最大值就很慢很慢,最后就直接timeout了。  需要根据实际情况定。后来我设置成2G就没会再报timeout 的错误了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

宝兰德BES应用服务器部署应用日志报错`GC overhead limit exceeded Command deploy failed. java.lang.OutOfMemoryErro的处理办法 的相关文章

  • 2.玩客云armbian5.9安装docker

    1 换源 命令 xff1a nano etc apt sources list 用以下内容替换原文件内容 deb https mirrors ustc edu cn debian buster main contrib non free d
  • JAVA架构之路(数据加密与常见加密算法)

    常见加密算法以及安全级别和使用场景 DES xff08 安全级别不高 xff0c 消耗性能 较小 xff09 AES xff08 安全级别较高 xff09 MD5 xff08 安全级别较高 xff0c 一般不用做加密 xff0c 常用在校验
  • 这些Python计算机视觉工具,帮你coding事半功倍

    作为开发人员喜爱的语言之一 xff0c Python以其丰富的社区可用工具和库而闻名 我们列出了开发人员可以用于计算机视觉10个流行流行的Python库或平台 xff0c 以帮助开发人员自动化开发任务 xff0c 其中包括检测和可视化 1
  • iis7.5 的解析漏洞(iis7.5 解析漏洞解决方案)

    一 iis7 5 的解析漏洞介绍 漏洞影响 IIS7 及IIS7 5 在使FastCGI方式调用php时 在php ini里设置 cgi fix pathinfo 1 使得访问任意文件URL时 在URL后面添加 x php 等字符时 该文件
  • 百度推广优化(百度推广优化技巧)

    百度推广优化是一种提高网站在百度搜索引擎中曝光率的有效方法 通过对网站进行优化 可以使其在百度搜索结果页面中排名更靠前 从而增加网站的点击量和流量 百度推广优化就是花钱获得在百度上竞争广告位 增加曝光率和变现的可能性 而在做百度推广优化应该
  • 百度推广优化(百度推广优化方法)

    百度推广优化是什么意思 百度推广优化是指通过花钱获得在百度上竞争广告位 推广优化的位置越靠前 越能得到曝光 越能增加被变现的可能性 大家都想在搜索引擎中获得主页的顶级排名 那么我们必须根据一些优化的营销推广策略和技提高网站在搜索引擎中的排名
  • 程序猿健康养生口诀和食谱来了

    程序猿健康养生口诀和食谱来了1 饱不洗头 饿不洗澡 冷水洗脸 美容保健 汗水没落 冷水莫浇 温水刷牙 防敏固齿 2 吃米带糠 吃菜带帮 男不离韭 女不离藕 青红萝卜 生克熟补 食不过饱 饱不急卧 3 养生在动 养心在静 心不清净 思虑妄生
  • 数据可视化数据存储

    数据可视化数据存储是根据不同的需求 要爬取的数据可能会很多 这时就需要把数据保存下来进行后续的清理 分析和统计操作 常用的存储方式有数据库存储和文件存储等 其中 使用数据库方式来存储数据涉及不同的数据库系统 每种数据库系统之间的差别也很大
  • 数据可视化数据存储的好处

    数据可视化定义 xff1a 通过可视表达增强人们完成某些任务的效率 数据可视化数据存储是现代商业活动中经常会使用到的一种方法 xff0c 相对于其他的方式来讲它可以使数据的变化变得更为直观 xff0c 而大量的数据可视化之后会有很多人选择将
  • 泛微移动平台e-mobile漏洞利用

    泛微移动平台e mobile漏洞利用基本信息 漏洞情报编号 xff1a vulbox intel 15244 是否可自动化组件 xff1a 是 CVE ID xff1a 暂无 发布日期 xff1a 2022 04 01 15 48 45 C
  • 泛微移动平台e-mobile漏洞利用的修复方案

    泛微移动平台e mobile漏洞利用的修复方案 1 对产生漏洞模块的传入参数进行有效性检测 xff0c 对传入的参数进行限定 2 当用户输入限定字符时 xff0c 立刻转向自定义的错误页 xff0c 不能使用服务器默认的错误输出方式 3 对
  • /.well-known/ 漏洞

    well known openid configuration 这些通常会返回一个 JSON 配置文件 其中包含关键信息 站点中隐藏的 well known 目录是IETF定义的知名站点的URI前缀 常被用来证明域名的所有权 使用ACME来
  • 电脑编程自学(零基础自学编程怎么入门)

    电脑编程自学入手 确定编程学习的方向 编程语言有多种 php C C C JAVA Python等 每种语言都有不同的优缺点 可以根据自己的兴趣方向选择一门编程语言作为自己的学习目标 基础阶段的语法学习 学习任何一门编程语言 都需要掌握其编
  • Linux(Linux各目录结构详解)

    我们知道Linux系统是一个文件系统 xff0c 它的文件系统就类似windows系统下的磁盘文件系统 我们连接上一台linux系统的服务器 输入命令 xff1a ls 我们可以看到 linux系统的根目录下有这些目录 bin boot d
  • 电脑编程自学(电脑编程自学能学会吗)

    电脑编程自学能学会吗 自己学习编程是能学会的 如果你愿意每天为学习编码付出一点努力 那么通过免费的在线资源以及利用Quora等平台提供的其他支持渠道 你绝对有可能做到这一点 所以不要犹豫 迈出学习如何编写代码的第一步 并看着自己随着时间的推
  • bbwbbw(Java打印输出bbwbbw)

    Java打印输出数据println和print打印输出数据 xff0c System out println 34 bbwbbw 34 System out println 34 h5 bbwbbw 34 h5 bbwbbw System
  • 需要家长或监护人同意才能使用该账户

    使用微软账户登录时提示 需要家长或监护人同意才能使用该账户 的处理方法 xff0c 电脑登录提示这个 需要家长或监护人同意才能使用该账户 1 点击了解更多关于家长监护人许可 xff0c 点击更新账户信息 xff0c 更改出生日期 xff0c
  • 电脑登录提示“需要家长或监护人同意才能使用该账户”

    今天装电脑 xff0c 电脑登录提示这个 需要家长或监护人同意才能使用该账户 使用微软账户登录时提示 需要家长或监护人同意才能使用该账户 的处理方法 xff1a 1 点击了解更多关于家长监护人许可 xff0c 点击更新账户信息 xff0c
  • 大b和小b的区别是什么

    计算机里大b和小b的区别是什么 B与b nbsp kbps字节宽带换算区别掉线 nbsp BYTE字节bit比特1B 8b这里指的是 带宽网速的 单位计算方 式方法及关 系 在计算机科学中 bit 比特 是表示信息的最小单位 叫做二进制位
  • https tk6 us

    https tk6 us专题 为您展现优质的https tk6 us各类信息 在这里您可以找到关于https tk6 us的相关内容及最新的https tk6 us贴子 https tk6 us服务器iP xff1a 当前解析 xff1a

随机推荐