使用Visual VM 监控远程Linux服务器上的 JVM的垃圾回收情况

注:以下用到的ip均为随机乱写的,非真实IP

一、启动服务器jar包

本人服务器运行的 springboot  程序,所以直接在启动jar包时,添加相关的参数即可 。(ip为乱写的)

java -Dcom.sun.management.jmxremote.port=19100 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=116.196.123.130 -Dfile.encoding=UTF-8  -Xms256m -Xmx256m -jar  /root/dev/ybf-system-0.0.2-SNAPSHOT.jar 

另:如果jar包是运行在docker 的镜像中的,需要多加一个参数  Dcom.sun.management.jmxremote.rmi.port=19001

java -Djava.rmi.server.hostname=47.75.162.8 -Dcom.sun.management.jmxremote.port=19001 -Dcom.sun.management.jmxremote.rmi.port=19001 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dfile.encoding=UTF-8 -Xms256m -Xmx256m -jar /root/app/lv-miaosha-0.0.2-SNAPSHOT.jar &

二、远程连接

1、打开visual vm ,点击 “文件” 、“添加远程主机”  ,输入主机名test(端口默认即可)

2、在test 上右击,选择添加JMX连接,输入  ip : 连接端口

确定,在生成的连接上双击即可连接

三、安装visual GC  插件

问题描述:VisualVM连接远程服务器有两种方式:JMX和jstatd,两种方式都不能完美支持所有功能。

例如:JMX不支持VisualGC,jstatd不支持CPU监控,实际使用可同时配置上并按需选用。

下面介绍如何配置jstatd连接方式,实现使用visualgc插件查看远程服务器上java程序的gc情况:

1.修改远程服务器上java设置 (如果配置了JAVA_HOME)

vi $JAVA_HOME/jre/lib/security/java.policy

在文件末位的   };  前添加
    permission java.security.AllPermission;

2. 启动jstatd

进入 $JAVA_HOME/bin 目录下执行

 ./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=121.42.30.8(远程服务器IP)

3.本地启动VisualVM,因为在配置JMX时已经添加过服务器节点,如果配置正确,通常VisualVM会自动检测到jstatd连接并添加节点

原文地址:https://www.cnblogs.com/lostvip/p/11057939.html

时间: 2024-10-01 03:29:15

使用Visual VM 监控远程Linux服务器上的 JVM的垃圾回收情况的相关文章

jprofiler_监控远程linux服务器的JVM进程(转 非常棒)

几天前写了一篇文章,jprofiler_监控远程linux服务器的tomcat进程(实践),介绍了使用jprofiler怎样监控远程linux的tomcat进程,这两天想了想,除了可以监控tomcat进程,是不是也可以监控其它的Java进程,可是找了一圈都是监控tomcat,于是就打算亲手实验一下 本文打算把一个简单的java程序打包成jar包,并部署到linux服务器运行,然后使用jprofiler监控该jar包 java程序可参考文章:Java部署_IntelliJ创建一个可运行的jar包(

Linux下不借助工具实现远程linux服务器上传下载文件

# Linux下不借助工具实现远程linux服务器上传下载文件 ## 简介 - Linux下自带ssh工具,可以实现远程Linux服务器的功能- Linux下自带scp工具,可以实现文件传输功能 ## 登录服务器 - `ssh [email protected]` 登录服务器```PC:~$ ssh [email protected][email protected]'s password: ``` ## 文件传输 - 下载文件- `scp [email protected]:/data/log

使用PhpStrom等IDE编辑 远程linux服务器上的文件 实时更新

习惯了在linux上 vim进行PHP的开发,突然忘了IDE的感觉,所以想到了.通过PhpStrom等IDE直接编辑 samba共享到 mac或者windows本地的磁盘进行编辑. 为了忘却的纪念,有了这篇文章. 1. 第一步:Linux服务器上 安装 samba服务,共享服务器给mac或windows本地 1)yum安装 # yum install -y samba samba-client samba-swat 2)启动(启动:service smb start:停止:service smb

搭建基于Nagios的监控系统——之监控远程Linux服务器

上一篇介绍了如何安装Nagios Core,这一篇跟大家分享一下如何将一台远程的Linux服务器加入纳入监控范围. 第一部分:在远程Linux上安装Nagios Plugins和NRPE   第一步:下载Nagios Plugins和NREP扩展的安装程序   [plain] view plain copy cd Downloads wget http://nagios-plugins.org/download/nagios-plugins-2.0.tar.gz 访问 http://www.na

如何在远程Linux服务器上搭建Nginx

首先得申明一下使用的工具有: 1. putty  https://pan.baidu.com/s/1i4Ix8Hn 2. fileZilla  https://pan.baidu.com/s/1nvJR8al 如果是抢购阿里云免费的就按照下面执行下去就行了,如果花钱买的主机,会顺手送你一个Apache服务器,你的手动卸载Apache,卸载的步骤我会在下个博文中介绍,等不及的可以联系我[email protected] 下面先配置Nginx yum install epel-release -y

在Windows上使用批处理从远程linux服务器上复制文件到本地

################################################ 安装cygwin需要选择的安装包如下: autoconf2. ,automake1.1 ,binutil ,gcc-cor , gcc-g ,gd ,pcre  ,pcre-devel ,make ,vim,expect(expect为使用scp时自动输入密码需要) 镜像文件选择:http://cygwin.mirror.globo.tech ############################

使用Navicat连接管理远程linux服务器上的mysql数据库

点击这个连接,选择mysql. 填完这两页,测试成功,点击确定即可.创建了hyj连接. 结果如下: 原文地址:https://www.cnblogs.com/hyjh/p/11503234.html

windows平台是上的sublime编辑远程linux平台上的文件

sublime是个跨平台的强大的代码编辑工具,不多说. 想使用sublime完成linux平台下django站点的代码编辑工作以提高效率(原来使用linux下的vim效率较低,适合编辑一些小脚本). 下载linux平台下的Sublime_Text_2.0.2_x64.tar.bz2(http://www.sublimetext.com/) 解压使用: tar -xjvf Sublime_Text_2.0.2_x64.tar.bz2 cd Sublime\ Text\ 2/ 执行 ./sublim

Idea 2019.2 (Ultimate Edition) 部署项目到远程Linux服务器tomcat 详解

前言:之前做项目,一直都是把本地的源码打成war包上传到远程服务器tomcat/webapps下.每次都要重新打成war进行项目的部署,感觉特别繁琐. 步骤: 1.环境配置 前提:保证在远程linux服务器上安装好tomcat. 2.Linux服务器tomcat配置 (1)在Linux上找到我们安装的tomcat的目录: (2)在tomcat下的bin中找到catalina.sh,进行远程发布需要在catalina.sh这个启动脚本中增加一些配置: 编辑catalina.sh文件: 按inset