Huathy-雨落江南,浮生若梦 2022-07-29 11:18 采纳率: 100%
浏览 19
已结题

Java进程假死,有点迷茫,有没有大靓仔分析分析,或给点建议!

问题遇到的现象和发生背景

Java程序老是跑着跑着假死了,但是重启之后又可以运行。参考网上的排查教程,我获取到了JVM的相关信息。但是好像看不大明白。有没有大靓仔,小姐姐。帮帮忙,看看这个是不是由于JVM导致的,还是其他的情况!

我的解答思路和尝试过的方法 -- 排查过程

参考文章https://blog.csdn.net/liaomingwu/article/details/125160302第二点:造成假死的可能原因

  1. java线程出现死锁,或所有线程被阻塞;(我没有看到线程全部阻塞)

    img

  2. 数据库连接池中的连接耗尽,导致获取数据库连接时永久等待;mybatis超时时间是默认的。
  3. 出现了内存泄漏导致了OutOfMemory,内存空间不足导致分配内存空间持续失败;服务器的可用内存足够,但是分配给jvm的内存被耗尽的情况,容易出现这种情况;(内存好像也足够,不过老年代占比好像有90%多)。

    img

  4. 服务程序运行过程中替换了jar包,但是没有进行重启服务,这属于不按规则操作引起的问题;(没有操作)
  5. 磁盘空间满,导致需要写数据的地方全部失败;(磁盘充足)
  6. 线程池满,无法分配更多的线程来处理请求,通常是因为线程被大量阻塞在某个请求上;
  • 写回答

1条回答 默认 最新

  • Tomshidi 2022-07-29 11:39
    关注

    首先,假死是指某个功能无法使用还是整个系统的功能都无法使用?
    如果确认是所有系统都假死,那需要确认该java服务的cpu占用,以及堆内内存占用比例。如果这两个比例高,那基本可以确定是内存无法被FGC导致的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月16日
  • 已采纳回答 4月16日
  • 创建了问题 7月29日

悬赏问题

  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么