JVM性能調優監控工具
阿新 • • 發佈:2017-12-07
cmcc jmap 死鎖 uri ica strong ons 顯示 添加
jps主要用來輸出JVM中運行的進程狀態信息。
JVM性能調優監控工具
JDK本身提供了很多方便的JVM性能調優監控工具,除了集成式的VisualVM和jConsole外,還有jps、jstack、jmap、jhat、jstat、hprof等小巧的工具.
在Java應用中,我們會經常碰到下面這些問題:
OutOfMemoryError,內存不足
內存泄露
線程死鎖
鎖爭用(Lock Contention)
Java進程消耗CPU過高
......
本文將對一些常用的JVM性能調優監控工具進行介紹,對以後java應用出現上述問題後,可以進行優化和找到問題的根源,而不是簡單粗暴的重啟應用和添加內存了.
1. jps(Java Virtual Machine Process Status Tool)
jps主要用來輸出JVM中運行的進程狀態信息。
特殊說明
jps僅查找當前用戶的Java進程,而不是當前系統中的所有進程。
比較常用的參數如下:
-q 只顯示pid,不顯示class名稱,jar文件名和傳遞給main方法的參數 -m 輸出傳入main方法的參數 -l 輸出應用程序main class的完整package名 或者 應用程序的jar文件完整路徑名 -v 輸出傳入JVM的參數
實例:
[root@localhost ~]# jps 23991 Jps 23789 BossMain 23651 Resin [root@localhost ~]# jps -q 28680 23789 23651 [root@localhost ~]# jps -m 28715 Jps -m 23789 BossMain 23651 Resin -socketwait 32768 -stdout /data/aoxj/resin/log/stdout.log -stderr /data/aoxj/resin/log/stderr.log [root@localhost ~]# jps -l 28729 sun.tools.jps.Jps 23789 com.asiainfo.aimc.bossbi.BossMain 23651 com.caucho.server.resin.Resin [root@localhost ~]# jps -v 23789 BossMain 28802 Jps -Denv.class.path=/data/aoxj/bossbi/twsecurity/java/trustwork140.jar:/data/aoxj/bossbi/twsecurity/java/:/data/aoxj/bossbi/twsecurity/java/twcmcc.jar:/data/aoxj/jdk15/lib/rt.jar:/data/aoxj/jd k15/lib/tools.jar -Dapplication.home=/data/aoxj/jdk15 -Xms8m 23651 Resin -Xss1m -Dresin.home=/data/aoxj/resin -Dserver.root=/data/aoxj/resin -Djava.util.logging.manager=com.caucho.log.LogManagerImpl -Djavax.management.builder.initial=com.caucho.jmx.MBeanServerBuilderImpl 當然也可以組合使用,如: jps -ml 或者jps -mlv
JVM性能調優監控工具