2019独角兽企业重金招聘Python工程师标准>>>

一、线程dump

1、我最先使用的是线程dump,看线程是否有阻塞的,比如查看同步方法的;

2、线程dump是直接可以用editplus打开的,看起来很方便;

二、堆dump

1、速度比线程dump慢很多;

2、最近api经常会无故访问不了,进程是存在的,检查日志发现是因为堆内存溢出,其它接口虽然访问到了但是不能分配内存当然也就无法成功响应,然后僵死了导致服务不可用,在重启服务之前用jmap命令生成了一份dump文件便于后面分析。

生成dump文件的命令:

jmap -dump:format=b,file=20170307.dump 16048

3、生成dump文件后用java的jvisualvm打开。具体打开方式可参考我的另一篇文章:https://my.oschina.net/weiweiblog/blog/1787912

4、Java Heap Dump文件格式是一个HPROF二进制格式,需要特殊的工具才能进行分析,而这个文件通常都比较大,如果你的Heap Dump文件超过了几百MB,那就不要再寄希望于jhat了,因为jhat需要数倍于dump文件的内存。这个时候你可以用MAT(Memory Analyzer),用MAT你可以在有2GB可用内存的机器上分析大约1GB左右的Dump文件。

转载于:https://my.oschina.net/weiweiblog/blog/1787905

Dump文件:线程dump和堆dump相关推荐

  1. dump文件调试技巧(产生Dump文件)

    主函数: #include "stdafx.h" #include "DumpFile.h" int _tmain(int argc, _TCHAR* argv ...

  2. java 生成dump文件_程序自动生成Dump文件

    前言:通过drwtsn32.NTSD.CDB等调试工具生成Dump文件,drwtsn32存在的缺点虽然NTSD.CDB可以完全解决,但并不是所有的操作系统中都安装了NTSD.CDB等调试工具.了解了m ...

  3. oracle dump 文件解析,Oracle 常用的dump(Memory Dumps/File Dumps/Trace 文件使用示例)

    一.Memory Dumps 1).Global Area ALTER SESSION SET EVENTS 'immediate trace name global_area level n'; 1 ...

  4. 解析oracle的dump文件,读懂数据块dump文件信息

    尊重作者著作,转自http://blog.csdn.net/guoyjoe/article/details/8567076 -------------------------------------- ...

  5. java oom dump_JVM 在遇到OOM(OutOfMemoryError)时生成Dump文件的三种方式

    JVM 在遇到OOM(OutOfMemoryError)时生成Dump文件的三种方式,以及如何使用Eclips Memory Analyzer(MAT)插件进行堆内存分析. 方法一: jmap -du ...

  6. .NET 容器环境下创建应用 dump 文件

    .NET 容器环境下创建应用 dump 文件 Intro 有时候我们的应用会出现一些异常的情况,比如内存飙升,线程死锁等等,通过一些 metrics 我们可能大概的了解内存是增长了,但是具体是哪里增长 ...

  7. dump文件解析之探索.Net的内存

    前言: 对于需要长时间运行的.net程序,有时需要我们查看内存的使用有没有内存泄露问题. 我们可以从dump文件中找到答案. Dump的看点 用dump文件来分析内存,到底我们需要关心哪些点呢? 内存 ...

  8. dump分析工具_阿里P8教你如何使用Jprofile解析dump文件

    1 Jprofile简介 官网 下载对应的系统版本即可 性能查看工具JProfiler,可用于查看java执行效率,查看线程状态,查看内存占用与内存对象,还可以分析dump日志. 2 功能简介 选择a ...

  9. 生成和查看dump文件

    在日常开发中,即使代码写得有多谨慎,免不了还是会发生各种意外的事件,比如服务器内存突然飙高,又或者发生内存溢出(OOM).当发生这种情况时,我们怎么去排查,怎么去分析原因呢? 1. 什么是dump文件 ...

最新文章

  1. c语言外部中断th0,帮忙看看void int0() interrupt 1 //采用中断0 控制节拍 { TH0=0xd8; TL0=0xef; n--; } 啥意思...
  2. android view可视区域,Android使用WindowManager构造悬浮view
  3. c语言void replace(str,ch)替换字符串,C++ 中字符串查找、字符串截取、字符串替换...
  4. java 等待几秒_Java并发编程synchronized相关面试题总结
  5. mysql帐户权限replace_mysql 用户管理和权限设置
  6. 火狐一打开就弹出错误控制台 解决方案 及常用插件列表备份
  7. 江西省2019计算机二级报名日期,2020年3月江西计算机等级报名时间、报名入口【2019年12月18日-27日】...
  8. Gaze Estimation笔记——data normalization
  9. python标准库使用教程_Python标准库概览
  10. C#绘制立体三维饼状图(超酷)
  11. 【Python】Scrapy入门实例
  12. 知乎7万赞回答:你思考问题的方式,决定了你的层次
  13. Python基础教程(第3版)PDF
  14. php集成坏境下载,常见php集成环境安装包
  15. allegro铜皮优先级设置
  16. pageHelper.startPage(m,n)的用法
  17. [转载] 北京公交集团新LOGO
  18. 先进的半导体晶圆清洗技术
  19. 运行edX Devstack
  20. 鸿海精密收购东芝闪存业务志在必得 或出价270亿美元

热门文章

  1. AIX上报:“Shell will time out in 60 seconds” 解决办法
  2. Eclipse快捷键(自用)
  3. Linux 3.10 新特性
  4. VMware vSphere学习笔记二
  5. Windows、Linux系统安装JDK配置Java环境变量
  6. 40个大数据学习资源,个个是干货,最后7个太给力
  7. Java学习教程整理
  8. REDIS故障排查工具
  9. 苹果电脑显示500服务器错误,VS For Mac 运行项目出现 HTTP 500错误
  10. Apollo创建项目