jvm性能监控工具

linxu系统下的命令:

uptime查看系统运行时间、运行时间、每个终端连接数。1,5,15分钟内系统平均负载,运行队列中的平均进程数。

 17:08:15 up 3 min,  2 users,  load average: 0.01, 0.03, 0.00

top,同uptime ,cpu内存使用情况,每个进程占cpu的情况。

top - 17:09:21 up 4 min,  2 users,  load average: 0.00, 0.02, 0.00

Tasks:  84 total,   1 running,  83 sleeping,   0 stopped,   0 zombie

Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:   1922488k total,   179676k used,  1742812k free,    12880k buffers

Swap:   835576k total,        0k used,   835576k free,    61760k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                                                         

    1 root      20   0 19360 1532 1232 S  0.0  0.1   0:00.69 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:00.00 migration/0                                                                                                                                                                                                      

    4 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0                                                                                                                                                                                                      

    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0                                                                                                                                                                                                      

    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0                                                                                                                                                                                                       

    7 root      20   0     0    0    0 S  0.0  0.0   0:00.14 events/0                                                                                                                                                                                                         

    8 root      20   0     0    0    0 S  0.0  0.0   0:00.00 cgroup                                                                                                                                                                                                           

    9 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khelper                                                                                                                                                                                                          

   10 root      20   0     0    0    0 S  0.0  0.0   0:00.00 netns                                                                                                                                                                                                            

   11 root      20   0     0    0    0 S  0.0  0.0   0:00.00 async/mgr                                                                                                                                                                                                        

   12 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pm                                                                                                                                                                                                               

   13 root      20   0     0    0    0 S  0.0  0.0   0:00.00 sync_supers                                                                                                                                                                                                      

   14 root      20   0     0    0    0 S  0.0  0.0   0:00.00 bdi-default                                                                                                                                                                                                      

   15 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kintegrityd/0                                                                                                                                                                                                    

   16 root      20   0     0    0    0 S  0.0  0.0   0:00.08 kblockd/0                                                                                                                                                                                                        

   17 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpid                                                                                                                                                                                                           

   18 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpi_notify                                                                                                                                                                                                     

   19 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpi_hotplug                                                                                                                                                                                                    

   20 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ata_aux                                                                                                                                                                                                          

   21 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ata_sff/0                                                                                                                                                                                                        

   22 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ksuspend_usbd                                                                                                                                                                                                    

   23 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khubd                                                                                                                                                                                                            

   24 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kseriod                                                                                                                                                                                                          

   25 root      20   0     0    0    0 S  0.0  0.0   0:00.00 md/0                                                                                                                                                                                                             

   26 root      20   0     0    0    0 S  0.0  0.0   0:00.00 md_misc/0                                                                                                                                                                                                        

   27 root      20   0     0    0    0 S  0.0  0.0   0:00.00 linkwatch                                                                                                                                                                                                        

   28 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khungtaskd                                                                                                                                                                                                       

   29 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kswapd0                                                                                                                                                                                                          

   30 root      25   5     0    0    0 S  0.0  0.0   0:00.00 ksmd                                                                                                                                                                                                             

   31 root      39  19     0    0    0 S  0.0  0.0   0:00.00 khugepaged                                                                                                                                                                                                       

   32 root      20   0     0    0    0 S  0.0  0.0   0:00.00 aio/0                                                                                                                                                                                                            

   33 root      20   0     0    0    0 S  0.0  0.0   0:00.00 crypto/0                                                                                                                                                                                                         

   38 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthrotld/0                                                                                                                                                                                                       

   40 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kpsmoused                                                                                                                                                                                                        

   41 root      20   0     0    0    0 S  0.0  0.0   0:00.00 usbhid_resumer                                                                                                                                                                                                   

   72 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kstriped                                                                                                                                                                                                         

  147 root      20   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_0                                                                                                                                                                                                        

  148 root      20   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_1                                                                                                                                                                                                        

  155 root      20   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_2                                                                                                                                                                                                        

  240 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kdmflush                                                                                                                                                                                                         

  242 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kdmflush                                                                                                                                                                                                         

  259 root      20   0     0    0    0 S  0.0  0.0   0:00.00 jbd2/dm-0-8                                                                                                                                                                                                      

  260 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ext4-dio-unwrit                                                                                                                                                                                                  

  350 root      16  -4 11072 1164  320 S  0.0  0.1   0:00.27 udevd                                                                                                                                                                                                            

  377 root      20   0     0    0    0 S  0.0  0.0   0:00.00 flush-8:0      

vmstat  1 4 可以统计系统的CPU,内存,swap,io等情况       。一秒钟采样四次。

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st

 0  0      0 1742852  12884  61808    0    0   198    14   92   68  1  2 95  2  0

 0  0      0 1742836  12884  61808    0    0     0     0   15    9  0  0 100  0  0

 0  0      0 1742836  12884  61808    0    0     0     0   16   11  0  0 100  0  0

 0  0      0 1742836  12884  61808    0    0     0     0   14    9  0  0 100  0  0

pidstat    不是自带的,可以通过命令安装 sudo apt-get install systat     。细致观察进程,监控CPU监控IO监控内存。

Linux 2.6.32-431.el6.x86_64 (kafka1) 2017年04月02日 _x86_64_ (1 CPU)

17时13分20秒       PID    %usr %system  %guest    %CPU   CPU  Command

17时13分20秒         1    0.01    0.12    0.00    0.13     0  init

17时13分20秒         7    0.00    0.04    0.00    0.04     0  events/0

pidstat -p 7 -u 1 1 查看线程程7一分钟采样一次,-u是监控cpu

------------------------

windows下可以运行中输入 perfmon 可以进行更详细的监控

下载 process explorer 来监控性能

下载pslist  下载路径:https://technet.microsoft.com/en-us/sysinternals/bb896682.aspx

pslist -d 是查询线程

------------------------

java自带的性能监控工具

jps 列出当前java进程,类似于ps命令

-q可以制定jps只输出进程id

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

-l可以用于输出主函数的完整路径

-v可以下你是传给jvm的参数 

jinfo可以用来查看正在运行的java应用程序的扩展参数,甚至支持在运行时,修改部分参数

-flag <name>:打印指定JVM的参数值

-flag [+|-]<name>:指定设定JVM的参数的布尔值

-flag <name>=<value>:设定指定JVM的参数值

C:\Users\kevin>jinfo -flag MaxTenuringThreshold 11792

-XX:MaxTenuringThreshold=15

下面三个命令,第一个命令先查看11792这个java进程的PringGCDetails参数是否打开,结果是没有打开。第二个是打开PringGCDetails参数,第三是查看11792这个java进程的PringGCDetails参数是否打开,结果是已经打开

C:\Users\kevin>jinfo -flag PrintGCDetails 11792

-XX:-PrintGCDetails

C:\Users\kevin>jinfo -flag +PrintGCDetails 11792

C:\Users\kevin>jinfo -flag PrintGCDetails 11792

-XX:+PrintGCDetails

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

jmap -histo 11792 >d:\a.txt

 num     #instances         #bytes  class name

----------------------------------------------

   1:         70399        9990136  [C

   2:         18359        6712632  [B

   3:         19161        3591760  [I

   4:         47148        1131552  java.lang.String

   5:          8167         784032  sun.util.calendar.Gregorian$Date

……

jmap -dump:format=b,file=d:\b.txt 11792

b.txt不是纯文本文件,需要用专用的工具打开。

jstack 打印线程dump 。jstack 11792

-l 打印锁信息

-m 打印java和native的帧信息

-F 强制dump,当jstack没有响应的时候使用

jConsole图形化监控工具

在运行中打jConsole可以运行。可以检测死锁,也可以执行GC

Visul VM

http://visualvm.java.net/download.html

猜你喜欢

转载自peng4602.iteye.com/blog/2367152
今日推荐