美文网首页Java分享客栈
JVM系列(3)- Java VisualVM使用

JVM系列(3)- Java VisualVM使用

作者: 程序员济癫 | 来源:发表于2019-07-26 11:24 被阅读0次

前言

Java VisualVM是jdk自带一款工具,可以十分友好的监控java进程相关的应用服务及中间件。

工具位置

jdk的bin目录下,找到jvisualvm.exe,双击打开即可。

功能介绍

1、抽样器和profiler,这两个差不多,用其中一个即可。



比如抽样器,点击CPU,就可以看到各个类以及方法执行的时间,可以监控哪个类的方法执行时间较长,一眼就能定位到具体的异常方法。



点击内存,也一样,很直观的就能找到哪个位置可能存在内存泄漏的情况。



2、安装visualGC插件
直接在java visualVM上安装是安装不上的,要去官网下载插件。
地址:https://visualvm.github.io/pluginscenters.html
java -version查一下java版本,然后根据版本下载对应的插件。



然后点击工具-插件,将地址改为正确的地址:

然后就可以安装插件了,勾选可用插件中的这两个:BTrace Workbench和Visual GC

点击安装即可。
装完后:

3、JVisualVM监控tomcat(在第2点的基础上)

1)、配置要监控的远程tomcat中的catalina.sh文件,加入以下部分:
找到JAVA_OPTS,在上方加入:(主要是端口port和主机hostname,记住端口不要和服务器上已经占用的发生冲突,如果是云服务器要开放端口。)

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9004 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.net.preferIPv4Stack=true -Djava.rmi.server.hostname=39.108.70.86"

保存,重启。

2)、远程-右键,添加主机:



添加jmx连接:




然后就和监控本地一样了!

总结:

个人经过测试,监控内网服务器没问题,但是阿里云服务器远程连接会报错:【无法使用 service:jmx:rmi:///jndi/rmi:///jmxrmi 连接到9004】,这是因为云服务器自己的安全策略阻挡了远程监控,所以VisualVM最好的使用场景是远程监控局域网内的服务器。

参考:https://coding.imooc.com/class/241.html,有兴趣的可以看看这门课程,这是我非常喜欢的一位老师。

相关文章

  • JVM系列(3)- Java VisualVM使用

    前言 Java VisualVM是jdk自带一款工具,可以十分友好的监控java进程相关的应用服务及中间件。 工具...

  • 使用Java VisualVM监控远程JVM

    今天有同事说使用jvisualvm通过JMX方式连接到远程应用时,Visual GC插件提示“Not suppor...

  • JVM部分

    JVM 指令集整理 知其然知其所以然程序员必备利器——Java程序性能分析工具Java VisualVM(Visu...

  • java dump heap

    1、java -version 已安装java环境 2、jvisualvm 回车 唤起visualVm 3、右键...

  • java dump

    linux dump jvm捕捉与分析 打开软件的 etc/visualvm.conf ,配置visualvm_j...

  • 学习Java VisualVM的使用

    使用 VisualVM 进行性能分析及调优 JVisualVM 进行性能分析及调优 JVM(5):tomcat...

  • JAVA虚拟机(JVM)三:类加载器子系统

    JAVA虚拟机(JVM)系列:JAVA虚拟机(JVM)一:了解JAVA体系结构JAVA虚拟机(JVM)二:JVM工...

  • JAVA虚拟机(JVM)一:了解JAVA体系结构

    JAVA虚拟机(JVM)系列:JAVA虚拟机(JVM)一:了解JAVA体系结构JAVA虚拟机(JVM)二:JVM工...

  • JVM

    简介 Jvm 系列一:Java类的加载机制Jvm系列二:JVM内存结构 --内存泄漏与内存溢出Jvm系列三:GC算...

  • JVM——VisualVM使用说明

    概述 VisualVM 是一款免费的\集成了多个 JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 ...

网友评论

    本文标题:JVM系列(3)- Java VisualVM使用

    本文链接:https://www.haomeiwen.com/subject/dddrrctx.html