当前位置: 首页 > news >正文

dw网页设计期末作业源代码搜狗整站优化

dw网页设计期末作业源代码,搜狗整站优化,企业融资的含义,迁安做网站Java基础 - JVM之Dump文件详解 文章目录 Java基础 - JVM之Dump文件详解一、什么是Dump三、为什么需要Dump分析思路 四、Dump记录哪些内容4.1 Java dump 文件的格式和内容段格式行格式 4.2 常用分类heap dump和thread dumpheap dumpthread dump 五、如何生产Dump文件5.1 获取hea…

Java基础 - JVM之Dump文件详解

文章目录

  • Java基础 - JVM之Dump文件详解
    • 一、什么是Dump
    • 三、为什么需要Dump
      • 分析思路
    • 四、Dump记录哪些内容
      • 4.1 Java dump 文件的格式和内容
        • 段格式
        • 行格式
      • 4.2 常用分类heap dump和thread dump
        • heap dump
        • thread dump
    • 五、如何生产Dump文件
        • 5.1 获取heap dump文件
        • 5.2 获取heap dump文件
        • 5.3 如果我们只需要将dump中存活的对象导出,那么可以使用:live参数
        • 5.4 自动生成dump文件
    • 六、Dump文件查看工具
      • JDK命令
        • jconsole 监控界面
      • jvisualvm
        • 阿里检测命令工具Arthas
        • Eclipse内存分析工具MAT(MemoryAnalyzerTool)
        • Jprofiler
    • 七、总结

学习Jvm调优,我们会接触到Dump文件。什么是Dump文件、Dump文件是如何得到的。当程序崩溃时,如何从Dump文件还原崩溃时的信息。本文讲重点讲解。

一、什么是Dump

Thread Dump是非常有用的诊断Java应用问题的工具。每一个Java虚拟机都有及时生成所有线程在某一个点状态的thread-dump的能力,虽然各个Java虚拟机打印的thread dump稍有不同,但是大部分提供了当前活动线程的快照及JVM中所有Java线程的堆栈跟踪信息,堆栈信息一般包含完整的类名及所执行的方法,如果可能还有源码的行数。

三、为什么需要Dump

服务器CPU,内存占用空间飙升,或者GC频繁,首先需要排除的就是内存泄露,即内存中没有的对象的空间没有被及时回收导致的。而检测内存泄露就需要看哪种类在内存占了较多份额,从而定位到代码,然后修改。

分析思路

  1. CPU、MEM飙升,确定是否WEB服务的问题并记录PID
  2. 查看GC情况,如果每次GC效果不明显说明内存泄露
  3. 导出Dump并分析,定位占用top n的类
  4. 分析并找到 哪里创建的类占用了大量

四、Dump记录哪些内容

4.1 Java dump 文件的格式和内容

Java dump通常的文本格式(.txt), 因此可用通过一般的文本编辑器进行阅读,阅读时需要注意段与行的格式:

五、如何生产Dump文件

使用的JDK工具在JDK_HOME/bin/目录下,使用到jmap和jstack这两个命令。

5.1 获取heap dump文件

windows下切换到JDK_HOME/bin/,执行以下命令:jmap -dump:format=b,file=heap.hprof 2576

linux下切换到JDK_HOME/bin/,执行以下命令:./jmap -dump:format=b,file=heap.hprof 2576

这样就会在当前目录下生成heap.hprof文件,这就是heap dump文件。

5.2 获取heap dump文件

windows下执行:jstack 2576 > thread.txt

inux下执行:./jstack 2576 > thread.txt

windows/linux则会将命令执行结果转储到thread.txt,这就是thread dump文件。有了dump文件后,我们就能借助性能分析工具获取dump文件中的信息。

5.3 如果我们只需要将dump中存活的对象导出,那么可以使用:live参数

jmap -dump:live,format=b,file=heapLive.hprof 2576

5.4 自动生成dump文件

  • -XX:+HeapDumpOnOutOfMemoryError

    当OutOfMemoryError发生时自动生成 Heap Dump 文件。这是一个非常有用的参数,因为当你需要分析Java内存使用情况时,往往是在OOM(OutOfMemoryError)发生时。

  • -XX:+HeapDumpBeforeFullGC

    当 JVM 执行 FullGC 前执行 dump

  • -XX:+HeapDumpAfterFullGC

    当 JVM 执行 FullGC 后执行 dump。

  • -XX:+HeapDumpOnCtrlBreak

    交互式获取dump。在控制台按下快捷键Ctrl + Break时,JVM就会转存一下堆快照。

  • -XX:HeapDumpPath=d:\dump.hprof

    指定 dump 文件存储路径。注意:JVM 生成 Heap Dump 的时候,虚拟机是暂停一切服务的。如果是线上系统执行 Heap Dump 时需要注意。

六、Dump文件查看工具

定位排查问题时最为常⽤命令包括:jps(进程)、jmap(内存)、jstack(线程)、jinfo(参数)等。

  • jps:查询当前机器所有Java进程信息
  • jmap:输出某个 Java 进程内存情况
  • jstack:打印某个 Java 线程的线程栈信息
  • jinfo:用于查看jvm

JDK命令

七、总结

如果某种类型的对象太多,那么有可能是引用它的那个类的对象太多;基本上一些简单页面的查询,结合原代码,就可以初步定位内存泄漏的地方;综上,dump文件结构还是比较简单的,这对于分析线程的执行情况非常有用,也是每一个Java程序员必须掌握的高级技能之一;

http://www.hotlads.com/news/1008.html

相关文章:

  • 毕业设计可以做哪些网站晨阳seo顾问
  • 贵阳网站建设优化最新新闻事件
  • 如何做优化网站的原创性文章百度400电话
  • 温州手机网站制作多少钱创建自己的网址
  • 怎么申请免费的网站空间域名注册服务商
  • 男女做爰全过程的视频网站设计公司取名字大全集
  • 自做网站告白如何弄免费域名注册平台
  • 做网站意义和目的班级优化大师网页版
  • 如何制作自己的作品集网站网站搜索排名优化软件
  • 美容培训东莞网站建设seo优化策略
  • wordpress调用自定义菜单北京seo服务商
  • 电子商务网站建设实训广州四楚seo顾问
  • 焦作做网站公司icp备案查询
  • 盐城网站建设推广优化网页制作软件dreamweaver
  • 京东商城网站怎么做的自适应兰州seo新站优化招商
  • b2b电子商务网站建设地推项目对接平台
  • 网站标题改不了日照网络推广
  • cn网站怎么做站长工具 站长之家
  • 网页背景做的比较好的网站视频剪辑培训班
  • 二维码制作工具合肥网站优化
  • 做色情网站怎么赚钱seo短视频网页入口
  • 怎么做填表网站苏州百度快速排名优化
  • 专业网站开发企业黄冈黄页88网黄冈房产估价
  • 行业网站产品选择去哪里找需要推广的app
  • 如何自己制作小程序朝阳区seo搜索引擎优化怎么样
  • 深圳营销网站建设免费观看行情软件网站下载
  • 网站建设请示网络seo外包
  • wordpress 模板 推荐品牌seo如何优化
  • 宁德工程建设监督网站百度热议
  • 婚恋网站建设分析免费网站seo诊断