Java自带优秀工具

Java自己有很多优秀的调试工具,可以帮助分析系统的漏洞,瓶颈,这里列举几个自己常用的命令:

 jps -l
 查看现有的java进程
jps -l 显示所有正在运行的java进程id
jstack 
查看Java线程
     jstack -l pid; 做thread dump,直接打印在串口
    jstack pid>> ./threaddumps   输出到指定文件分析
jmap
查看Java内存使用情况    
jmap -histo:live pid 对象占用内存排名
jmap -dump:file=memroydumps pid 把heap dump到文件
jhat 

通过查看jmap dump文件分析

jhat ./threaddumps 分析dump文件

d:\cloudlu\workspace\CustomerSecurityManagementSystem\CustomerSecurityManagementWeb>jmap -dump:file=test.map 6860
Dumping heap to D:\cloudlu\workspace\CustomerSecurityManagementSystem\CustomerSecurityManagementWeb\test.map ...
Heap dump file created

d:\cloudlu\workspace\CustomerSecurityManagementSystem\CustomerSecurityManagementWeb>jhat test.map
Reading from test.map...
Dump file created Wed Jun 04 10:49:22 CST 2014
Snapshot read, resolving...
Resolving 1982196 objects...
Chasing references, expect 396 dots.........................................................................................................
............................................................................................................................................
............................................................................................................................................
...........
Eliminating duplicate references............................................................................................................
............................................................................................................................................
............................................................................................................................................
........
Snapshot resolved.
Started HTTP server on port 7000
Server is ready.

http://localhost:7000 查看分析结果

jstat 

查看heap内各个部分的使用量,以及加载类的数量以及GC的相关信息。

jstat -options (查看参数) / jstat -help

jstat -gcutil -t -h 3 6860 200 10
Timestamp         S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT
         2930.6   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
         2930.8   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
         2931.0   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
Timestamp         S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT
         2931.2   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
         2931.4   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
         2931.6   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
Timestamp         S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT
         2931.8   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
         2932.0   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
         2932.2   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266
Timestamp         S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT
         2932.4   0.00   0.00  31.53  60.00  91.23  82.55     80    1.622     5    6.644    8.266


jdk自带的hprof

启动应用时带上hprof参数,查看cpu,内存使用情况

java -agentlib:hprof=cpu=times,interval=20,depth=10 -jar start.jar

http://www.cnblogs.com/linhaohong/archive/2012/07/12/2588657.html

Jconsole&Jvisualvm

下回分解

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值