【性能测试】jvm监控

使用本地jvisualvm远程监控服务器

参考文章:https://blog.csdn.net/yeyuningzi/article/details/140261411

jvisualvm工具默认是监控本地jvm,如果需要监控远程就要修改配置参数

1、先查看是否打开

ps -ef|java

如果打开杀掉进程

2、进入项目服务路径下,然后执行命令

bash 复制代码
java -Dcom.sum.management.jmxremote -Djava.rmi.server.hostname=x.x.x.x -Dcom.sun.management.jmxremote.port=9000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar liternall-all-0.1.0-exec.jar

3、开启本地jdk自带的jvisualvm.exe文件,添加远程主机

需要关注的点:

cpu:关注垃圾回收,如果使用过高是有问题存在的

堆:堆是实例化对象存放的区域,是jvm调优最重要的区域,基本都是针对堆的调优;堆空间是有一定范围

绿色线程是当前运行线程,紫色是休眠线程,黄色是等待线程,重点关注黄色等待线程,如果等待时间过长需要优化

垃圾回收

垃圾回收算法

引用计数法

当大家新建一个变量之后,那么java语言在内部给这个变量添加一个计数的属性n,如果这个变量被引用了,那么这个变量的计数的属性n+1,如果变量被取消引用,那么这个变量计数就-1,如果变量的引用n变为0,就标记为可回收状态

分代收集算法

类型 发生时机 特点
minorGC 新生代垃圾收集 频繁、快速
fullGC/majorGC 老年代垃圾收集 一般会伴随一次minorGC速度是比minorGC慢
相关推荐
码码哈哈0.01 天前
从“类加载的五个阶段”逐步分析 JVM“ 在每个阶段的内存变化”
jvm
寻星探路1 天前
Java EE初阶启程记04---线程的状态
java·开发语言·jvm·java-ee
wshzrf2 天前
【Java系列课程·Java学前须知】第3课 JDK,JVM,JRE的区别和优缺
java·开发语言·jvm
铅笔侠_小龙虾2 天前
JVM 深入研究 -- 详解class 文件
java·开发语言·jvm
Just_Do_IT_OK2 天前
线上JVM问题定位常用命令
jvm
DKPT2 天前
JVM栈溢出时如何dump栈信息?
java·jvm·笔记·学习·spring
DKPT2 天前
JVM堆大小如何设置?
java·开发语言·jvm·笔记·学习
铅笔侠_小龙虾2 天前
JVM 目录
java·jvm
花心蝴蝶.3 天前
JVM 类加载
开发语言·jvm·后端
老赵的博客3 天前
c++ 之多态虚函数表
java·jvm·c++