`
85977328
  • 浏览: 1871281 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JVM内存分析系列(九)JDK监控和故障处理工具

 
阅读更多
jps JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程
jps -l 输出主类全名,如果是JAR包,则输出JAR路径
jps -v 输出虚拟机进程启动时JVM参数

jstat JVM Statistics Monitoring Tool,用于收集HotSpot虚拟机各方面的运行数据
jstat -gcutil 进程号 [刷新毫秒数]
  S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT  
  0.00   0.00   3.23   8.14  49.97      6    1.089     3    2.630    3.719
S0和S1:新生代2个survivor区 使用百分比
E:是新生代的伊甸区 使用百分比
O:老年代 使用百分比
P:永久代 使用百分比
YGC:minor GC,发生在新生代的GC次数
YGCT:新生代GC总耗时
FGC:major GC,发生在老年代的GC次数
FGCT:老年代GC总耗时
GCT:总GC耗时

jinfo Configuration Info for Java,显示虚拟机配置信息
jinfo 进程号

jmap Memory Map for Java,生成虚拟机的内存转储快照(heapdump文件)
jmap -dump:format=b,file=/tmp/mydump.bin 进程号
输出
Dumping heap to /tmp/mydump.bin ...
Heap dump file created

jhat JVM Heap Dump Browser,用于分析headdump文件,他会建立一个HTTP/HTML服务器,让用户可以在浏览器上查看分析结果
jhat mydump.bin
输出的信息如下
Reading from mydump.bin...
Dump file created Fri Jan 10 15:51:28 CST 2014
Snapshot read, resolving...
Resolving 2810470 objects...
Chasing references, expect 562 dots..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Eliminating duplicate references..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Snapshot resolved.
Started HTTP server on port 7000
Server is ready.
重点要分析
Show heap histogram





jstack Stack Trace for Java,显示虚拟机的线程快照
jstack -l 进程号 除堆栈外,显示关于锁的附加信息
输出信息
2014-01-10 16:00:23
Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.45-b01 mixed mode):

"Worker-16" prio=10 tid=0x00007f643815e800 nid=0x1cdb in Object.wait() [0x00007f63f2765000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0000000785fb3280> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
        - locked <0x0000000785fb3280> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50)

   Locked ownable synchronizers:
        - None

"Worker-15" prio=10 tid=0x00007f643883f800 nid=0x1c70 in Object.wait() [0x00007f63f2967000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x0000000785fb3280> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
        - locked <0x0000000785fb3280> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50)

   Locked ownable synchronizers:
        - None

"Attach Listener" daemon prio=10 tid=0x00007f6414003000 nid=0x1c36 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE
  • 大小: 232.1 KB
0
0
分享到:
评论

相关推荐

    Java-JVM性能监控与故障处理工具详细介绍以及使用案例

    工具是运用知识处理数据的手段。这里说的数据包括:运行日志、异常堆栈、GC日志、线程快照文件(threaddump/javacore文件)、堆转储快照(heapdump/hprof文件)等。使用JVM命令和一查看这个JVM参数,帮助我们排查、...

    JVM监控管理及故障诊断工具(常用命令)

    JVM监控管理及故障诊断工具(常用命令),文中的命令常用于监视JVM虚拟机性能及资源消耗情况。

    JVM故障诊断与性能优化(实战JAVA虚拟机).7z

    本书将通过200余示例详细介绍Java虚拟机中的各种参数配置、故障排查、性能监控以及性能优化。 本书共11章。第1~3章介绍了Java虚拟机的定义、总体架构、常用配置参数。第4~5章介绍了垃圾回收的算法和各种垃圾回收器。...

    lanlan2017#JavaReadingNotes#4.2.5 jhat:虚拟机堆转储快照分析工具1

    - 第4章 虚拟机性能监控、故障处理工具- 4.2 基础故障处理工具JDK提供jhat(JVM Heap Analysis Tool)命令与jmap搭配使用,来

    JVM命令行性能监控工具

    1、在 java 的 bin 目录下,jdk 提供了很多使用的工具,下面学习一些监控和故障处理的工具。 名称 作用 jps JVM process status tool,显示指定系统内所有的 HotSpot 虚拟机进程 jstat JVM statistics ...

    深入理解_Java_虚拟机 JVM_高级特性与最佳实践

    虚拟机堆转储快照分析工具 / 84 4.2.6 jstack:Java堆栈跟踪工具 / 85 4.3 JDK的可视化工具 / 87 4.3.1 JConsole:Java监视与管理控制台 / 88 4.3.2 VisualVM:多合一故障处理工具 / 96 4.4 本章小结 / 105 第5...

    Java虚拟机

    常见虚拟机监控与故障处理工具的原理和使用方法。第三部分分析了虚拟机的执行子系统,包括类文件结构、虚拟机类加载机制、虚拟机字节码执行引擎。第四部分讲解了程序的编译与代码的优化,阐述了泛型、自动装箱拆箱、...

    Java高级工程师简历模板18k+

    3.对Java虚拟机、JMM、垃圾收集机制、GC算法、JVM常用配置参数、GC参数、classLoader、锁机制、JVM故障分析,jmap,jstack等jdk提供的工具命令,性能监控工具(java visualVM),JVM参数调优有一定了解; 4.熟悉java...

    repository::seedling: walker-知识库:个人知识库汇总

    监控和故障处理 JVM 一 Java内存区域 二 类加载过程 I/O 一 BIO,NIO,AIO 总结 二 JavaIO与NIO文章 编程规范 Java 编程规范 数据库 MySQL MySQL 学习与面试 [MySQL Index](Mysql/MySQL Index.md) MySQL高性能优化...

    DataX Web分布式数据同步工具-其他

    DataX Web是在DataX之上开发的分布式数据同步工具,提供简单易用的操作界面,降低用户使用DataX的学习成本,缩短任务配置时间,避免配置过程中出错。用户可通过页面选择数据源即可创建数据同步任务,RDBMS数据源可...

    FCat企业级基础功能框架-其他

    基于JVM路由和服务端的负载均衡器 类似nginx,反向代理的功能 3、Hystrix 提供了熔断、隔离、Fallback、cache、监控等功能,能够在一个、或多个依赖同时出现问题时保证系统依然可用。 4、Feign 是声明式、模板化的...

Global site tag (gtag.js) - Google Analytics