2019独角兽企业重金招聘Python工程师标准>>>

1.现象

线上后台任务的java进程处于假死状态

2.排查过程

1.查看假死的进程ID
ps -ef | grep sku

2.将该进程的所有线程信息打印输出至指定文件
jstack -F 8843 >> jstack-8843.log
3.查看该日志文件前500行的信息
head -n 500 jstack-8843.log

No deadlocks found,代表没有发现死锁,所有的线程都处于BLOCKED状态

4.查看GC的情况,每隔2s打印一次,一共打印20次
jstat -gc 8843 2000 20

发现gc的次数在疯狂增长,其次在该进程业务日志中发现java.lang.OutOfMemoryError: GC overhead limit exceeded

GC overhead limt exceed检查是Hotspot VM 1.6定义的一个策略,通过统计GC时间来预测是否要OOM了,提前抛出异常,防止OOM发生。Sun 官方对此的定义是:“并行/并发回收器在GC回收时间过长时会抛出OutOfMemroyError。过长的定义是,超过98%的时间用来做GC并且回收了不到2%的堆内存。用来避免内存过小造成应用不能正常工作。“

3.结论

基本可以判断为程序的内存设置过小,导致频繁GC,引起假死,调整 -Xms -Xmx 即可

转载于:https://my.oschina.net/xiongying0214/blog/3000378

GC overhead limt exceed 导致的java进程假死相关推荐

  1. hue oozie spark:GC overhead limt exceed

    为什么会发生: GC overhead limt exceed检查是Hotspot VM 1.6定义的一个策略,通过统计GC时间来预测是否要OOM了,提前抛出异常,防止OOM发生.Sun 官方对此的定 ...

  2. 线上服务Java进程假死快速排查、分析

    线上服务Java进程假死快速排查.分析 最近我们有一台服务器上的Java进程总是在运行个两三天后就无法响应请求了,具体现象如下: 请求业务返回状态码502,查看进程还在,意味着Java进程假死,无法响 ...

  3. java 进程假死原因_Java进程假死案例集合

    1. 案例1 今天通过域名调一个接口,10次中偶尔有1-2次请求失败,域名后绑定VIP,VIP后面为5台应用服务器. 1.1 范围缩小 直觉怀疑为某一台有有问题,于是单独的进行接口调用发现确实为其中一 ...

  4. java假死_分析java进程假死

    一.引言 1.编写目的 为了方便大家以后发现进程假死的时候能够正常的分析并且第一时间保留现场快照. 2.编写背景 最近服务器发现tomcat的应用会偶尔出现无法访问的情况.经过一段时间的观察最近又发现 ...

  5. java 进程假死原因_分析java进程假死状况

    1 引言 1.1 编写目的 为了方便大家以后发现进程假死的时候能够正常的分析并且第一时间保留现场快照. 1.2编写背景 最近服务器发现tomcat的应用会偶尔出现无法访问的情况.经过一段时间的观察最近 ...

  6. 分析java进程假死

    一.引言 1.编写目的 为了方便大家以后发现进程假死的时候能够正常的分析并且第一时间保留现场快照. 2.编写背景 最近服务器发现tomcat的应用会偶尔出现无法访问的情况.经过一段时间的观察最近又发现 ...

  7. 检查java程序假死的脚本

    http://b.formyz.org/show.php?contentid=55 某站点以java开发,运行在tomcat上,但因某些原因,java时不时假死或者自动停止.为了防止这个问题,临时采取 ...

  8. java服务程序假死(进程存在但请求无响应)的几种原因

    1. 假死现象 服务程序假死具有以下特征: 1. 程序对请求没有任何响应: 2. 程序请求时没有任何日志输出: 3. 程序进程存在,通过jps或者ps查看进程,可以看到服务进程存在: 2. 造成假死的 ...

  9. java 线程耗尽_关于线程耗尽导致请求超时系统假死

    线程耗尽:我们知道java程序中,所有计算都是通过线程来执行的,同时我们为了能够重复利用线程,避免频繁创建线程而消耗资源,一般我们都使用线程池,既然是池,那就表明线程是有限的,既然是有限的就会有耗尽的 ...

最新文章

  1. bigdecimal为0 xml不走_爱情不能够接受谎言的星座,天蝎座容忍度为0,发现将失去彼此...
  2. 容器装不下内容时,显示滚动条
  3. 默认子进程与父进程属于同一个进程组,所以注意对接受到的信号的处理方式
  4. lua学习笔记-HelloWorld
  5. Touch UI:高质量的移动端UI框架介绍
  6. [Emgu]判断一张图片是否在另一张图片中
  7. spring cloud nacos_SpringCloud Alibaba系列之Nacos配置中心玩法
  8. php页面get方法实现ajax,入门实例教程
  9. 400. 第 N 位数字
  10. @RestControllerAdvice注解使用
  11. 物体检测的过去、现在和未来
  12. 手机端和电脑端小说应用体验点
  13. 在Python中从头开始模拟退火
  14. 新版贵金属喊单直播间 财经直播间系统 视频直播室在线喊单 源码
  15. 单片机c语言编程烧录软件,STC-ISP单片机烧录软件下载|好用的单片机编程器烧录软件_最火软件站...
  16. mcgscom口针脚定义_触摸屏制作的速成篇(MCGS入门篇)
  17. 手机输入法带拼音声调_五笔已经淘汰,拼音到达瓶颈,百度重拳出击,全新输入方式来袭!...
  18. 搞懂微服务,从捕捉一头野猪说起
  19. AGI (Analytical Graphics Inc.)
  20. Axure--使用阿里云搭建自己的原型发布站点

热门文章

  1. 浅析部分物化以及冰山立方体的计算方法Star-Cubing
  2. 滴滴司机调度系统实践
  3. 计算机网络波动大,网络不稳定怎么办,小编教你电脑网络不稳定怎么办
  4. 智能驾驶软件测试,智能驾驶实车测试系统-VDAS
  5. 如何用课件制作工具验证三角形内角和
  6. Pyspark官方文档
  7. 机器视觉开源处理库汇总
  8. 驰骋督查督办系统说明书
  9. 杰奇小说站PC端跳转WAP端实现方式
  10. SQL学习(五):lastday函数(返回指定日期所在月份的最后一天)