JConsole的远程连接

昨天在看Java虚拟机的相关知识,看到了里面说了一个Java的内存监控工具,于是我玩了一下,监控本地程序还是很方便的,但是我看到了其中有一个监控远程Java程序的部分,于是我打算自己探索一下,查找了几篇博客,也大致摸清楚了怎么玩的,现记录如下
1、由于是基于JMX技术,所以在Java程序开始的时候需要进行一些配置,具体的配置如下


JConsole的远程连接_第1张图片
JAVA_OPTS配置

上面的配置是写在/etc/profile文件中,改完配置之后不要忘了使用下面的指令使其生效

source /etc/profile

2、假如设置了需要远程连接的密码,则需要进行下面的设置:进入jre/lib/management目录,将jmxremote.password.template文件拷贝一份为jmxremote.password,使用vim打开这个文件,将#号的配置打开,这里可以修改密码,但是用户名不能修改,否则无法访问,修改之后的文件如下


修改之后的用户名和密码

修改完之后,要使用这个指令修改文件的权限

chmod 600 jmxremote.access jmxremote.password

3、打开一个程序,并使用已经设置的JAVA_OPTS来运行它

#b是我写的一个小程序,是为了验证这个功能的
java $JAVA_OPTS b

b.java的代码如下

public class b{
        public static void main(String[] args){
                while(true){
                        System.out.println("hello world");
                        try{
                                Thread.sleep(1000);
                        }catch(Exception e){
                                e.printStackTrace();
                        }
                }
        }
}

4、使用JConsole进行登录,如下所示


JConsole的远程连接_第2张图片
连接配置

5、连接成功


JConsole的远程连接_第3张图片
连接的成功图

你可能感兴趣的:(JConsole的远程连接)