使用visualvm远程监控服务器状态(图形化界面)

用途:

  1. 查看当前tomcatcup、线程数、堆占用情况

  1. 查看当前所有线程,如果后台线程卡,可以参考

  1. 查看当前GC情况

  1. 可对当栈、堆进行抽样,检查内存溢出等问题

堆快照:

  1. 服务器执行命令

    jmap -dump:format=b,file=快照存储路径 进程ID

    (也可以在jvm加上参数XX:+HeapDumpOnOutofMemoryError,OOM时自动存储快照)

  1. 载入快照

  1. 将快照下载到本地,并选择该快照,打开

  1. 可以查看当前堆的情况,检查是否存在内存为未释放的情况

  1. 网上案例:

https://segmentfault.com/a/1190000021442637

https://blog.csdn.net/chwshuang/article/details/44202491

配置:

  1. 修改tomcat的startup.sh文件

export CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote ##启用JMX
-Djava.rmi.server.hostname=192.168.99.125  ##主机名,填写服务器IP即可
-Dcom.sun.management.jmxremote.port=7001  ##jmx监听的端口
-Dcom.sun.management.jmxremote.ssl=false   ##是否使用ssl
-Dcom.sun.management.jmxremote.authenticate=true   ##是否启用认证
-Dcom.sun.management.jmxremote.password.file=/usr/local/jdk1.8.0_181/jre/lib/management/jmxremote.password ##用户名、密码文件
-Dcom.sun.management.jmxremote.access.file=/usr/local/jdk1.8.0_181/jre/lib/management/jmxremote.access ##用户的访问权限文件
"
  1. 修改jmxremote.access,在文件底部增加用户名、权限

admin readwrite

  1. 修改jmxremote.password,增加用户密码

admin njmind123

  1. 针对配置文件设置权限

chmod 600 jmxremote.password jmxremote.access

  1. 配置安全策略

文件路径$JAVA_HOME/jre/lib/security/java.policy在文件末位的 }; 前添加

permission java.security.AllPermission;

  1. 启动jstatd,注意:是在被监控机器启动
cd $JAVA_HOME/bin
./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=192.168.99.125 -p 6301  &## 启动后会开启注册端口1099和一个随机的连接端口,注册端口也可通过-p参数指定,如./jstatd -J-Djava.security.policy=all.policy -p 10003 &##-J-Djava.security.policy=jstatd.all.policy =号后面的是文件的绝对路径;
##-J-Djava.rmi.server.logCalls=true 打开日志,如果客户端有连接过来的请求,可以监控到,便于排错;
##-J-Djava.rmi.server.hostname=192.168.134.128 指明本机 hostname 对应的本机地址,确保该地址可以给客户机访问。因为有的服务器 hostname 对应的 ip 不一定是外网能连上的,最好在这里直接明确指定;
##-p 3333 指定服务的端口号,默认是1099。也是可选参数。

  1. 设置防火墙,将配置的端口开放出去

    ​ 除了把1099添加到防火墙规则外,还需要找到另外一个随机端口,也加入到规则中

  2. visualvm添加远程主机(jdk自带程序,在jdk的bin目录中)

添加远程,ip地址为服务器IP,端口为jstatd启动时的端口号

  1. 添加后打开时需要输入配置的用户名、密码

即可通过jstatd模式监控(该模式无法监控cpu、类加载情况)

  1. 右击点击添加JMX连接,并填写连接信息。连接中填写的为服务器的IP,startup.sh中配置的端口,并输入用户名、密码

  1. 添加后可以通过JMX模式查看

  1. Visualvm 可以主动添加插件,需要修改插件中心,可以自行百度,或参考:

https://visualvm.github.io/archive/uc/8u20/updates.xml.gz

  1. Visualvm 可以主动添加插件,需要修改插件中心,可以自行百度,或参考:

https://visualvm.github.io/archive/uc/8u20/updates.xml.gz

使用visualvm远程监控服务器状态(图形化界面)相关推荐

  1. xmanager显示linux7桌面,Xmanager 5远程连接CentOS7图形化界面

    1.安装Xmanager 5 下载链接:https://pan.baidu.com/s/1JwBk3UB4ErIDheivKv4-NA 提取码:cw04 双击xmgr5_wm.exe进行安装 点击'下 ...

  2. Xmanager 5远程连接CentOS7图形化界面

    Xmanager 5远程连接CentOS7图形化界面 本文链接:https://blog.csdn.net/qq_37798548/article/details/84099477 1.安装Xmana ...

  3. Windows远程连接centos7图形化界面,安装xrdp

    Windows远程连接centos7图形化界面,安装xrdp 写在最前面 准备工作 查看ubuntu系统的版本信息和gcc版本 尝试进入图形化界面 更新yum 下载安装图形化界面 查询本地是否有Ser ...

  4. Linux远程桌面连接,Xmanager 5实现远程调用CentOS7图形化界面

    先说效果,可以实现 在 Centos7.6 上的远程桌面操作.             流畅度和Windows远程桌面差不多. 背景: 大家都知道Centos的图形化比较鸡肋,为什么要弄图形化呢? 在 ...

  5. 如何远程进入linux7.2图形界面,CentOS7.2安装VNC,让Windows远程连接CentOS 7.2 图形化界面...

    需求及说明 开发老大突然心血来潮,让实现在windows下通过vnc实现连接到CentOS系统的图形化界面,这里实践CentOS7.2 下安装VNC,让Windows远程桌面Linux解决了不少问题, ...

  6. win10远程登录Ubuntu14.04图形化界面

    一.使用场景 因工作原因,需要在window与Linux系统同时操作.由于虚拟机卡顿,十分影响工作效率,于是找领导又申请一台电脑. Ubuntu主机主要日常代码编译与git操作,window主机主要用 ...

  7. linux远程图形操作系统,二、Linux操作系统之操作篇-Xmanager 远程访问Linux图形化界面...

    2.Linux操作系统之操作篇-Xmanager 远程访问Linux图形化界面 红帽配置Xmanager 远程访问Linux: 1. 修改gdm配置文件,修改内容为粗体部分. /etc/gdm/cus ...

  8. linux unix 可视化界面,Linux/UNIX远程调用图形化界面的一种方法

    看题目大家应该可以理解本文只是介绍远程调用Linux/Unix图形化界面(GUI)的一种方法,个人认为这种方法比较方便简单,其他方法不在此做单独介绍了. 准备软/硬件 1.windows pc:一般指 ...

  9. XManager远程Linux 安装Oracle 图形化界面xstart解决方法

    XManager远程Linux 安装Oracle 图形化界面xstart解决方法 参考文章: (1)XManager远程Linux 安装Oracle 图形化界面xstart解决方法 (2)https: ...

最新文章

  1. 树状dp(这个人写得好多转来慢慢看)
  2. Python脚本:将mol2分子库文件拆分为单个mol2文件
  3. 自定义android控件EditText 自定义边框 背景
  4. 使用Denyhost来阻止恶意连接SSH的IP
  5. 创业公司其实根本不需要管理
  6. python图形化界面开发工具_图形用户界面(GUI)常见问题
  7. python2安装_如何安装python2
  8. 旧电脑从win7更换成Ubuntu系统(U盘安装)
  9. mysql operator_mysql-operator容器化部署mysql8
  10. sql server 多条记录数据合并为一条_面试必备sql知识点——MySQL基础
  11. 【深度首发】图森未来CEO陈默:我们并非在主机厂上游兜售技术,而是立足下游,做卡车运输业的智能服务商丨Xtecher 封面
  12. win10建立符号链接
  13. QT之信号和槽机制详解
  14. 【金融计量学】面板数据(自用笔记,第一次写)
  15. 【分享一些自己收集的API接口---欢迎点赞收藏】
  16. 如何设置路由器wifi的用户黑名单?(使别人不能连接你家WIFI)
  17. h5 实现公众号登录
  18. P2380 狗哥采矿 (二维dp)
  19. Golang日志框架lumberjack包源码分析
  20. 世界杯数据可视化分析

热门文章

  1. 使用MindSpore报这个错是什么意思,RuntimeError: _Map_base::a
  2. linux搜狗拼音卸载,Fedora20 安装fcitx 搜狗输入法 卸载ibus
  3. 关于北京生孩子落户口问题集锦
  4. OpenKruise原理介绍和安装
  5. R语言作业:样本容量与好样本概率的关系
  6. 游戏美术3D建模次世代制作流程图文详解
  7. 基于Matlab的缺陷识别检测系统
  8. 初学者如何入门安全测试?
  9. 201571030121《小学四则运算练习软件软件需求说明》结对项目报告
  10. BLAST背后的知识(一点原理)