使用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来进行查看。

相关文章
相关标签/搜索