jstack jstat 简易使用教程

jstack – 用来查看堆栈信息

jstat – 用来查看JVM相关信息

jstack用法

  1. 找到CPU使用最高的进程; top命令,然后按P,CPU使用率排序,就可以看到对应的pid
  2. 先说一种暴力的方法,直接jstack [pid] 就可以直接查看堆栈信息,使用jstack [pid] > test.txt将内容写入到文件中方便查询;
  3. 通过pid找到,CPU使用率最高的线程 top -Hp [pid]
  4. 找到线程id后,转为16进制 printf "%x\n" [id]
  5. 然后jstack [pid] | grep [id],可以查看最高CPU使用的线程

jstat用法

语法结构: Usage: jstat -help|-options        jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]  参数解释: Options — 选项,我们一般使用 -gcutil 查看gc情况 vmid    — VM的进程号,即当前运行的java进程号 interval– 间隔时间,单位为秒或者毫秒 count   — 打印次数,如果缺省则打印无数次    S0  — Heap上的 Survivor space 0 区已使用空间的百分比 S1  — Heap上的 Survivor space 1 区已使用空间的百分比 E   — Heap上的 Eden space 区已使用空间的百分比 O   — Heap上的 Old space 区已使用空间的百分比 P   — Perm space 区已使用空间的百分比 YGC — 从应用程序启动到采样时发生 Young GC 的次数 YGCT– 从应用程序启动到采样时 Young GC 所用的时间(单位秒) FGC — 从应用程序启动到采样时发生 Full GC 的次数 FGCT– 从应用程序启动到采样时 Full GC 所用的时间(单位秒) GCT — 从应用程序启动到采样时用于垃圾回收的总时间(单位秒)

实例

jstat -gc [pid] 1000

-gcutil 关注gc的情况

1000 1000ms刷新一次

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 反射类的main方法

    有时候我们需要调用一个类的Main方法,也可说是执行这个类的代码。但是这时候这个类我们还没有写好,或者这个类是通过网络运行时传给我们的,我们就不可能在程序中知道...

    MonroeCode
  • java5的静态导入和自动装箱拆箱

    静态导入:导入某个类的静态成员(属性和方法) 语法:import static 可以简化编程,但是可读性较差,所以使用较少,仅作为了解。 自动装箱:将原始...

    MonroeCode
  • 使用beanUtils操纵javabean

    package com.lan.beanutils; import java.lang.reflect.InvocationTargetExcepti...

    MonroeCode
  • Objective-C中的Block回调模式

            在前面的博客中提到了Block的概念和使用方法,个人感觉Block最爽的用法莫过于在回调时用block。感觉比委托回调和目标方法回调用着要顺手,...

    lizelu
  • Java 可变参数

    Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。注意:可变参数必须位于最后一项。当可变参数个数多余一...

    MonroeCode
  • JavaBean与内省操作

    JavaBean是一种特殊的Java类,主要用于传递数据信息,这种Java类中的方法主要用于访问私有的字段,且方法名符合某种命名规则。

    MonroeCode
  • JavaEE开发之Spring中的条件注解、组合注解与元注解

    上篇博客我们详细的聊了《JavaEE开发之Spring中的多线程编程以及任务定时器详解》,本篇博客我们就来聊聊条件注解@Conditional以及组合条件。条件...

    lizelu
  • Java编程之委托代理回调、内部类以及匿名内部类回调(闭包回调)

    最近一直在看Java的相关东西,因为我们在iOS开发是,无论是Objective-C还是Swift中,经常会用到委托代理回调,以及Block回调或者说是闭包回调...

    lizelu
  • Java编程之反射中的注解详解

    “注解”这个词,可谓是在Java编程中出镜率比较高,而且也是一个老生常谈的话题。我们之前在聊Spring相关的东西时,注解是无处不在,之前我们简单的聊过一些“注...

    lizelu
  • JavaEE开发之Spring中的多线程编程以及任务定时器详解

    上篇博客我们详细的聊了Spring中的事件的发送和监听,也就是常说的广播或者通知一类的东西,详情请移步于《JavaEE开发之Spring中的事件发送与监听以及使...

    lizelu

扫码关注云+社区

领取腾讯云代金券