目錄
一、jdk工具之jps(JVM Process Status Tools)命令使用
二、jdk命令之javah命令(C Header and Stub File Generator)
三、jdk工具之jstack(Java Stack Trace)
四、jdk工具之jstat命令(Java Virtual Machine Statistics Monitoring Tool)
四、jdk工具之jstat命令2(Java Virtual Machine Statistics Monitoring Tool)詳解
五、jdk工具之jmap(java memory map)、 mat之四--結合mat對內存泄露的分析
六、jdk工具之jinfo命令(Java Configuration Info)
七、jdk工具之jconsole命令(Java Monitoring and Management Console)
八、jdk工具之JvisualVM、JvisualVM之二--Java程序性能分析工具Java VisualVM
九、jdk工具之jhat命令(Java Heap Analyse Tool)
十、jdk工具之Jdb命令(The Java Debugger)
十一、jdk命令之Jstatd命令(Java Statistics Monitoring Daemon)
十一、jdk命令之Jstatd命令(Java Statistics Monitoring Daemon)
十二、jdk工具之jcmd介紹(堆轉儲、堆分析、獲取系統信息、查看堆外內存)
十三、jdk命令之Java內存之本地內存分析神器:NMT 和 pmap
jps工具
jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一個顯示當前所有java進程pid的命令,簡單實用,非常適合在linux/unix平台上簡單察看當前java進程的一些簡單情況。
我想很多人都是用過unix系統里的ps命令,這個命令主要是用來顯示當前系統的進程情況,有哪些進程,及其 id。 jps 也是一樣,它的作用是顯示當前系統的java進程情況,及其id號。我們可以通過它來查看我們到底啟動了幾個java進程(因為每一個java程序都會獨占一個java虛擬機實例),和他們的進程號(為下面幾個程序做准備),並可通過opt來查看這些進程的詳細啟動參數。
使用方法:在當前命令行下打 jps(需要JAVA_HOME,沒有的話,到改程序的目錄下打) 。
jps存放在JAVA_HOME/bin/jps,使用時為了方便請將JAVA_HOME/bin/加入到Path.
$> jps
23991 Jps
23789 BossMain
23651 Resin
比較常用的參數:
-q 只顯示pid,不顯示class名稱,jar文件名和傳遞給main 方法的參數
$> jps -q
28680
23789
23651
-m 輸出傳遞給main 方法的參數,在嵌入式jvm上可能是null
$> 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
-l 輸出應用程序main class的完整package名 或者 應用程序的jar文件完整路徑名
$> jps -l
28729 sun.tools.jps.Jps
23789 com.asiainfo.aimc.bossbi.BossMain
23651 com.caucho.server.resin.Resin
-v 輸出傳遞給JVM的參數
$> 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
詳細情況請參考sun官方文檔。
http://java.sun.com/j2se/1.5.0/docs/tooldocs/share/jps.html
-----------------------------------------------------------------------------------------------
jps查看java進程 列出所有的jvm實例 實例: jps 列出本機所有的jvm實例 jps sudo jps ps aux | grep java sudo jps看到的進程數量最全 jps 192.168.0.77 列出遠程服務器192.168.0.77機器所有的jvm實例,采用rmi協議,默認連接端口為1099 (前提是遠程服務
1,jps查看java進程
列出所有的jvm實例
實例:
jps
列出本機所有的jvm實例
jps
sudo jps
ps aux | grep java
sudo jps看到的進程數量最全
jps 192.168.0.77
列出遠程服務器192.168.0.77機器所有的jvm實例,采用rmi協議,默認連接端口為1099
(前提是遠程服務器提供jstatd服務)
---------------------------------------------------------------------------
注:jps命令有個地方很不好,似乎只能顯示當前用戶的java進程,要顯示其他用戶的還是只能用unix/linux的ps命令。