【性能测试】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慢
相关推荐
2301_769340671 天前
如何在 Vuetify 中可靠捕获 Chip 关闭事件(包括键盘触发).txt
jvm·数据库·python
woniu_buhui_fei1 天前
JVM编译器
jvm
m0_596749091 天前
JavaScript中手动实现一个new操作符的底层逻辑
jvm·数据库·python
dFObBIMmai1 天前
如何在 CSS 中实现元素的绝对定位,使其不受窗口尺寸变化影响
jvm·数据库·python
2303_821287381 天前
如何清洗SQL输入数据_使用框架内置的ORM处理数据交互
jvm·数据库·python
电魂泡哥1 天前
CMS垃圾回收
java·jvm·算法
weixin_444012931 天前
如何在MongoDB中实现按时间跨度的分片路由_时间序列范围分片与冷热节点架构
jvm·数据库·python
woniu_buhui_fei1 天前
JVM垃圾回收
java·jvm
沉下去,苦磨练!1 天前
python的全局解释器锁(GIL)到垃圾回收机制
jvm
Co_Hui1 天前
JVM 内存结构
jvm