Java 程序性能分析:开篇之 jps
一、前言
开发 Java 项目过程中,难免会碰到一些 性能 问题,这时候就需要一些工具,帮忙排查
本文开篇主要介绍 JDK 自带的工具 jps,获取 Java 程序列表,以 openjdk 11.0.10 为例
二、Java 程序列表:jps
1. 简介
用来查找当前用户的 Java 进程,而不能查找当前系统中其他用户的进程
相比
Linux系统
的 ps -ef | grep java,Windows系统
的 tasklist | findstr java,jps
查找 Java 进程命令更简洁列表里面会多一个 Jps 的进程,每次进程号都不一样
2. jps:输出 进程号、应用主类名
不包含包名,有些类名不容易分辨是哪个服务的进程,如下第 3 个 Launcher
3. jps -l:多输出 包名
输出包名,能帮助分辨 是哪个服务的进程,如下第 3 个是 IDEA 开发工具的 Launcher
4. jps -m:多输出 jar 路径
相比 jps,多输出 jar 路径
5. jps -v:多输出 启动参数
相比 jps,多输出 启动参数
6. jps -V:输出 flag 文件的 JVM 参数
输出通过 flag 文件传递到 JVM 中的参数(很少用到)
.hotspotrc 文件或 - XX:Flags = 所指定的文件。没有配置时,效果和 jps 一样
7. jps -q:只输出 进程号
只输出 进程号,比较适用于 docker、k8s 容器等 只有 1 个 Java 进程的场景
但是还有一个 jps 进程号干扰,并且只有进程号,不好区分哪个是 jps 进程
三、总结
相比
Linux系统
的 ps -ef | grep java,Windows系统
的 tasklist | findstr java,jps
查找 Java 进程命令更简洁后面将继续介绍 JDK 自带、第三方的 性能分析工具,敬请期待哦
本文遵守【CC BY-NC】协议,转载请保留原文出处及本版权声明,否则将追究法律责任。
本文首先发布于 https://www.890808.xyz/ ,其他平台需要审核更新慢一些。
版权声明: 本文为 InfoQ 作者【javalover123】的原创文章。
原文链接:【http://xie.infoq.cn/article/c7756979dc36e616a1a8f4e95】。
本文遵守【CC BY-NC】协议,转载请保留原文出处及本版权声明。
评论