zoukankan      html  css  js  c++  java
  • 深入理解Java虚拟机(五)——JDK故障处理工具

    进程状况工具:jps

    jps(JVM Process Status Tool)

    作用

    • 用于虚拟机中正在运行的所有进程。
    • 显示虚拟机执行的主类名称以及这些进程的本地虚拟机唯一ID。
    • 可以通过RMI协议查询开启了RMI服务的远程虚拟机进程状态,参数hostid为RMI注册表中注册的主机名

    特点

    使用频率最高的命令工具,需要通过它来查询进程的ID,从而进行下一步监控。

    统计信息监视工具:jstat

    jstat(JVM Statistics Monitoring Tool)

    作用

    • 用于监视虚拟机各种运行状态信息,可以显式本地或远程虚拟机进程中的类加载、内存、垃圾收集、即时编译等运行时数据。
    • 可以显示堆内各个分区的使用率。

    Java配置信息工具:jinfo

    jinfo(Configuration Info for Java)

    作用

    • 实时查看和调整虚拟机各项参数。
    • 如果想知道未被显式指定的参数的系统默认值,可以通过jinfo的-flag查询。
    • 如果想把虚拟机进程的System.getProperties()的内容打印出来,可以通过-sysprops。
    • 具有运行期修改部分参数值的能力。

    Java内存映像工具:jmap

    jmap(Memory Map for Java)

    作用

    • 用于生成堆转储快照。
    • 还可以查询finalize执行队列、Java堆和方法区的详细信息。

    堆转储快照分析工具:jhat

    jhat(JVM Heap Analysis Tool)

    作用

    • 与jmap搭配使用,用于分析jmap生成的堆转储快照。
    • 内置web服务器,可以用过浏览器查看结果。

    特点

    一般人不会直接使用jhat来分析快照文件,主要原因:

    • 不会在部署应用程序的服务器上进行直接分析快照,因为这样会浪费本地的计算资源。
    • 该命令分析功能简陋,有其他更全面的工具。

    Java堆栈跟踪工具:jstack

    jstack(Stack Trace for Java)

    作用

    • 用于生成虚拟机当前时刻的线程快照,线程快照就是当前运行的每一条线程执行方法的堆栈集合。
    • 可以用于定位线程出现长时间停顿的原因。

    Java监视与管理控制台:JConsole

    JConsole(Java Monitoring and Management Console)是一款基于JMX(Java Manage-ment Extensions)的可视化监视、管理工具。它的主要功能是通过JMX的MBean(Managed Bean)对系统进。
    行信息收集和参数动态调整。

  • 相关阅读:
    SuiteScript > Script Queue Monitor (Beta)
    Mac > MacBook Pro的移动硬盘方案
    财务报表 > 现金流表的直接法,间接法,Cash Flow from Operating Activites
    税收基础知识 > 三税(营业税, 增值税, 所得税) + 关税
    Netsuite > Hierarchy of transactions in Inventory cost calculation
    Javascript > Eclipse > problems encountered during text search
    Javascript > Eclipse > 自动代码规范化
    嵌入式Linux > 简易安装思路,步骤记录
    Netsuite > Employee Record Name维护规则
    POSTMAN as debugger for integration APPs
  • 原文地址:https://www.cnblogs.com/lippon/p/14117687.html
Copyright © 2011-2022 走看看