用 jconsole 在 Linux 上监控你的 Java

发表于:2021-10-09 09:23

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Alan Formy-duval    来源:Linux中国

#
Java
分享:
  如何使用 Java 开发工具包中的 Java 监控和管理控制台。
  Java 开发工具包(JDK)提供了开发 Java 应用程序的二进制文件、工具和编译器。其中一个有用的工具是 jconsole。
  为了演示,我将使用 WildFly J2EE 应用服务器,它是 JBOSS 开源应用服务器项目的一部分。首先,我启动了一个独立的实例。
  ~/wildfly/24.0.1/bin$ ./standalone.sh
  =========================================================================
    JBoss Bootstrap Environment
    JBOSS_HOME: /home/alan/wildfly/24.0.1
    JAVA: /usr/lib/jvm/java-11-openjdk-11.0.11.0.9-5.fc34.x86_64/bin/java
  现在,在另一个终端,输入 jconsole。
  $ jconsole
  启动后,jconsole 会列出本地实例。选择“本地进程Local Process”,然后选择进程的名称并点击“连接Connect”。这就是连接并开始使用运行中的 Java 虚拟机(JVM)的 jconsole 的全部过程。
jconsole 与本地进程的新连接屏幕
  概述
  这个 Java 监控和管理控制台在仪表板的顶部显示进程标识符(PID)。“概述Overview”标签有四个图表,显示“堆内存使用情况Heap Memory Usage”、“线程Threads”、“类Classes”和“CPU 使用情况CPU Usage”的重要信息。
jconsole 仪表板显示堆内存使用量、线程、类和 CPU 使用量
  沿着顶部的标签提供每个区域的更详细的视图。
  内存
  “内存Memory”标签显示 JVM 所使用的内存的各个方面的图表。分配给 JVM 的服务器系统内存量被称为“堆Heap”。这个屏幕还提供了关于堆的内部组件使用情况的详细信息,例如 “伊甸园Eden Space”、“老年代Old Gen” 和 “幸存者区Survivor Space”。你也可以手动请求一个垃圾收集动作。
jconsole 内存标签
  线程
  “线程Threads”标签显示有多少线程在运行。你也可以手动检查是否存在死锁。
jconsole 线程仪表板显示了随时间变化的线程数量和滚动的线程列表
  
  “类Classes”标签告诉你有多少类被加载,有多少被卸载。
jconsole 类标签显示随着时间推移加载的类数量
  虚拟机摘要
  “虚拟机摘要VM Summary”标签提供了许多关于应用程序和主机系统的细节。你可以了解你所处的操作系统和架构、系统内存总量、CPU 数量,甚至交换空间。
jconsole 虚拟机摘要标签
  摘要中显示的关于 JVM 的进一步细节,包括当前和最大的堆大小以及正在使用的垃圾收集器的信息。底部的窗格列出了传递给 JVM 的所有参数。
  MBeans
  最后一个标签,MBeans,让你通过所有的 MBeans 向下钻取,以查看每个 MBeans 的属性和值。
  总结
  Java 已经存在了很长时间,它将继续为全球数百万的系统提供动力。有很多开发环境和监控系统可以使用,但像 jconsole 这样的包含在基本工具包中的工具非常有价值。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号