Jvm --- 常用工具

jps:虚拟机进程状况工具

JVM Process Status Tool。

可以列出所有目前正在运行虚拟机的进程。

jps -l

详细参数:

  • -q 输出LVMID,省略主类名称
  • -m 输出虚拟机进程启动时传递给Main函数的参数
  • -l 输出主类的全名,如果进程执行的是jar包,输出jar路径
  • -v 输出虚拟机进程启动时 JVM的参数

jstat:虚拟机统计信息监视工具

JVM statistics Monitoring Tool

jstat是用来监视虚拟机各种运行状态信息的命令工具。使用的格式是:

jstat [ option vmid [ interval [ s | ms ] [ count ] ] ]

参数interval和count代表查询的时间间隔查询次数

注:对于这个vmid在本地是一致的,如果在远程主机上面,这个格式应该是:

[ protocol: ] [ // ] lvmid [ @hostname ] [ : port ] /servername

jinfo:Java配置信息

Configurations Info for Java

jinfo [ options ] pid

jinfo的作用是实时地查看和调整虚拟机的各项参数。

jmap: Java内存映像工具

Memory Map for Java

jmap可以生成堆转储快照(一般是headump或dump文件),查询finallize执行队列、Java堆和永久代的详细信息,比如空间使用率、当前使用哪种收集器等等。

jmap [ options ] vmid

主要参数:

  • -dump 生成Java堆转储快照。
  • -heap 显示Java堆的详细信息,比如使用了哪种回收器,参数配置,分代状况等等。
  • -histo 显示堆中对象的统计信息。
  • -permstat 以ClassLoader为统计口径显示永久代内存状态。
  • -F 强制生成dump快照

jstack:Java堆栈跟踪工具

Stack Track for Java

该命令用于生成虚拟机当前时刻的线程快照。线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合。

命令格式:

jstack [ options ] vmid

选项:

  • -F 当正常输出的请求不被响应时,强制线程堆栈
  • -l 除了堆栈外,显示关于锁的附加信息
  • -m 如果调用到本地方法的话,会显示C/C++的堆栈
posted @   whthomas  阅读(386)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示