Linux中國

用 jconsole 在 Linux 上監控你的 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 與本地進程的新連接屏幕](/data/attachment/album/202110/08/131136m8wqj69qkwk90rzj.png "new connection")

概述

這個 Java 監控和管理控制台在儀錶板的頂部顯示進程標識符(PID)。「 概述 Overview 」標籤有四個圖表,顯示「 堆內存使用情況 Heap Memory Usage 」、「 線程 Threads 」、「 Classes 」和「 CPU 使用情況 CPU Usage 」的重要信息。

![jconsole 儀錶板顯示堆內存使用量、線程、類和 CPU 使用量](/data/attachment/album/202110/08/131137qk2lkqddkvdlv8r8.png "tab overview")

沿著頂部的標籤提供每個區域的更詳細的視圖。

內存

內存 Memory 」標籤顯示 JVM 所使用的內存的各個方面的圖表。分配給 JVM 的伺服器系統內存量被稱為「 Heap 」。這個屏幕還提供了關於堆的內部組件使用情況的詳細信息,例如 「 伊甸園 Eden Space 」、「 老年代 Old Gen 」 和 「 倖存者區 Survivor Space 」。你也可以手動請求一個垃圾收集動作。

![jconsole 內存標籤](/data/attachment/album/202110/08/131137tzd4ynzxg39xgggn.png "memory tab")

線程

線程 Threads 」標籤顯示有多少線程在運行。你也可以手動檢查是否存在死鎖。

![jconsole 線程儀錶板顯示了隨時間變化的線程數量和滾動的線程列表](/data/attachment/album/202110/08/131137mw40o0jozz4meomo.png "threads tab")

Classes 」標籤告訴你有多少類被載入,有多少被卸載。

![jconsole 類標籤顯示隨著時間推移載入的類數量](/data/attachment/album/202110/08/131138i00nh2mbuyaghuze.png "classes tab")

虛擬機摘要

虛擬機摘要 VM Summary 」標籤提供了許多關於應用程序和主機系統的細節。你可以了解你所處的操作系統和架構、系統內存總量、CPU 數量,甚至交換空間。

![jconsole 虛擬機摘要標籤](/data/attachment/album/202110/08/131138q3slr1secu5slbjt.png "VMsummary tab ")

摘要中顯示的關於 JVM 的進一步細節,包括當前和最大的堆大小以及正在使用的垃圾收集器的信息。底部的窗格列出了傳遞給 JVM 的所有參數。

MBeans

最後一個標籤,MBeans,讓你通過所有的 MBeans 向下鑽取,以查看每個 MBeans 的屬性和值。

![MBeans 標籤](/data/attachment/album/202110/08/131138qwtfriqlutiitn5u.png "MBeans tab")

總結

Java 已經存在了很長時間,它將繼續為全球數百萬的系統提供動力。有很多開發環境和監控系統可以使用,但像 jconsole 這樣的包含在基本工具包中的工具非常有價值。

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

作者:Alan Formy-Duval 選題:lujun9972 譯者:wxy 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國