Java进程突然消失

几种可能的原因:

  1. Java应用程序的问题:发生OOM导致进程Crash;
  2. JVM出错:JVM或JDK自身的Bug导致进程Crash;
  3. 被操作系统OOM-Killer;

原因1:JVM发生OOM

  最常见的是发生堆内存异常“java.lang.OutOfMemoryError: Java heap space”,排查步骤如下:
  Step1: 查看JVM参数 -XX:+HeapDumpOnOutOfMemoryError 和 -XX:HeapDumpPath=*/java.hprof;
  Step2: 根据HeapDumpPath指定的路径查看是否产生dump文件;
  Step3: 若存在dump文件,使用Jhat、VisualVM等工具分析即可;

原因2:JVM出现致命错误

  当jvm出现致命错误时,会生成一个错误文件 hs_err_pid.log,其中包括了导致jvm crash的重要信息,可以通过分析该文件定位到导致crash的根源,从而改善以保证系统稳定。当出现crash时,该文件默认会生成到工作目录下,然而可以通过jvm参数-XX:ErrorFile指定生成路径。
  hs_err_pid.log分析:https://my.oschina.net/xionghui/blog/498785

原因3:Linux进行OOM-killer

  Step1: 查看操作系统日志:sudo grep –color “java” /var/log/messages,确定Java进程是否被操作系统Kill;
  Step2: 若被操作系统Kill,执行dmesg命令查看系统各进程资源占用情况,明确Java占用内存是否合理,以及是否有其它进程不合理的占用了大量内存空间;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值