JAVA中进程突然消失如何解决
本篇文章为大家展示了JAVA中进程突然消失如何解决,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
成都创新互联公司长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为仁布企业提供专业的成都网站设计、成都网站建设,仁布网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。
JVM自身故障
当JVM发生致命错误导致崩溃时,会生成一个hs_err_pid_xxx.log这样的文件,该文件包含了导致 JVM crash 的重要信息,我们可以通过分析该文件定位到导致 JVM Crash 的原因,从而修复保证系统稳定。
默认情况下,该文件是生成在工作目录下的,当然也可以通过 JVM 参数指定生成路径:
-XX:ErrorFile=/var/log/hs_err_pid
这个文件的内容他主要有如下内容
日志头文件
导致 crash 的线程信息
所有线程信息
安全点和锁信息
堆信息
本地代码缓存
编译事件
gc 相关记录
jvm 内存映射
jvm 启动参数
服务器信息
拿到这个文件后,不用说了,慢慢啃吧。说到这里,我要摸着良心说。这个文件巨复杂,如果要会读这个文件,请下点功夫。
JVM的OOM
坦白说,我很少遇到因为JVM的OOM,导致java进程退出的情况。
因为,一般情况下,出现OOM异常,JVM的GC会进行回收,是不会导致JVM进程退出的。要真说唯一导致退出的情况,那就是内存泄漏,由于内存占用越来越大,结果。。。。
不过这种JVM的OOM导致的异常,很好排查。
因为,你注意两个个参数
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=*/java.hprof;
然后去找dump快照文件,接下来借助VisualVM这种可视化工具分析就行。很容易定位问题。
上述内容就是JAVA中进程突然消失如何解决,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。
本文题目:JAVA中进程突然消失如何解决
网站URL:http://scyanting.com/article/pccigj.html