java查询性能_Jdk自带性能查看工具

一、jps命令:查看java进程

无参数,列出所有进程

-q 只列出pid

-m 列出传递给main方法的参数

-l 输出程序main class完整package名, 或jar文件完整路径名

-v 传递给JVM的参数

dec03e3dd8f366bea883d3668ab6d9b1.png

cea393326f2ade6d7c2755daf905cf5b.png

二、jstack命令

作用:打印出给定的java进程ID或core file 或远程调试服务的Java堆栈信息。

1)如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。

2)jstack可以dump下某个java程序,并且查看运行状态和堆栈信息。

-F当’jstack [-l] pid’没有响应的时候强制打印栈信息

-l长列表. 打印关于锁的附加信息,例如属于

java.util.concurrent的ownable synchronizers列表.

-m打印java和native 框架的所有栈信息.

-h | -help打印帮助信息

jstack -F -l pid输出死锁相关信息如下:

死锁状态:No deadlocks found.

线程号:27150

线程状态:BLOCKED,阻塞状态,表示线程由于某些原因被阻塞。

线程的调用栈信息。

线程的当前调用栈。

7417c3e160145d2dfb8c8645be8fc9c3.png

三、jstat命令

详细查看堆内各个部分的使用量,以及加载类的数量,也即对java应用程序的资源和性能进行实时监控,包括历练机会瘦状况和Heap的大小监控等。

jstat -gc pid

查看gc次数

jstat -gccapacity pid

各代所占空间

jstat -gcutil pid

各代空间使用情况

JVM内存结构图

ac68a29fd74606aad7cf9b5495214aea.png

-gcnew -gcnewcapacity 年轻代gc情况,年轻代容量

-gcold -gcoldcapacity -gcpermcapacity -class 显示加载class的数量,及所占空间等信息

-compiler 显示JVM实时编译的数量等信息

-printcompilation 当前JVM执行的信息

四、jmap命令

打印出某个java进程(使用pid)内存内的 所有‘对象’的情况(如:产生那些对象,及 其数量)。可以从core文件或进程中取得内存的具体配置情况,包括Heap Size、Perm Size等。

jmap [ option ] pid

jmap [ option ] executable core

jmap [ option ] [server-id@]remote-hostname-or-IP

五、jinfo命令

jinfo可以输出并修改运行时的java 进程的opts。

用处比较简单,用于输出JAVA系统参数及命令行参数。

九、jdb命令

用来对core文件和正在运行的Java进程进行实时地调试.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值