当前位置:首页 > 经验 >

dmp文件改后缀(dmp文件用什么打开)

来源:原点资讯(www.yd166.com)时间:2022-10-29 13:32:05作者:YD166手机阅读>>

JDK在安装的时候会提供一些性能分析、故障诊断、JVM监控之类的工具,了解这些工具对我们分析JVM内存、JVM调优有一定的帮助,本篇文章来学习一下。

监控类工具jps

jps(JVM Process Status)是查看正在运行的虚拟机进程的工具。jps能获取进程id,所以会被经常使用。在 Linux 中,一般自带了 OpenJdk,一般情况下 JPS 等命令不能用,要么选择去安装 JPS 等插件,要么把 OpenJdk 卸载,重新安装 Oracle 的 JDK。

语法:jps [ options ] [ hostid ]

  • options可选项,有以下选择:

参数

含义

-q

只显示进程

-m

输出主函数传入的参数

-l

输出应用程序主类完整 package 名称或 jar 完整名称.

-v

列出 jvm 参数

-V

只生成本地JVM标识符列表

-J

向JVM传递参数。例如:-J-Xms48m,设置JVM初始内存为48m

  • hostid :远程地址,可选项,指定特定主机的IP或者域名,也可以指定具体协议端口,不指定则查看当前机器的相关信息,hostid所指机器必须开启jstatd服务。

测试:

dmp文件改后缀,dmp文件用什么打开(1)

dmp文件改后缀,dmp文件用什么打开(2)

57312 JvmToolsApplication 这个是我运行的一个用于测试的springboot项目。

jstat

jstat(JVM Statistics Monitoring Tool )是用于监视虚拟机各种运行状态信息的命令行工具。它可以显示本地或者远程虚拟机进程中的类装载、内存、垃圾收集、JIT 编译等运行数据,在没有 GUI 图形界面,只提供了纯文本控制台环境的服务器上,它将是运行期定位虚拟机性能问题的首选工具。

语法: jstat [ generalOption | outputOptions vmid [ interval[s|ms] [ count ] ]

  • generalOption :常规选项,必填项。有两个参数可选 -help:帮助信息 -options:对应着下面的outputOptions
  • outputOptions:输出选项,必填项。有以下选项

参数

含义

-class

显示类加载器行为信息

-compiler

显示有关JVM实时编译器行为的统计信息

-gc

显示有关GC堆行为的统计信息。

-gccapacity

显示各分区大小

-gccause

显示最近一次 GC 统计信息和原因

-gcnew

显示新生代行为的统计信息。

-gcnewcapacity

显示新生代内存大小

-gcold

显示老年代统计信息

-gcoldcapacity

显示老年代内存大小

-gcmetacapacity

显示元空间内存大小

-gcutil

显示GC统计汇总信息

-printcompilation

显示HotSpot 编译统计信息

outputOptions参数后面还能加以下可选参数:

- -h n:每n个样本(输出行)显示一个列标题,默认值为0,显示列标题的第一行数据。 - -t:第一列显示为时间戳 - -J:向应用程序传递启动参数 复制代码

  • VMid :虚拟机标识
  • interval:指定时间采样间隔时间,单位秒(s)或者毫秒(ms),默认单位是毫秒
  • count :采样次数,指定时间内采样多少次。

测试:

  1. 统计gc信息 57312 是测试项目JvmToolsApplication在虚拟机中的进程id。
  2. jstat -gc 57312 100 10这个命令是在100ms内获取10次gc统计信息 结果中的列分别代表以下意思:
  3. S0C:第一个幸存区(From 区)的大小
  4. S1C:第二个幸存区(To 区)的大小
  5. S0U:第一个幸存区的使用大小
  6. S1U:第二个幸存区的使用大小
  7. EC:伊甸园(Eden)区的大小
  8. EU:伊甸园(Eden)区的使用大小
  9. OC:老年代大小
  10. OU:老年代使用大小
  11. MC:方法区大小
  12. MU:方法区使用大小
  13. CCSC:压缩类空间大小
  14. CCSU:压缩类空间使用大小
  15. YGC:年轻代垃圾回收次数
  16. YGCT:年轻代垃圾回收消耗时间
  17. FGC:老年代垃圾回收次数
  18. FGCT:老年代垃圾回收消耗时间
  19. GCT:垃圾回收消耗总时间
故障诊断类工具jinfo

jinfo(Configuration Info for java) 可以实时地查看和调整虚拟机的各项参数。jinfo不仅能获取到虚拟机命令行参数,还能获取到系统参数。

语法:

  • jinfo [ option ] pid:查看和调整本地进程虚拟机参数

option:

  • -flag name:name为jvm参数名
  • -flag [ |-]name:开启或者关闭一个Boolean的jvm参数
  • -flag name=value:设置jvm参数值
  • -Flags:查询虚拟机参数
  • -sysprops:可以查看由 System.getProperties()取得的参数

测试:

  • flag测试 可以通过java -XX: PrintFlagsFinal –version命令获取虚拟机参数,这是一个很长的列表,其中红框部分如果是manageable则表示可以在运行时修改。 我们就随便找一个参数UseTLAB进行查询,可以看到它是否开启
  • 获取虚拟机参数 先修改一下项目启动参数,加上-XX: PrintGC -XX:SurvivorRatio=6: 重启项目,并通过jps获取到进程id 再通过jinfo -flags 67776命令获取项目启动参数 还可以获取上面配置的某一个参数jinfo -flag SurvivorRatio 67776

通过 jinfo 命令,我们可以在生产上临时打开一下 GC日志或者进行一些数据的配置(不需要重启应用条件下),也是我们去排查问题的一个关键命令。

jmap

jmap(Memory Map for Java) 打印给定进程或远程调试服务器的共享对象内存映射或堆内存详细信息。jmap也可用于生成堆转储快照(一般称为 heapdump 或 dump 文件),除此之外它还可以查询 finalize 执行队列、Java 堆和永 久代的详细信息,如空间使用率、当前用的是哪种收集器等。和 jinfo 命令一样,jmap 有不少功能在 Windows 平台下都是受限的,除了生成 dump 文件的 -dump 选项和用于查看每个类的实例、空间占用统计的-histo 选项在所有操作系统都提供之外,其余选项都只能在 Linux/Solaris 下使用。

语法:jmap [ options ] pid

options 有如下选项:

  • -heap:打印 heap 的概要信息 概要信息含义:

Heap Configuration: ##堆配置情况,也就是 JVM 参数配置的结果[平常说的 tomcat 配置 JVM 参数,就是在配置这些] MinHeapFreeRatio = 0 //最小堆使用比例 MaxHeapFreeRatio = 100 //最大堆可用比例 MaxHeapSize = 4261412864 (4064.0MB) //最大堆空间大小 NewSize = 88604672 (84.5MB) ) //新生代分配大小 MaxNewSize = 1420296192 (1354.5MB) //最大可新生代分配大小 OldSize = 177733632 (169.5MB) //老年代大小 NewRatio = 2 //新生代比例 SurvivorRatio = 6 //新生代与 suvivor 的比例 MetaspaceSize = 21807104 (20.796875MB) //元空间大小 CompressedClassSpaceSize = 1073741824 (1024.0MB) //类指针压缩空间大小 MaxMetaspaceSize = 17592186044415 MB // 最大元空间大小 G1HeapRegionSize = 0 (0.0MB) //G1收集器Region单元大小 Heap Usage: //堆内存实际的使用情况 PS Young Generation //新生代 Eden Space: //Eden 区 capacity = 66584576 (63.5MB) //Eden容量 used = 27941200 (26.646804809570312MB) //Eden区已使用大小 free = 38643376 (36.85319519042969MB) //未使用 41.96347214105561% used //使用比例 From Space: //survior1 区 capacity = 11010048 (10.5MB) used = 8497840 (8.104171752929688MB) free = 2512208 (2.3958282470703125MB) 77.18258812313988% used To Space: //survior2 区 capacity = 11010048 (10.5MB) used = 0 (0.0MB) free = 11010048 (10.5MB) 0.0% used PS Old Generation //老年代使用情况 capacity = 115867648 (110.5MB) used = 10553152 (10.06427001953125MB) free = 105314496 (100.43572998046875MB) 9.10793666925905% used 复制代码

  • -histo 打印每个 class 的实例数目,内存占用,类全名信息. 语法:jmap –histo:live <pid>,live参数表示统计活跃状态的对象 -histo 打印的实例数目太多了,看不过来,显示那么多也没什么用,所以在Linux系统上可以使用jmap –histo <pid> | head -10命令只展示前10行,具体行数可以自己定义。
  • -finalizerinfo :打印正等候回收的对象的信息
  • –clstats:打印堆中类加载器信息,它会打印类加载器的名字、活跃度、地址、父加载器、加载了多少个类等。
  • -dump:[live,] format=b, file=filename:生成的堆转储快照 通过-dump命令可以在指定文件夹生成dump文件,之后再搭配jhat来分析dump文件,dump文件的后缀也可以是hprof 或者bin,dump文件本身是一个二进制文件。
  • -h或-help:打印帮助信息
  • -J:传递虚拟机参数
jhat

jhat (Heap Dump Browser)可以让一个dump文件以web服务的的形式访问。

上面我们用jmap工具生成了一个dump文件,现在可以通过jhat 工具,让它再浏览器端访问到。

dmp文件改后缀,dmp文件用什么打开(3)

Server is ready表示启动成功,端口号为7000,然后在浏览器端访问http://localhost:7000/,可以看到dump文件内容

dmp文件改后缀,dmp文件用什么打开(4)

栏目热文

如何打开dmp文件(生成的dmp文件怎么打开)

如何打开dmp文件(生成的dmp文件怎么打开)

很多windows用户经常会碰到的问题就是电脑蓝屏的问题了,电脑蓝屏又叫蓝屏死机,是微软的操作系统在无法从一个系统错误中...

2022-10-29 13:03:19查看全文 >>

dmp文件怎么修改(dmp文件太大)

dmp文件怎么修改(dmp文件太大)

Oracle备份分成物理备份与逻辑备份。物理备份: 把实际物理文件从一处拷贝到另一处(可能是原样拷贝,也可能经过压缩),...

2022-10-29 13:43:35查看全文 >>

dmp文件导入后如何删除(dmp文件可以删除掉吗)

dmp文件导入后如何删除(dmp文件可以删除掉吗)

作者:徐田原引言PostgreSQL官方文档指定了以下三种备份方法,详见:https://www.postgresql....

2022-10-29 13:25:37查看全文 >>

怎么看dmp文件导入是否成功(dmp文件太大怎么打开)

怎么看dmp文件导入是否成功(dmp文件太大怎么打开)

今天出去布署系统,将之前导出的dmp文件导入oracle的时候遇到的问题记录一下。1.用户的权限不够。报错:IMP-0...

2022-10-29 13:16:21查看全文 >>

dmp文件如何更改默认打开方式(如何从dmp文件中恢复视图)

dmp文件如何更改默认打开方式(如何从dmp文件中恢复视图)

导读:Apache Doris 使用 C 语言实现了执行引擎,C 开发过程中,影响开发效率的一个重要因素是指针的...

2022-10-29 13:34:31查看全文 >>

多个dmp文件怎么导入(怎么将dmp文件导入数据库)

多个dmp文件怎么导入(怎么将dmp文件导入数据库)

oracle11g数据库导入导出: ①:传统方式——exp(导出)和(imp)导入: ②:数据泵方式——expdp导出和...

2022-10-29 13:40:23查看全文 >>

怎么可以设置不生成dmp文件(dmp文件太大导入太慢)

怎么可以设置不生成dmp文件(dmp文件太大导入太慢)

前言C 程序崩溃如何进行异常捕获处理?特别是发布版本为Release版本,要想保留现场和复现就更加困难。本文较少几种捕...

2022-10-29 13:11:29查看全文 >>

卡拉甘达气候(卡拉哈迪盆地的气候)

卡拉甘达气候(卡拉哈迪盆地的气候)

概述额尔齐斯河发源于新疆富蕴县阿尔泰山南坡,沿阿尔泰山南麓向西北流,在哈巴河县以西进入哈萨克斯坦国,注入塔尔马水库,再入...

2022-10-29 13:32:05查看全文 >>

卡拉马祖气候缺点(弗赖堡气候好吗)

卡拉马祖气候缺点(弗赖堡气候好吗)

卡拉马祖学院致力于培养学生透彻地理解,很好地生活在这个纷繁复杂的世界。学校的国外游学项目很有名,其学生中有90%多都参加...

2022-10-29 13:17:41查看全文 >>

卡拉棉群岛位置(卡拉延群岛在哪里)

卡拉棉群岛位置(卡拉延群岛在哪里)

很多人已经在筹划十一出行了吧?即便顶着人潮汹涌挤破头的风险,这游山玩水的宝贵假期也绝不能浪费!笨猴接到的咨询中,关于人少...

2022-10-29 13:18:31查看全文 >>

文档排行