性能监控调优

1.命令行工具

1.1 jps

查看系统JVM进程
jps [options] [hostid]

  • option

  • hostid:省略则本机,监控远程需要安装jstatd

1.2 jstat

查看JVM统计信息
jstat -

  • option
  • -t:加程序运行时间
  • [-h]:输出设定行数加表头信息
  • :查询间隔时间
  • count:查询总次数
  • 结果:

    当ou上涨趋势时,可能oom

1.3 jinfo

实时查看修改JVM参数
只有标记为manageable的参数才可以被实时修改

  • java -xx:+PrintFlagsFinal -version | grep manageable
    jinfo [option] pid

1.4 jmap

导出内存映像文件和内存使用情况,生成heapdump文件且可以查询finalize执行队列,以及堆和方法区的信息
jmap [option] pid

  • oom时自动导出
    -XX:+HeapDumpOnOutOfMenoryError
    -XX:HeapDumpPath=

1.5 jhat

JDK9删除 使用VisualVM代替
在本地7000端口查看dump文件分析结果
jhat [options] [hostid]

1.6 jstack

生成线程快照,堆栈集合
jstack [optinon] pid

2.JVM监控工具

JDK自带:jconsole VisualVM jmc
三方: MAT JProfiler Arthas Btrace

3.JVM参数

3.1 标准参数类型

所有JVM都要实现的功能

3.2 非标准参数

3.3 非稳定参数

主要用于调优
布尔类型: -XX:+/-

3.3.1 堆栈方法区

3.3.2 OOM相关

3.3.3 GC相关

  • Parallel

  • CMS

  • G1

  • 日志

3.4 配置

java -Xms128m -jar demo.jar

posted @   lwx_R  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2023-07-06 Nacos
2021-07-06 qt基本程序与常用控件
2021-07-06 创建项目
2021-07-06 Qt安装
点击右上角即可分享
微信分享提示