阅山

  • WIN
    • CSharp
    • JAVA
    • OAM
    • DirectX
    • Emgucv
  • UNIX
    • FFmpeg
    • QT
    • Python
    • Opencv
    • Openwrt
    • Twisted
    • Design Patterns
    • Mysql
    • Mycat
    • MariaDB
    • Make
    • OAM
    • Supervisor
    • Nginx
    • KVM
    • Docker
    • OpenStack
  • WEB
    • ASP
    • Node.js
    • PHP
    • Directadmin
    • Openssl
    • Regex
  • APP
    • Android
  • AI
    • Algorithm
    • Deep Learning
    • Machine Learning
  • IOT
    • Device
    • MSP430
  • DIY
    • Algorithm
    • Design Patterns
    • MATH
    • X98 AIR 3G
    • Tucao
    • fun
  • LIFE
    • 美食
    • 关于我
  • LINKS
  • ME
Claves
长风破浪会有时,直挂云帆济沧海
  1. 首页
  2. Programming
  3. Spring Cloud
  4. 正文

spring boot 内存溢出假死所有接口pending的解决过程VisualVM

2024-04-25
参考链接:
1.https://blog.51cto.com/u_16099217/10523591
2.https://www.cnblogs.com/sxdcgaq8080/p/10695101.html

prod环境的一个spring boot 服务出现了假死,表现就是所有接口均pending,但日志、内存、CPU利用率均正常。其它spring服务正常。

一、数据收集过程

1. dump 环境保留现场

常用工具集:

  • jps-输出JVM中运行的进程状态信息
  • jstack-查看某个java进程内的线程堆栈信息
  • jmap-查看堆内存使用状态,一般结合jhat使用
  • jstat-JVM统计监控工具
  • jhat-用来分析jvm堆内存的内存转储

jstack dump

jmap dump内存

查找java程序的pid

ps -ef|grep java

执行jstack dump,数字是进程PID。

jstack 953539 > dump.log

使用jmap生成dump文件

jmap -dump:format=b,file=serviceDump.dat 953539

下载dump分析工具,分析

常见工具:

  • IBM Heap Analyzer

二、数据分析过程

线程jstack分析工具

分析网站:
1. https://jstack.review/
2. https://chatgpt.com/

内存dumpVisualVM分析工具

安装插件

内存溢出Eclipse MemoryAnalyzer分析工具

标签: 暂无
最后更新:2024-11-18

代号山岳

知之为知之 不知为不知

点赞
< 上一篇
下一篇 >

COPYRIGHT © 2099 登峰造极境. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

蜀ICP备14031139号-5

川公网安备51012202000587号