用 jconsole 在 Linux 上监控你的 Java
创始人
2024-03-02 08:40:06
0

如何使用 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 的属性和值。

MBeans 标签

总结

Java 已经存在了很长时间,它将继续为全球数百万的系统提供动力。有很多开发环境和监控系统可以使用,但像 jconsole 这样的包含在基本工具包中的工具非常有价值。


via: https://opensource.com/article/21/10/monitor-java-linux-jconsole

作者:Alan Formy-Duval 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

Edge.js发布:为AI...
Wasmer公司推出了Edge.js,这是一个基于WebAssem...
2026-03-26 01:38:53
AI编程助手飞算JavaA...
钛媒体App 1月27日消息,获中国信通院认证生成完整工程代码的A...
2026-01-27 10:49:28
学java要学linux吗...
嘿,朋友们!今天咱们来聊聊一个很多Java新手都会纠结的问题:学j...
2026-01-22 09:49:54
Java、Python等开...
IT之家 9 月 24 日消息,开源安全基金会(OpenSSF)昨...
2025-09-24 14:25:34
怎么用AI做短视频赚钱?小...
嘿,你是不是也刷到过那些爆火的短视频,心想:“这玩意儿咋这么赚钱?...
2025-06-06 22:12:18
JAVA集合知识整理
Java集合知识整理 HashMap相关 HashMap的底层数据...
2025-06-01 22:12:08

热门资讯

为什么计量 IT 的生产力如此... 在某些行业里,人们可以根据一些测量标准判定一个人的生产力。比如,如果你是一个零件制造商,可以通过一个...
硬核观察 #885 苹果 AR... 苹果 AR 眼镜被无限期推迟据报道,由于技术上的挑战,苹果公司已经无限期推迟了其轻型增强现实(AR)...
8 个提升你的隐私防护的开源密... 使用一些顶级开源密码管理器,确保你的登录凭证安全无虞。密码管理器是一项非常有用的实用程序。在你想寻找...
值得收藏的 27 个机器学习的... 机器学习 ( Machine Learning ) 有很多方面,当我开始研究学习它时,我发现了各种各...
PHP最佳实践(译) 简介PHP是一门复杂的语言,经过多年折腾,使其不同版本之间高度不一致,有时还有些bug。 每个版本都...
8个有趣的Linux提示与技巧... 我们时不时给你带来关于Linux的提示与技巧。和这个系列保持一致,这里有8个我们从读者收到最有趣的提...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...