- 浏览: 1871281 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
July01:
最近了解到一款StratoIO打印控件,功能如下:1、Html ...
jquery打印指定的div -
GentlemanQc:
...
quartz系列(二)spring3.2.5与quartz2.1.7集群版集成简要说明 -
静夜独窗:
你好,能说一下server.xml增加的配置是怎么影响性能的吗 ...
tomcat7.0性能优化-挑战极限精简版 -
beyondfengyu:
beyondfengyu 写道如果每个客户进程的时间不同步,时 ...
java并发(二十二)分布式锁 -
beyondfengyu:
如果每个客户进程的时间不同步,时间超前的进程是不是更容易得到锁 ...
java并发(二十二)分布式锁
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
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
发表评论
-
java for 的几种用法
2014-12-02 09:59 1223J2SE 1.5提供了另一 ... -
finally不执行的陷阱
2014-05-16 09:23 1067写了个DEMO,说明下finally在System.exit( ... -
URI和URL的区别
2014-03-26 10:38 1253String HttpServletRequest.getRe ... -
Iterator与ListIterator区别
2014-03-23 22:21 1090Iterator:只能正向遍历集合,适用于获取移除元素。Lis ... -
快速失败特性
2014-03-23 22:20 1080从高级别层次来说快速失败是一个系统或软件对于其故障做出 ... -
java继承静态方法复写
2014-03-12 09:28 4374最近和人交流,遇到了这样一个问题,就是继承当中,静态方法复写的 ... -
关于return和finally
2014-03-11 10:19 2795本来return和finally也不是个事。之前看虚拟机运行原 ... -
JVM内存分析系列(十三)内存实践理解
2014-01-22 10:09 3093java堆 包括 新生代:eden,survival(from ... -
JVM内存分析系列(十二)G1垃圾收集器的使用
2014-01-16 17:10 11476Garbage First(G1)致力于在多CPU和大内存服务 ... -
JVM内存分析系列(十一)GC基本情况与CMS垃圾收集器调优
2014-01-16 11:44 11529初始标记 CMS-initial-mark 并发标记 CMS- ... -
eclipse内存优化
2014-02-26 14:00 1466修改eclipse的配置文件,添加或者修改参数如下,其中XX: ... -
远程调试(二)JVM
2014-01-10 11:43 1710从J2SE 1.4.2开始,就已经提出并实现了JavaTM P ... -
guava--google----用来替代commons的jar包
2014-01-06 18:21 16753Guava 是一个 Google ... -
JVM内存分析系列(八)垃圾收集器介绍及性能指标
2013-12-30 13:33 1999内存回收的具体实现。 停顿时间越短就越适合需要 ... -
JVM内存分析系列(七)垃圾收集算法
2013-12-30 12:58 1084内存回收的方法论 标记-清除算法 Mark-Sweep 分为 ... -
JVM内存分析系列(六)对象存活判断
2013-12-26 11:10 1100对象存活常用2种算法 引用计数算法 给对象中添加一个 ... -
JVM内存分析系列(五)浅谈finalize()方法
2013-12-28 18:47 1428根搜索算法中不可达对象在回收之前,要进行二次标记。 第 ... -
JVM内存分析系列(四)对象4种引用
2013-12-25 20:07 1287强引用:只要强引用还存在,垃圾收集器永远不会回收掉被引用的对象 ... -
JVM内存分析系列(三)JVM内存模型初步
2013-12-25 17:09 1132根据《Java虚拟机规范(第二版)》的规定,结构如下 1 ... -
JVM内存分析系列(二)内存溢出的类型分析
2013-12-24 23:54 1794启动参数 -server -verbose:gc -Xms10 ...
相关推荐
工具是运用知识处理数据的手段。这里说的数据包括:运行日志、异常堆栈、GC日志、线程快照文件(threaddump/javacore文件)、堆转储快照(heapdump/hprof文件)等。使用JVM命令和一查看这个JVM参数,帮助我们排查、...
JVM监控管理及故障诊断工具(常用命令),文中的命令常用于监视JVM虚拟机性能及资源消耗情况。
本书将通过200余示例详细介绍Java虚拟机中的各种参数配置、故障排查、性能监控以及性能优化。 本书共11章。第1~3章介绍了Java虚拟机的定义、总体架构、常用配置参数。第4~5章介绍了垃圾回收的算法和各种垃圾回收器。...
- 第4章 虚拟机性能监控、故障处理工具- 4.2 基础故障处理工具JDK提供jhat(JVM Heap Analysis Tool)命令与jmap搭配使用,来
1、在 java 的 bin 目录下,jdk 提供了很多使用的工具,下面学习一些监控和故障处理的工具。 名称 作用 jps JVM process status tool,显示指定系统内所有的 HotSpot 虚拟机进程 jstat JVM statistics ...
虚拟机堆转储快照分析工具 / 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...
常见虚拟机监控与故障处理工具的原理和使用方法。第三部分分析了虚拟机的执行子系统,包括类文件结构、虚拟机类加载机制、虚拟机字节码执行引擎。第四部分讲解了程序的编译与代码的优化,阐述了泛型、自动装箱拆箱、...
3.对Java虚拟机、JMM、垃圾收集机制、GC算法、JVM常用配置参数、GC参数、classLoader、锁机制、JVM故障分析,jmap,jstack等jdk提供的工具命令,性能监控工具(java visualVM),JVM参数调优有一定了解; 4.熟悉java...
监控和故障处理 JVM 一 Java内存区域 二 类加载过程 I/O 一 BIO,NIO,AIO 总结 二 JavaIO与NIO文章 编程规范 Java 编程规范 数据库 MySQL MySQL 学习与面试 [MySQL Index](Mysql/MySQL Index.md) MySQL高性能优化...
DataX Web是在DataX之上开发的分布式数据同步工具,提供简单易用的操作界面,降低用户使用DataX的学习成本,缩短任务配置时间,避免配置过程中出错。用户可通过页面选择数据源即可创建数据同步任务,RDBMS数据源可...
基于JVM路由和服务端的负载均衡器 类似nginx,反向代理的功能 3、Hystrix 提供了熔断、隔离、Fallback、cache、监控等功能,能够在一个、或多个依赖同时出现问题时保证系统依然可用。 4、Feign 是声明式、模板化的...