文档章节

虚拟机命令监控命令工具

田心双木
 田心双木
发布于 02/12 17:57
字数 1165
阅读 6
收藏 0

jps

列出正在运行的虚拟机进程,命令格式:jps [ options ] [ hostid ]
options 参数说明:

-q

只输出进程 ID

-m

输出传入 main 方法的参数

-l

输出完全的包名,应用主类名,jar的完全路径名

-v

输出jvm启动时参数

jstat

用于监视虚拟机各种运行状态信息,可以显示本地以及远程虚拟机进程中的类装载、内存、垃圾回收、JIT编译等运行数据。命令格式:jstat [ option vmid [interval [s|ms] [count]] ]。
options 参数说明:

-class

监视类装载、卸载数量、总空间及类装载所耗费的时间 

-compiler

输出JIT编译器编译过的方法、耗时等信息

-gc

监视Java堆状况,包括Eden区、2个Survivor区、老年代、永久代等的容量、
已用空间、GC时间合计等信息

-gccapacity   

监视内容与-gc基本相同,但输出主要关注Java堆各个区域使用到的最大和最小空间

-gcnew

显示新生代GC状况

-gcnewcapacity

监视内容与-gcnew基本相同,输出主要关注使用到的最大和最小空间

-gcold

显示老年代GC状况

-gcoldcapacity

监视内容与-gcold基本相同,输出主要关注使用到的最大和最小空间

-gcutil  

监视内容与-gc基本相同,但输出主要关注已使用空间占总空间的百分比 

-gccause

与-gcutil功能一样,但是会额外输出导致上一次GC产生的原因 

-gpermcapacity

输出永久代使用到的最大、最小空间

-printcompilation

输出JIT编译的方法信息

例如:jatst -gc 27121 1000 2,表示监视进程为27121的垃圾收集情况,每一秒一次,一共2次。如下图:

>jatst -gc 27121 1000 2
S0C      S1C      S0U    S1U      EC       EU        OC         OU       MC     MU       CCSC    CCSU     YGC   YGCT    FGC    FGCT     GCT
10240.0  10240.0  0.0   7214.5  81920.0  43781.2   204800.0   22096.5   44796.0 42870.5  6032.0  5620.4    9    0.066   4      0.030    0.096
10240.0  10240.0  0.0   7214.5  81920.0  43781.2   204800.0   22096.5   44796.0 42870.5  6032.0  5620.4    9    0.066   4      0.030    0.096
  • S0C:第一个survivor区的容量
  • S1C:第二个survivor区的容量
  • S0U :第一个survivor区目前已使用空间 
  • S1U :第二个survivor区目前已使用空间
  • EC :Eden区的容量
  • EU :Eden区目前已使用空间 
  • OC :Old代的容量
  • OU :Old代目前已使用空间
  • MC:metaspace(元空间)的容量
  • MU:metaspace(元空间)目前已使用空间
  • YGC :从应用程序启动到采样时年轻代中gc次数
  • YGCT :从应用程序启动到采样时年轻代中gc所用时间(s)
  • FGC :从应用程序启动到采样时old代full gc次数
  • FGCT :从应用程序启动到采样时old代full gc所用时间(s)
  • GCT:从应用程序启动到采样时gc用的总时间(s)

jinfo

用于实时查看和调整虚拟机的各项参数,命令格式:jinfo [ option ] pid。
options 参数说明:

-flag name

输出对应名称的参数

-flag [+|-]name 

 开启或者关闭对应名称的参数

-flag name=value

设定对应名称的参数

-flags

输出全部的参数

-sysprops

输出系统属性

jmap

用于生成堆转储快照以及显示堆信息,命令格式为:jmap [ option ] vmid。
options 参数说明:

-dump

生成Java堆转储快照。格式为:-dump:[live,]format=b,file=<filename>,其中live子参数表示是否只dump出存活对象。

-finalizerinfo 

显示在F-Queue中等待Finalizer线程执行finalize方法的对象。只在Linux/Solaris平台下有效。

-heap

显示Java堆栈信息,如使用哪种回收器、参数配置、分代状况等。只在Linux/Solaris平台下有效。

-histo

显示堆中对象统计信息,包括类、实例数量、合计容量

-permstat

以ClassLoader为统计入口显示永久代的内存状态。只在Linux/Solaris平台下有效。

-F

当虚拟机进程对-dump选项没有响应时,可使用这个选项强制生成dump快照。只在Linux/Solaris平台下有效。

jstack

用于生成当前虚拟机线程快照。命令格式为:jstack [ option ] vmid。
options 参数说明:

-F

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

-l

除线程堆栈外,显示关于锁的附加信息

-m

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

可视化工具

  • JConsole

  • VisualVM

  • Eclipse-Mat-MemoryAnalyzer

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
上一篇: 类文件结构
田心双木
粉丝 30
博文 111
码字总数 80785
作品 0
成都
高级程序员
私信 提问
JVM-监控命令(5)

工具是知识技能的一层包装。在jdk的bin中,除了java.exe,javac.exe,还有很多用于监视和处理的工具,而且这些工具都是基于jdk/lib/tools.jar来实现的。 “采用Java代码来实现这些监控工具是有...

IMerit
2016/11/23
16
0
《深入理解Java虚拟机》——JDK自带命令行工具

给一个系统定位问题的时候,知识、经验是关键基础,数据是依据,工具是运用知识处理数据的手段。这里的数据包括:运行日志、异常堆栈、GC日志、线程快照(threaddump/javacore文件)、堆转储...

戴的天
2014/08/19
0
1
虚拟机学习之三:虚拟机性能监控与故障处理工具

1.JDK的命令行工具 jvm在jdk的bin目录下试下了很多监控分析jvm运行情况的命令行工具,这些工具都很小,大多数都是jdk/lib/tools.jar类库的薄封装。 1.1 jps -> 虚拟机进程状况工具 jps:虚拟...

贾峰uk
2018/12/20
0
0
Linux操作系统资源使用情况监控

本文环境说明 操作系统:虚拟机Redhat6.8,内核版本:2.6.32-642.el6.x86_64。 系统命令之top 直接在命令行输入top命令回车即可对linux系统的CPU等资源进行监控,如下图所示。 load average...

TheBlueLotus
2018/06/26
0
0
第4章 虚拟机性能监控与故障处理工具

JDK的命令行工具大多数是类库的一层薄包装而已,它们主要的功能代码是在tools类库中实现的。假如读者使用的是Linux版本的JDK,还会发现这些工具中很多甚至就是由Shell脚本直接写成的,可以用...

陶邦仁
2015/04/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【结构型】- 享元模式

享元模式 作用:利用共享技术有效地支持大量细粒度对象的复用 享元模式状态 内部状态:在享元对象内部不随外界环境改变而改变的共享部分,存储于享元对象内部 外部状态:随着环境的改变而改变...

ZeroneLove
昨天
1
0
Vue 中使用UEditor富文本编辑器-亲测可用-vue-ueditor-wrap

一、Vue中在使用Vue CLI开发中默认没法使用UEditor 其中UEditor中也存在不少错误,再引用过程中。 但是UEditor相对还是比较好用的一个富文本编辑器。 vue-ueditor-wrap说明 Vue + UEditor + ...

tianma3798
昨天
4
0
php-fpm配置

php-fpm配置 修改bbs.wangzb.cc.conf配置文件,将端口9000改为9001,重新访问网站是失败的 修改配置文件 # vim /etc/nginx/conf.d/bbs.wangzb.cc.conf# nginx -s reloadfastcgi_pass 1...

wzb88
昨天
1
0
配置方案:Redis持久化RDB和AOF

Redis持久化方案 Redis是内存数据库,数据都是存储在内存中,为了避免进程退出导致数据的永久丢失,需要定期将Redis中的数据以某种形式(数据或命令)从内存保存到硬盘。当下次Redis重启时,...

linuxprobe16
昨天
6
0
介绍NoSQL最受欢迎的产品

MongoDB MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。主要解决的是海量数据的访问效率问题,为WEB应用提供可扩展的高性能数据存储解决方案。当数据量达到50GB以上的时候,Mon...

问题终结者
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部