• 使用VisualVM监控java进程


    一、安装插件

    工具—插件—设置,可以修改配置中心地址(默认不用改),对应版本在这里查看 https://visualvm.github.io/pluginscenters.html

    工具—插件—可用插件,勾选VisualGC安装

    二、JMX连接

    在VisualVM中右键远程,添加远程主机,输入ip

    在java的jvm配置中增加如下配置

    JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=10.20.64.123 -Dcom.sun.management.jmxremote.port=1099"
    

    -Dcom.sun.management.jmxremote.authenticate=false 是否启用验证

    -Dcom.sun.management.jmxremote.ssl=false 是否启用ssl

    -Djava.rmi.server.hostname=119.23.250.83 指定远程主机的ip地址

    -Dcom.sun.management.jmxremote.port=1099 指定连接的端口号

    重启后在远程主机右键添加JMX连接,输入端口,就能看到除了VisualGC以外的内容,如果要看VisualGC需要建立jstatd连接

    三、jstatd连接

    在服务器jdk的bin文件里新建一个名为jstatd.all.policy的文件

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

    在bin目录中执行

    ./jstatd -J-Djava.rmi.server.hostname=10.20.64.123 -J-Djava.security.policy=jstatd.all.policy -p 1100
    

    注:在结尾空一格加个"&"可以后台运行

    在远程主机右键添加jstatd连接,输入端口,就能看到机器上的java程序信息,点开可以看到VisualGC信息

    如果发现这种看不了cpu信息的话,可以再创建JMX连接,这样新建的JMX连接可以看到cpu信息和VisualGC信息了

  • 相关阅读:
    jvm 致命问题分析
    java 包引入时*会全部加载吗
    JDK压缩指针
    ArrayList && HashMap扩容策略
    数据结构对齐 堆对齐 栈对齐
    TLS Thread Local Storage
    vue2 设置网页title的问题
    error ...项目路径 ode_moduleschromedriver: Command failed.
    Vue打包后出现一些map文件
    'webpack-dev-server' 不是内部或外部命令,也不是可运行的程序
  • 原文地址:https://www.cnblogs.com/ctxsdhy/p/12378532.html
Copyright © 2020-2023  润新知