Jvisualvm监控本地、远程Java进程

article/2025/10/13 18:19:04

Jvisualvm监控本地、远程Java进程

  • 监控本地Java进程
  • 监控远端Java进程
    • JMX
    • 创建配置文件
    • 开启远程监控
    • 启动Tomcat
    • 创建连接

监控本地Java进程

在命令行输入jvisualvm即可启动jvisualvm

在这里插入图片描述

双击某个进程即可打开

在这里插入图片描述

监控远端Java进程

Jvisualvm不仅是可以监控本地jvm进程,还可以监控远程的jvm进程,需要借助于JMX技术实现。

这里以jvisualvm监控远端Tomcat的Java进程为例

JMX

JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。

创建配置文件

tomcat/conf文件目录中创建两个文件jmxremote.accessjmxremote.password

jmxremote.password文件用于配置账号、密码

touch jmxremote.password账号 密码guest guestmanager manager

jmxremote.access文件用于配置账号权限

touch jmxremote.access用户 权限
guest readonlymanager readwrite

授予权限

chmod 600 jmx*

开启远程监控

要想让服务器上的tomcat被连接,需要改catalina.sh文件

注意:最好一个参数一行的配置

# ----- Execute The Requested Command -----------------------------------------
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote"
CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=112.74.96.150"
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.port=8085" 
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.rmi.port=8086" 
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.ssl=false" 
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.authenticate=true"
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access" 
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password"

参数说明

server.hostname:ip
jmxremote.port:开启jmx的端口,JMX远程连接端口
rmi.port: 通信端口,默认随机
jmxremote.ssl:是否开启ssl(false/true)
jmxremote.authenticate:是否开启鉴权功能,账号密码远程监控(false/true)
jmxremote.password.file:密码文件路径
jmxremote.access.file:权限文件路径

注意:云服务器一定要注意RMI端口的设置,否则无法远程连接 ! ! !

启动Tomcat

进入bin目录,启动tomcat

./startup.sh

查看tomcat启动日志

tail -f ../logs/catalina.out

查看tomcat端口监听

[root@administrator bin]# lsof -i tcp:8080
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    18876 root   63u  IPv6 758429      0t0  TCP *:webcache (LISTEN)

查看8085监听情况

[root@administrator bin]# lsof -i:8085
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    18876 root   21u  IPv6 757493      0t0  TCP *:8085 (LISTEN)
[root@administrator bin]# netstat -antup | grep 18876
tcp6       0      0 :::8080                 :::*                    LISTEN      18876/java          
tcp6       0      0 :::8085                 :::*                    LISTEN      18876/java          
tcp6       0      0 :::8086                 :::*                    LISTEN      18876/java          
tcp6       0      0 :::43805                :::*                    LISTEN      18876/java          
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      18876/java          
tcp6       0      0 172.22.4.21:8086        116.169.4.136:52959     ESTABLISHED 18876/java          
tcp6       0    101 172.22.4.21:8086        116.169.4.136:1957      ESTABLISHED 18876/java

创建连接

在jvisualvm中选中远程,右击添加,主机名上写服务器的ip地址,然后点击确定
在这里插入图片描述

右击该主机IP,添加JMX,也就是通过JMX技术具体监控远端服务器哪个Java进程

在这里插入图片描述
在JMX中输入如下信息

端口:8085用户名:manager密码:manager勾选不要求SSL连接

连接成功
在这里插入图片描述


http://chatgpt.dhexx.cn/article/Q0QRn6vU.shtml

相关文章

Java VisualVM使用

工具所在位置:windows下jdk安装路径内,如 C:\Program Files\Java\jdk1.8.0_20\bin\ jvisualvm.exe 双击执行; 效果图如下: 可以看到我本机有一个tomcat运行的监控 VisualVM可以根据需要安装不同的插件,每个插件的关注点都不同,有的主要监控GC&#xff0c…

jvisualvm (Java VisualVM)

文章来源:https://blog.csdn.net/a19881029/article/details/8432368 jvisualvm能干什么 监控内存泄露,跟踪垃圾回收,执行时内存、cpu分析,线程分析… jvisualvmg已经被集成在jdk1.6以上的版本中(不是jre)。自身运行需要最低jdk1.6版本&…

jvisualvm监控远程jvm

方式一:JMX 1、服务端添加配置 在tomcat/bin/catalina.sh文件中添加如下配置: export JAVA_OPTS"-Xms256m -Xmx512m -Xss256m -XX:PermSize512m -XX:MaxPermSize1024m -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname192.168.16.239 …

jvisualvm插件安装

jvisualvm插件安装 jvisualvm是我们查看JVM内部结构和JVM调优的重要工具,在java的安装目录的bin目录下。我们安装的Java默认jvisualvm有很多插件是没有安装的。接下来我们来看一下jvisualvm的插件安装。 找到JDK版本对应的插件地址: 访问网址&#xff1a…

JVM调优之JConsole和JVisualVM工具使用

JVM调优过程中,常用JDK自带的两个工具JConsole和JVisualVM,有助于分析问题。下面是两个工具的使用方式。(我发现好多小伙伴居然都不知道这么强大的工具) 一、JConsole使用。 1、JConsole本地监控启动 首先在JDK的bin目录下&#…

JVisualVM安装Visual GC

1、手动下载 下载地址 VisualVM: Plugins Centers 我现在常用JDK8,我的版本号是91 所以打开网址,选择如下👇 选择对应的版本号之后,点击下面那个链接,之后会跳转到一个网页,找到Visual GC,点…

使用jvisualvm远程监控服务器上的jvm

转载文章:原文地址 在测试环境复现出了的研发自测没有发现的疑难问题如性能问题,排除服务器本身的问题之后,研发就需要定位问题。 我们可以直接远程监控测试环境的jvm查看监控进程的运行情况么? 我们可以直接远程dump测试环境的运…

Java jvisualvm简要说明

jvisualvm能干什么:监控内存泄露,跟踪垃圾回收,执行时内存、cpu分析,线程分析... jvisualvm已经被集成在jdk1.6以上的版本中(不是jre)。自身运行需要最低jdk1.6版本,但是可以监控运行在jdk1.4以上版本的java程序 以jd…

Java问题诊断工具——JVisualVM

这篇文章源自一次加班改bug的惨痛经历[,,_,,]:3 负责的一个项目占用不断增加,差点搞崩服务器(╥﹏╥)…… 一下子有点懵,不能立刻确定是哪里导致的问题,所以决定好好研究下这个之前一直被我忽视的问题诊断工具🔧——JVisualVM 嘿嘿…

JVisualVM的使用教程

一、前言 JVisualVM是一个Java虚拟机的监控工具,要是需要对JVM的性能进行监控可以使用这个工具哦 使用这个工具,你就可以监控到java虚拟机的gc过程了 那么,这么强大的工具怎么下载呢? 在JDK1.6后的版本是自带这个工具&#xf…

JVisualVM的使用实录

一、前言 JVisualVM是一个Java虚拟机的监控工具,要是需要对JVM的性能进行监控可以使用这个工具哦 使用这个工具,你就可以监控到java虚拟机的gc过程了 那么,这么强大的工具怎么下载呢? 在JDK1.6后的版本是自带这个工具&#xf…

jvisualvm的使用

jvisualvm的使用 VisuaIVM(All-in-One Java Troubleshooting Tool)是一款免费的,集成了多个 JDK 命令行工具的可视化工具,它提供强大的分析能力,对 Java 应用程序做性能分析和调优。这些功能包括生成和分析海量数据、跟踪内存泄漏、监控垃圾…

JVisualVM初步使用

JVisualVM初步使用 1、前言 jvm调优工具有常见的为Jconsole,jProfile,VisualVM, Jconsole: 为jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。JProfiler:商业软…

JVisualVM 简介

VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带,能够监控线程,内存情况,查看方法的CPU时间和内存中的对 象,已被GC的对象,反向查看分配的堆栈(如100个String对象分别由哪几个对象分配出来…

VisualVM

VisualVM VisualVM基本认识 官网http://visualvm.github.io/ **VisualVM 是一个工具,它提供了一个可视界面,用于查看 Java 虚拟机 (Java Virtual Machine, JVM) 上运行的基于 Java 技术的应用程序(Java 应用程序)的详细信息。**…

JAVA性能分析工具--Jvisualvm使用方法

JDK自带的JAVA性能分析工具。它已经在你的JDK bin目录里了,只要你使用的是JDK1.6 Update7之后的版本。点击一下jvisualvm.exe图标它就可以运行了。 这里是VisualVM 的官方网站:https://visualvm.dev.java.net,资料很全,同时提供V…

jvisualvm使用

一、jvisualvm安装 1、Java版本在1.8及1.8版本以下,JDK已经自带这个工具 2、Java版本在1.8的,需要安装visualvm https://visualvm.github.io/download.html 对于自行安装的版本,运行前需要配置一下路径 进入visualvm的etc的目录,修改visualvm.conf文件…

生成特定架构内核cscope数据库

tags代码浏览工具 tags工具介绍 一般来说,如果我们想要研究一个c/c项目的源码,我们首先要做的是为该项目生成tags文件,tags文件种类有很多,比如 ctags、etags、cscope、gtags 等,有关他们的区别可以参考下面链接里的…

Emacs+cscope手动创建索引(感受cscope的强大)(八十三)

1.cscope 创建索引 <1>.创建索引文件列表cscope.files # find . ! -path "./out/*" ! -path "./prebuilts/*" ! -path "./frameworks/*" -name "*.h" -o -name "*.c" -o -name "*.cc" -o -name "*.cp…

vim cscope java_【转】Cscope的使用(领略Vim + Cscope的强大魅力)

【转】Cscope的使用(领略Vim Cscope的强大魅力) 1、Cscope介绍 Cscope是类似于ctags一样的工具&#xff0c;但可以认为她是ctags的增强版&#xff0c;因为她比ctags能够做更多的事。在Vim中&#xff0c;通过cscope的查 询&#xff0c;跳转到指定的地方就像跳转到任何标签&…