栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JVM监控及诊断工具——命令行

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JVM监控及诊断工具——命令行

jps:查看正在运行的java进程 jstat: 查看JVM统计信息

option参数 —— gc

新生代相关

SOC是第一个幸存者区的大小(字节)

S1C是第二个幸存者区的大小(字节)

SOU是第一个幸存者区已使用的大小(字节)

S1U是第二个幸存者区已使用的大小(字节)

EC是Eden空间的大小(字节)

EU是Eden空间已使用大小(字节)

老年代相关

OC是老年代的大小(字节)

OU是老年代已使用的大小(字节)

方法区(元空间)相关

MC是方法区的大小

MU是方法区已使用的大小

CCSC是压缩类空间的大小

CCSU是压缩类空间已使用的大小

其他

YGC是指从应用程序启动到采样时young gc次数

YGCT是指从应用程序启动到采样时young gc消耗的时间(秒)

FGC是指从应用程序启动到采样时full gc次数

FGCT是指从应用程序启动到采样时full gc消耗的时间(秒)

GCT是指从应用程序启动到采样时gc的总时间

interval参数

用于指定输出统计数据的周期,单位为毫秒。即:查询间隔

count参数

用于指定查询的总次数

-t参数

可以在输出信息前加上一个Timestamp列,显示程序的运行时间。单位:秒

经验

-h参数

可以在周期性数据输出时,输出多少行数据后输出一个表头信息

jinfo:实时查看和修改JVM配置参数

查看

jinfo -sysprops PID 可以查看由System.getProperties()取得的参数

jinfo -flags PID 查看曾经赋过值的一些参数

jinfo -flag 具体本参数 PID 查看某个java呈的具体参数的值

修改

针对boolean类型 jinfo -flag [+|-]具体参数 PID

针对非boolean类型 jinfo -flag 具参数=具体参数值PID

扩展

java -XX:+PrintFlagslnitial 查看所有JVM参数启动的初始值

java-XX:+PrintFlagsFinal 查看所有JVM参数的最终值

java -XX:+PrintCommandLineFlags 查看那些已经被用户或者JVM设置过的详细的XX参数的名称和值

jmap:导出内存映像文件&内存使用情况

基本语法

-dump

生成java堆转储快照:dump文件

特别的:-dump:live只保存堆中的存活对象

-heap

输出整个堆空间的详细信息,包括GC的使用、堆配置信息,以及内存的使用信息等

-histo

输出堆中对象的统计信息,包括类、实例数量和合计数量

特别的:-histo:live只统计堆中的存活信息

-permstat

以ClassLoader为统计口径输出永久代的内存状态信息

仅linux/solaris平台有效

-finalizerinfo

显示在F-Queue中等待Finalizer线程执行finalize方法的对象

仅linux/solaris平台有效

-F

当虚拟机进程对-dump选项没有任何响应时,可使用此选项强制执行生成dump文件

仅linux/solaris平台有效

-h|help

jmap工具使用的帮助命令

-J

传递参数给jmap启动的jvm

使用1:导出内存映像文件

手动的方式

jmap -dump:format=b,file=

jmap -dump:live,format=b,file=

自动的方式

-XX:+HeapDumpOnOutOfMemoryError

-XX:HeapDumpPath=

使用2:显示堆内存相关信息

jmap -heap pid

jmap -histo pid

使用3:其他作用

jmap -permstat pid 查看系统的ClassLoader信息

jmap -finalizerinfo 查看堆积在finalizer队列中的对象

jhat:JDK自带堆分析工具

option参数

-stack false|true 关闭|打开对象分配调用栈跟踪

-refs flase|true 关闭|打开对象引用跟踪

-port port-number 设置jhat HTTP Server 的端口号,默认7000

-exclude exclude-file 执行对象查询时需要排除的数据成员列表文件

-baseline exclude-file 指定一个基准堆转储

-debug int 设置debug级别

-version 启动后显示版本信息就退出

-j 传入启动参数,比如-J -Xmx512m

jstack:打印JVM中线程快照

option参数

-F 当正常输出的请求不被响应时,强制输出线程堆栈

-l 除堆栈外,显示关于锁的附加信息

-m 如果调用到本地方法的话,可以显示C/C++的堆栈

-h 帮助操作

jcmd:多功能命令行

jcmd -l 列出所有的JVM进程

jcmd pid help 针对指定的进程,列出支持的所有命令

jcmd pid 具体命令 显示指定进程的指令命令的数据

jstatd:远程主机信息的收集
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/735118.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号