【性能测试】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慢
相关推荐
wangchunting1 小时前
Jvm-垃圾收集器
java·开发语言·jvm
鹤旗3 小时前
While语句,do-while语句,for语句
java·jvm·算法
wuqingshun3141594 小时前
谈谈你对springAop动态代理的理解?
java·jvm
gelald4 小时前
JVM - 运行时内存模型
java·jvm·后端
2501_924952695 小时前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
专注_每天进步一点点9 小时前
方法 A 用线程池 1,方法 A 内部的方法 B 也用同一个线程池 1提交任务。导致的线程死锁
jvm
小王不爱笑1329 小时前
深度剖析:synchronized 底层实现原理(JVM 视角)
jvm
庞轩px9 小时前
线程池核心参数与拒绝策略深度解析
java·jvm·数据库
干啥啥不行,秃头第一名10 小时前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python