使用jvisualvm进行远程监控
1. 描述
jvisualvm是JDK自带的监控工具,位于JDK bin目录下面。
默认jvisualvm不能监控远程的JVM进程,需要进行一些配置。
2. 单独在应用上配置JVM启动参数
在Java启动时,配置如下参数:
-Djava.rmi.server.hostname=192.168.23.65 -Dcom.sun.management.jmxremote.port=18888 -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.managementote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
其中java.rmi.server.hostname配置的是运行JVM所在的机器IP。
如:
nohup java $JAVA_OPTS -Dfile.encoding=UTF-8 -Djava.rmi.server.hostname=192.168.23.65 -Dcom.sun.management.jmxremote.port=18888 -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.managementote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -cp $LIB_PATH com.test.Application > console.log &
注意:com.sun.management.jmxrenote.port=18888,这个端口不能与业务的端口一致,否则报错。
在jvisualvm里面添加远程主机192.168.23.65,然后右键添加JMX连接,如图:

输入上面配置的端口即可,之后就可以看到各种监控的数据。

3. 使用jstatd
新建一个文件jstatd.all.policy(名称随意),内容如下:
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};
然后执行 jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=192.168.23.65
在jvisualvm里面添加远程主机 192.168.23.65,然后右键添加jstatd连接,端口默认。jvisualvm即可扫描出所有正在运行的JVM,点击即可监控。
对比两种方式,第一种需要在每个JVM参数中都要配置,第二种不需要配置应用的JVM参数,只需要额外启动一个jstatd即可。
使用jvisualvm进行远程监控的更多相关文章
- Java虚拟机二:使用jvisualvm工具远程监控tomcat内存
jdk中自带了很多工具可以用于性能分析,位于jdk的bin目录下,jvisualvm工具可以以图形化的方式更加直观的监控本地以及远程的java进程的内存占用,线程状态等信息. 一.配置tomcat 在 ...
- JvisualVm添加远程监控
一.Weblogic远程监控 1.首先需要在远程的weblogic的域下面,找到/bin/ setDomainEnv.sh ,需要在此文件下加入如下内容: -Dcom.sun.management.j ...
- jvisualvm远程监控Tomcat
网上已经有很多这方面的资料,但有些很杂乱,这里做了整理总结. 一.Java VisualVM 概述 对于使用命令行远程监控jvm 太麻烦 . 在jdk1.6 中 Oracle 提供了一个新的可视化的. ...
- jvisualvm 连接 jstatd 远程监控 jvm 或 Visual GC提示"不受此JVM支持“
Visual GC提示"不受此JVM支持",可以使用此方法解决. 一.添加配置文件 jstatd.all.policy [root@localhost /]# cd /usr/lo ...
- 使用jvisualvm远程监控tomcat(阿里云ECS)
写在前面: 使用jvisualvm远程监控tomcat(阿里云ECS),连接是报错:service:jmx:rmi:////jndi/rmi:IP:端口// 连接到 IP:端口,网上找了很多资料, ...
- 本地jvisualvm通过jstatd远程监控GC
1.查找jdk路径 [root@xxx ~]# which java /data/soft/jdk1.8.0_221/bin/java 2.进入jdk的bin目录下添加指定安全策略文件,注意jdk路径 ...
- Jstatd方式远程监控Linux下 JVM运行情况
前言 最近一个项目部署在服务器上运行时出现了问题,经过排查发现是java内存溢出的问题,所以为了实时监控服务器java内存的情况,需要远程查看服务器上JVM内存的一些情况.另外服务器系统是CentOS ...
- java自带的监控工具VisualVM(二)远程监控
ps:尝试了网上的几个网友提供的方法,始终不得其法,汇总后,终于尝试成功!将一些需要注意的细节也记录下来以后备用! 我们经常需要对我们的开发的软件做各种测试, 软件对系统资源的使用情况更是不可少, 目 ...
- java-jvisualvm远程监控tomcat
一.修改要访问的远程主机(Linux)相关文件,本文档只介绍了java-jvisualvm的JMX方式: 1.打开$CATALINA_HOME/bin/startup.sh, 找到倒数第二行(也就是e ...
随机推荐
- 高级需求分析UML建模设计模式笔记
1.REQ->HLR 分析 全系统性质->AD设计 Context,BOM,Conception 2.REQ->LLR 分析 模块分析->DD设计 + 编码 Feature,B ...
- 获取easyui calendar 属性
<div id="cc" class="easyui-calendar" style="width:250px;height:250px;&qu ...
- [Android Pro] Android系统手机端抓包方法 和 通过File查看应用程序流量
adb shellcat proc/uid_stat/%uid%/tcp_snd proc/uid_stat/%uid%/tcp_rcv ------------------------------ ...
- django的过滤和搜索排序功能django-filter
参考: 1.https://django-filter.readthedocs.io/en/master/guide/usage.html#the-filter 2.https://www.cnblo ...
- 将Maven2项目转为MyEclipse项目
现在项目中,大家开始用jetty.它不用像在MyEclipse中使用Tomcat那样要部署,也不用像在Tomcat中那样,要把应用都放到webapp文件夹下.jetty可以直接用你的项目的目录结构. ...
- powerVR tbdr 硬件架构理解
有两点 TSP里的iteration 和那个vertex data 到 tsp的 *2 itedration是为了把 ps里面uv的动态改变提前算出来给 texture fetch用 这个的通用方法是 ...
- CUDA,cudnn一些常见版本问题
- 最好的方法是官网说明: https://tensorflow.google.cn/install/source_windows Version Python version Compiler Bu ...
- jdk1.7下载路径
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
- (转)D3d9c的固定渲染管道(fixed function pipeline)与可编程管道(programmable function pipeline)的异同点
转自:http://blog.csdn.net/tspatial_thunder/article/details/5937701 现在的游戏图形部分越来多依靠GPU来渲染绘制.说起GPU先说着色器,着 ...
- TCP协议中的SO_LINGER选项
TCP协议中的SO_LINGER选项 SO_LINGER选项用来设置延迟关闭的时间,等待套接字发送缓冲区中的数据发送完成.没有设置该选项时,在调用close()后,在发送完FIN后会立即进行一些清理工 ...