使用jconsole和jvisualvm進行監控

開發環境:java

 win10 64位 ,idea 2018.1,  JDK8ide

測試環境:測試

RHEL 6.5 JDK8idea

Jconsole監控:.net

在啓動java程序的時候指定jconsole的端口:線程

nohup       /usr/java/jdk1.8.0_161/bin/javanetty

-Dcom.sun.management.jmxremote.port=61232code

-Dcom.sun.management.jmxremote.authenticate=false進程

-Dcom.sun.management.jmxremote.ssl=false  ip

-Xms6g -Xmx6g -Xmn3g -jar ./runnable.jar  

-Dio.netty.leakDetectionLevel=paranoid

> /dev/null 2>&1 &

說明:

-Dcom.sun.management.jmxremote.port=61232 指定訪問的端口

-Dcom.sun.management.jmxremote.authenticate=false  關閉認證

-Dcom.sun.management.jmxremote.ssl=false  關閉ssl認證

注意上面的必須在一行執行。沒有空格。

 

輸入遠程進程的IP地址和端口名稱,例如:

11.8.12.123:61232

 

 

使用jvisualVM來進行監控:

在java的安裝目錄的bin下面新建一個配置文件:

vi jstatd.all.policy

輸入下面的文字:

grant codebase "file:${java.home}/../lib/tools.jar" {
    permission java.security.AllPermission;
};

保存。

啓動服務在12030端口:

rmiregistry 12030 & jstatd -J-Djava.security.policy=jstatd.all.policy -p 12030 &

主機名稱寫上遠程的主機ip

端口寫上剛纔啓動的12030。

 

有一些線程可能不知道是哪裏啓動的,能夠經過idea來進行查看。

相關文章
相關標籤/搜索