JVM关键指标监控(调优)

JVM 99%情况下不需要调优

使用性能更好的垃圾回收器

核心指标

针对单台服务器而言:

复制代码
jvm.gc.time: 每分钟GC耗时在1s以内 500ms以内最佳
jvm.gc.meantime: 每次YGC耗时在100ms以内,50ms以内最佳
jvm.fullgc.count: FGC(老生代垃圾回收)最多几小时1次,一天不到1次最佳 一次FGC伴随一次卡顿
jvm.fullgc.time: 每次FGC耗时在1s以内,500ms最佳

JVM优化步骤

CPU指标

查看占用CPU最多的进程

查看占用CPU最多的线程

查看线程堆栈快照信息

分析代码执行热点

查看那个代码占用CPU执行时间最长

查看每个方法占用CPU时间比例

JVM内存指标

查看当前堆内存参数是否合理(基于线上机器的内存)

查看堆区域的内存增长是否正常

查看堆区域那个导致的GC

查看GC后能否正常回收到内存

JVM GC指标

查看每分钟GC时间是否正常

查看每分钟YGC次数是否正常

查看FGC次数是否正常

查看单次FGC时间是否正常

查看单次GC各阶段详细耗时,找到耗时严重的阶段

相关推荐
庞轩px3 小时前
模拟面试回答第十七问:垃圾判定算法
jvm·面试·循环引用·引用计数法·垃圾判定算法·可达性分析法·gcroots
智算菩萨4 小时前
【Pygame】第16章 游戏存档系统设计与数据持久化实现
jvm·游戏·pygame
流觞 无依5 小时前
SQLite数据库损坏修复指南——解决“database disk image is malformed”报错
jvm·数据库·sqlite
流觞 无依6 小时前
Linux下SQLite数据库空间管理 查看表占用空间+清理优化
java·jvm·oracle
普通网友6 小时前
使用Python处理计算机图形学(PIL/Pillow)
jvm·数据库·python
程序员榴莲7 小时前
JVM体系结构(运行时数据区)初解
java·jvm
努力学习的明7 小时前
JVM 学习路线与实战指南:内存管理、GC 机制及问题诊断
jvm·学习
星辰_mya7 小时前
jvm之生老病死
jvm·数据库·面试·架构师
飞Link1 天前
深度掌控 Agent 调试:LangGraph 本地服务器与 Studio 核心指南
运维·服务器·jvm
西门吹雪分身1 天前
新生代(Young Generation) 内部的三个区域
jvm