java性能调优工具

来源:互联网 发布:添翼数据平台怎么注册 编辑:程序博客网 时间:2024/06/05 07:58

Linux 命令行工具

top

top - 16:07:00 up 95 days,  2:08, 18 users,  load average: 0.04, 0.13, 0.10
Tasks: 314 total,   1 running, 313 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.5%us,  0.2%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  16331608k total, 13807916k used,  2523692k free,   899644k buffers
Swap:  2097148k total,   336536k used,  1760612k free,  5202892k cached


  PID       USER      PR  NI    VIRT      RES      SHR S   %CPU    %MEM    TIME+          COMMAND                                                                                                            
 21428   root          20   0      7580      6520     624 S    2.0          0.0            331:12.16    sap1002                                                                                                            
 26782   root          20   0      5154m   502m  18m S  1.3  3.2   7:45.54 java                                                                                                               
 5510     root      20   0 5105m 344m  14m S  0.7  2.2   5:12.00 java                                                                                                               
 2811 root      20   0 4753m 317m  13m S  0.3  2.0   3:12.95 java                                                                                                               
 3677 root      20   0 5131m 384m  15m S  0.3  2.4   5:25.13 java                                                                                                               
 11751 root      20   0  5748 4932  592 S  0.3  0.0  21:59.15 secu-tcs-agent                                                                                                     
 18484 fastsdk   20   0 15156 1460  948 R  0.3  0.0   0:00.02 top                                                                                                                
 31641 root      20   0  513m  10m 1688 S  0.3  0.1  73:47.23 barad_agent                                                                                                        
    1 root      20   0 19356 1056  836 S  0.0  0.0   1:24.71 init                                                                                                               
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd                                                                                                           
    3 root      RT   0     0    0    0 S  0.0  0.0   0:42.73 migration/0                                                                                                        
    4 root      20   0     0    0    0 S  0.0  0.0   0:27.98 ksoftirqd/0                                                                                                        
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/0                                                                                                          
    6 root      RT   0     0    0    0 S  0.0  0.0   0:07.61 watchdog/0                                                                                                         
    7 root      RT   0     0    0    0 S  0.0  0.0   0:43.80 migration/1                                                                                                        
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/1                                                                                                          
    9 root      20   0     0    0    0 S  0.0  0.0   0:29.05 ksoftirqd/1                                                                                                        
   10 root      RT   0     0    0    0 S  0.0  0.0   0:06.60 watchdog/1                                                                                                         
   11 root      RT   0     0    0    0 S  0.0  0.0   0:43.98 migration/2                                                                                                        
   12 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/2                                                                                                          
   13 root      20   0     0    0    0 S  0.0  0.0   0:28.65 ksoftirqd/2                                                                                                        
   14 root      RT   0     0    0    0 S  0.0  0.0   0:06.65 watchdog/2                                                                                                         
   15 root      RT   0     0    0    0 S  0.0  0.0   0:43.09 migration/3                                                                                                        
   16 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/3

top命令的输出可以分为两个部分:前半部分是系统统计信息,后半部分是里程信息(java程序性能优化313页)


JDK 命令行工具


jps 类似于Linux 下的ps,但它只开出JAVA进程。 不加参数,可以列出java程序的进程ID以及main函数等名称。

参数-q 只输出进程ID,而不输出类的短名称。

参数-m 用于输出传递给java进程(主函数)的参数。

参数 -l 用于输出主函数的完整路径。  也可以  jss -m -l

参数-v 可以显示传递给JVM有参数。



jstat  332行


jmap 可以生成java应用程序的堆快照和对象的统计信息。

如下例使用jmap生成PID为2927的java程序的对象统计信息 pid(可以jps找一个)

jmap -histo 2927 >c:s.txt  文件里显示了内在中的实例数量和合计

jmap -dump:format=b,file=c:\heap.hprof  2927   可以得到java程序的当前堆快照。 文件为 c盘的 heap.hprof。可以用visual VM打开


jhat 可以打开 c盘的 heap.hprof   可以这样用 jhat c:\heap.hprof   分析完成后,作用HTTP服务器展示其分析结果。 在浏览器中访问 http://127.0.0.1:7000 就可以看




1 0