• 深入理解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)对系统进。
    行信息收集和参数动态调整。

  • 相关阅读:
    获取split分割的最后一个值
    django分页查询
    django中iframe请求报错的问题
    pandas.Series
    NumPy 切片和索引
    继承
    NumPy 从数值范围创建数组
    迭代器iter用法
    numpy.asarray
    NumPy 创建数组
  • 原文地址:https://www.cnblogs.com/lippon/p/14117687.html
Copyright © 2020-2023  润新知