博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
内存排查问题复盘
阅读量:5462 次
发布时间:2019-06-16

本文共 628 字,大约阅读时间需要 2 分钟。

问题现象:

测试人员反馈预发布环境接口请求报502网关错误,检查后发现java程序挂掉了,重启后恢复正常,但过了不久发现java程序又自动停掉了,没有任何人为操作,不知道程序为何会自己停掉

排查步骤:

1.查看内存使用情况:free -m,htop

   发现剩余内存不多了,而且该进程占用虚拟内存较大

   

   推测是机器内存不够被linux内核OOM killer机制给杀掉了,进一步去证实推测

2.查看系统日志: egrep -i -r 'killed process' /var/log,grep "Out of memory" /var/log/messages或者dmesg命令

   由于程序记录了进程ID为3777,所以可以直接根据进程号从/var/log/messages中找出结果来:

   May 17 15:11:55 staging-java kernel: [ 3777]  1002  3777  3609618   228573     691        0             0 java

   May 17 15:11:55 staging-java kernel: Out of memory: Kill process 3777 (java) score 27 or sacrifice child

3.至此问题确定:OOM

解决方案:

1.合理设置jvm参数

2.排查代码是否存在内存泄露

转载于:https://www.cnblogs.com/shuo1208/p/10883063.html

你可能感兴趣的文章
微软源代码管理工具TFS2013安装与使用图文教程
查看>>
JAVA中获取当前运行的类名,方法名,行数
查看>>
Nginx+PHP-FPM的域Socket配置方法
查看>>
集成通用Mapper
查看>>
SQL单表查询
查看>>
无服务器端的UDP群聊功能剖析 文章索引
查看>>
android studio 新建项目导入到Coding远程仓库git
查看>>
@bzoj - 4381@ [POI2015] Odwiedziny
查看>>
Pandas选择数据
查看>>
poj2411铺砖——状压DP
查看>>
python3 不知文件编码情况下打开文件代码记录
查看>>
打开eclipse出现JVM terminated.Exit Code=-1错误的解决办法
查看>>
SSH连接时出现Host key verification failed的原因及解决方法【转载】
查看>>
2017.6.7
查看>>
7. 炒股怎么看盘
查看>>
【采集层】Kafka 与 Flume 如何选择(转)
查看>>
【BZOJ1803】Spoj1487 Query on a tree III 主席树+DFS序
查看>>
jQuery 遍历 - map() 方法
查看>>
jQuery事件绑定、解绑、命名空间
查看>>
C#类,对象,构造方法
查看>>