Linux随记(二十三 )

一、排查java程序出现OOM - 随记

1.1 上传demo.jar包 ,修改启动参数

shell 复制代码
#设置xmx  16GB ,当出现OOM的时候会在/data/soft/demo/下生成hprof文件
export NACOS_SERVER_ADDR=192.168.1.100:8848 
nohup java -Dspring.profiles.active=docker -Djava.security.egd=file:/dev/./urandom -Xmx16384m -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/soft/demo/demo_heapdump.hprof  -jar demo-1.0.0-SNAPSHOT.jar &


1.2 上传 arthas-bin-4.0.4.zip ,启动arthas-boot.jar

shell 复制代码
#上传arthas-bin-4.0.4.zip
mkdir arthas ; unzip -d arthas arthas-bin-4.0.4.zip
cd arthas
java -jar arthas-boot.jar
回车 ,选中demo程序 , 让其attach进入。
输入dashboard 查看状态信息。
输入memory 查看 内存信息

#手动执行生成hprof文件: heapdump /tmp/xxxdump.hprof

1.3 在Windows上,使用 eclipse MemoryAnalyzer 分析 demo_dump.hprof文件

shell 复制代码
准备:
MemoryAnalyzer-1.16.1.20250109-win32.win32.x86_64.zip 和 openjdk-17_windows-x64_bin.zip
打开软件后,open hprof文件 。 
具体分析操作 略


END 结束

相关推荐
峰顶听歌的鲸鱼17 分钟前
Kubernetes管理
运维·笔记·云原生·容器·kubernetes·云计算
霖霖总总27 分钟前
[小技巧42]InnoDB 索引与 MVCC 的协同工作原理
运维·数据库·mysql
CRMEB系统商城31 分钟前
CRMEB多商户系统(PHP)- 移动端二开之基本容器组件使用
运维·开发语言·小程序·php
HIT_Weston1 小时前
103、【Ubuntu】【Hugo】搭建私人博客:搜索功能(四)
linux·运维·ubuntu
旖旎夜光1 小时前
Linux(11)(中)
linux·网络
txinyu的博客1 小时前
前置声明与 extern
linux·c++
视觉震撼2 小时前
逐步指南:为大模型构建自动化知识图谱
运维·自动化·知识图谱
yeflx3 小时前
OpenMVS源码编译
运维
有泽改之_3 小时前
ssh命令使用
linux·运维·ssh
玩大数据的龙威4 小时前
【乱占耕地建房】—试点工作平台自动化填报系统
运维·自动化