前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JVM之常用监控工具

JVM之常用监控工具

作者头像
九转成圣
发布2024-04-10 17:17:23
500
发布2024-04-10 17:17:23
举报
文章被收录于专栏:csdncsdn

JVM之常用监控工具

jps

jinfo 获取配置信息

基本语法

代码语言:javascript
复制
jinfo [options] <pid>

常用选项

  • -sysprops:显示JVM进程的系统属性。
  • -flags:显示用于启动JVM的命令行标志和VM选项。
  • -flag <name>:显示指定JVM标志的当前值。
  • -flag [+|-]<name>:启用或禁用指定的JVM标志。
  • -flag <name>=<value>:设置指定JVM标志的值。
  • -h:打印帮助消息,列出可用选项的列表。

常用示例

  1. 获取正在运行的JVM的系统属性:
代码语言:javascript
复制
jinfo -sysprops 608
....  
  1. 获取用于启动JVM的命令行标志和VM选项:
代码语言:javascript
复制
[root@VM-16-3-centos ~]# jinfo -flags 608
Attaching to process ID 608, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.231-b11
Non-default VM flags: -XX:CICompilerCount=2 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=null -XX:InitialHeapSize=134217728 -XX:MaxHeapSize=134217728 -XX:MaxNewSize=67108864 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=67108864 -XX:OldSize=67108864 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParallelGC 
Command line:  -Xms128m -Xmx128m -Xmn64m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/root/javaapp/dbddump.bin

jstat 统计信息

基本语法

代码语言:javascript
复制
jstat [optionList] <vmid> [interval] [count]

常用选项

  • -gc:显示与垃圾回收相关的统计信息。
  • -class:显示与类加载相关的统计信息。
  • -compiler:显示与JIT编译器相关的统计信息。
  • -gcutil:显示与垃圾回收相关的统计信息(以百分比形式)。
  • -gcnew:显示新生代垃圾回收相关的统计信息。
  • -gcold:显示老年代垃圾回收相关的统计信息。
  • -gcpermcapacity:显示永久代容量相关的统计信息。

请注意,jstat命令提供了更多选项和功能,您可以使用jstat -options命令查看完整的选项列表和描述。

常用示例

代码语言:javascript
复制
jstat -gc 608 1000 3

jmap堆内存详细信息

基本语法

代码语言:javascript
复制
jmap [optionList] <pid>

常用选项

  • -heap:显示堆内存使用情况,包括堆大小、已使用空间、各代区域大小等。
  • -histo:显示堆内存中各个类的实例数量和占用空间。
  • -dump:<dumpOptions>:导出堆转储文件(heap dump),可以进行后续的内存分析。
  • -finalizerinfo:显示等待执行 finalizer 方法的对象信息。
  • -clstats:显示类加载器的统计信息。
  • -F:在无法通过正常方式导出堆转储文件时,强制进行转储。

常用示例

显示堆的使用情况
代码语言:javascript
复制
[root@VM-16-3-centos ~]# jmap -heap 608
Attaching to process ID 608, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.231-b11

using thread-local object allocation.
Parallel GC with 2 thread(s)

Heap Configuration:
   MinHeapFreeRatio         = 0
   MaxHeapFreeRatio         = 100
   MaxHeapSize              = 134217728 (128.0MB)
   NewSize                  = 67108864 (64.0MB)
   MaxNewSize               = 67108864 (64.0MB)
   OldSize                  = 67108864 (64.0MB)
   NewRatio                 = 2
   SurvivorRatio            = 8
   MetaspaceSize            = 21807104 (20.796875MB)
   CompressedClassSpaceSize = 1073741824 (1024.0MB)
   MaxMetaspaceSize         = 17592186044415 MB
   G1HeapRegionSize         = 0 (0.0MB)

Heap Usage:
PS Young Generation
Eden Space:
   capacity = 61865984 (59.0MB)
   used     = 27628008 (26.348121643066406MB)
   free     = 34237976 (32.651878356933594MB)
   44.65783329333289% used
From Space:
   capacity = 2621440 (2.5MB)
   used     = 1397360 (1.3326263427734375MB)
   free     = 1224080 (1.1673736572265625MB)
   53.3050537109375% used
To Space:
   capacity = 2621440 (2.5MB)
   used     = 0 (0.0MB)
   free     = 2621440 (2.5MB)
   0.0% used
PS Old Generation
   capacity = 67108864 (64.0MB)
   used     = 24676544 (23.53338623046875MB)
   free     = 42432320 (40.46661376953125MB)
   36.77091598510742% used

25314 interned Strings occupying 2714424 bytes.
显示堆直方图
代码语言:javascript
复制
jmap -histo:live 608
导出堆转储文件
代码语言:javascript
复制
[root@VM-16-3-centos ~]# jmap -dump:live,format=b,file=/root/dbdheap.bin 608
Dumping heap to /root/dbdheap.bin ...
Heap dump file created
[root@VM-16-3-centos ~]# 

jstack线程堆栈信息

基本语法

代码语言:javascript
复制
jstack [optionList] <pid>

常用选项

  • -l:输出长格式的线程堆栈信息,包括锁的附加信息。
  • -F:在线程不响应时,强制输出线程堆栈信息。
  • -m:输出线程的锁信息。
  • -h:显示帮助信息。

常用示例

jvisualvm可视化vm

作用:分析堆转储文件

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • JVM之常用监控工具
  • jps
  • jinfo 获取配置信息
    • 基本语法
      • 常用选项
      • jstat 统计信息
        • 基本语法
          • 常用选项
            • 常用示例
            • jmap堆内存详细信息
              • 基本语法
                • 常用选项
                  • 常用示例
                    • 显示堆的使用情况
                    • 显示堆直方图
                    • 导出堆转储文件
                • jstack线程堆栈信息
                  • 基本语法
                    • 常用选项
                      • 常用示例
                      • jvisualvm可视化vm
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档