JVM--監控和故障處理工具

一、命令行工具

1. jps (Java Process Status)

作用:列出當前系統中所有的 Java 進程
常用命令

jps -l  # 顯示進程ID和主類全名
jps -v  # 顯示JVM啟動參數

輸出示例

1234 com.example.MainApp
5678 org.apache.catalina.startup.Bootstrap

2. jstat (JVM Statistics Monitoring Tool)

作用:實時監控 JVM 運行狀態(GC、類加載、JIT編譯等)
核心功能

???jstat -gcutil <pid> 1000 5 # 每1秒打印1次GC統計,共5次

關鍵指標

  • S0/S1:Survivor 區使用率

  • E:Eden 區使用率

  • O:Old 區使用率

  • YGC/YGCT:Young GC 次數/耗時

  • FGC/FGCT:Full GC 次數/耗時


3. jinfo (Configuration Info for Java)

作用:查看和動態修改 JVM 參數
常用命令

jinfo -flags <pid>       # 查看所有JVM參數
jinfo -flag MaxHeapSize <pid>  # 查看特定參數
jinfo -flag +PrintGC <pid>    # 動態啟用PrintGC

4. jmap (Memory Map for Java)

作用:生成堆內存快照和內存統計
核心功能

典型場景:內存泄漏分析、對象分布統計


5. jhat (JVM Heap Analysis Tool)

作用:分析 jmap 生成的堆轉儲文件
使用流程

  1. 生成堆轉儲:jmap -dump:file=heap.bin <pid>

  2. 啟動分析服務:jhat heap.bin

  3. 瀏覽器訪問:http://localhost:7000/
    功能:對象查詢、引用鏈分析、內存泄漏檢測


6. jstack (Stack Trace for Java)

作用:生成線程快照(thread dump)
關鍵命令

jstack -l <pid> > thread.txt  # 生成線程快照并保存

診斷場景

  • 死鎖檢測(查找deadlock關鍵詞)

  • 線程阻塞分析

  • CPU 飆高問題定位

二、圖形化監控工具

???jvisualvm.exe JDK 自帶的圖形化監控診斷工具與你jps/jstack/jmap 等屬于同一套工具鏈,但提供可視化操作界面。以下是關鍵解析:

一、典型使用場景

1. 快速定位內存泄漏
  • 步驟:

    1. 在進程列表中選擇應用

    2. 點擊 “堆 Dump” 生成快照

    3. 分析 “類” 標簽頁 → 按實例數/大小排序 → 定位可疑對象

2. 診斷 CPU 飆高
  • 步驟:

    1. 打開 “抽樣器” → 點擊 CPU 按鈕

    2. 查看 “熱點方法” 排名

    3. 結合 線程快照 分析阻塞棧

3. 分析死鎖
  • 步驟:

    1. 打開 “線程” 標簽頁

    2. 點擊 “檢測死鎖” → 自動標記死鎖線程


二、與命令行工具對比

需求推薦工具原因
快速檢查進程狀態jps一條命令即完成
腳本自動化監控jstat適合集成到運維系統
深度分析內存泄漏jvisualvm可視化引用鏈,效率提升 10 倍+
生產環境緊急診斷jcmd + jstack輕量級,避免圖形界面資源消耗
長期性能趨勢分析jvisualvm支持保存快照對比歷史數據

三、注意事項

  1. 版本兼容性

    • JDK 8 及之前:內置 jvisualvm

    • JDK 9+:需單獨下載(從 JDK 分離為獨立項目)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/913980.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/913980.shtml
英文地址,請注明出處:http://en.pswp.cn/news/913980.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

推薦 7 個本周 yyds 的 GitHub 項目。

01.開源的 CRM 軟件這是一個開源的客戶關系管理&#xff08;CRM&#xff09;系統&#xff0c;現在又 32.5K 的 Star。為企業和團隊提供比肩 Salesforce 等商業產品的功能&#xff0c;同時強調用戶自主權、數據自由與高度可定制性。開源地址&#xff1a;https://github.com/twen…

linux網絡編程之單reactor模型(一)

Reactor 是一種事件驅動的設計模式&#xff08;Event-Driven Pattern&#xff09;&#xff0c;主要用于處理高并發 I/O&#xff0c;特別適合網絡服務器場景。它通過一個多路復用機制監聽多個事件源&#xff08;如 socket 文件描述符&#xff09;&#xff0c;并在事件就緒時將事…

瀏覽器重繪與重排

深入解析瀏覽器渲染&#xff1a;重排(Reflow)與重繪(Repaint)的性能陷阱與優化策略作為一名前端開發者&#xff0c;你是否遇到過界面突然卡頓、滾動時頁面抖動或輸入框響應遲鈍&#xff1f;這些常見性能問題背后&#xff0c;往往是重排與重繪在作祟。本文將深入剖析瀏覽器渲染機…

day049-初識Ansible與常用模塊

文章目錄0. 老男孩思想-人脈的本質1. Ansible1.1 密鑰認證1.2 安裝ansible1.3 添加ansible配置文件1.4 配置主機清單文件&#xff08;Inventory&#xff09;1.5 測試1.6 ansible的模塊思想1.7 command模塊1.8 需求&#xff1a;每臺服務器的密碼都不同&#xff0c;怎么批量執行業…

力扣網編程134題:加油站(雙指針)

一. 簡介 前面兩篇文章使用暴力解法&#xff0c;或者貪心算法解決了力扣網的加油站問題&#xff0c;文章如下&#xff1a; 力扣網編程150題&#xff1a;加油站&#xff08;暴力解法&#xff09;-CSDN博客 力扣網編程150題&#xff1a;加油站&#xff08;貪心解法&#xff09…

XPath 語法【Web 自動化-定位方法】

&#x1f9ed; XPath 語法簡介&#xff08;Web 自動化核心定位手段&#xff09;一、XPath 是什么&#xff1f;XPath&#xff08;XML Path Language&#xff09;是用于在 XML/HTML 文檔中定位節點的語言&#xff0c;由 W3C 標準定義。瀏覽器支持的是 XPath 1.0。應用場景廣泛&am…

記一次 Linux 安裝 docker-compose

一.下載 1.手動下載 下載地址&#xff1a;https://github.com/docker/compose/releases 下載后&#xff0c;放在/usr/local/bin/目錄下&#xff0c;命名為&#xff1a;docker-compose 2.命令下載 sudo curl -L "https://github.com/docker/compose/releases/download/…

Go語言WebSocket編程:從零打造實時通信利器

1. WebSocket的魅力&#xff1a;為什么它這么火&#xff1f;WebSocket&#xff0c;簡單來說&#xff0c;就是一種在單條TCP連接上實現全雙工通信的神器。相比HTTP的請求-響應模式&#xff0c;它像是一條隨時暢通的電話線&#xff0c;客戶端和服務器可以隨時“喊話”&#xff0c…

速學 RocketMQ

目錄 本地啟動&測試&可視化 核心概念 集群 主從 集群 Dledger 集群 總結 客戶端消息確認機制 廣播模式 消息過濾機制 順序消息機制 延遲消息與批量消息 事務消息機制 ACL權限控制體系 RocketMQ客戶端注意事項 消息的 ID、Key、Tag 最佳實踐 消費者端…

【個人思考】不點菜的美學:Omakase 的信任、四季與食藝

本文原創作者:姚瑞南 AI-agent 大模型運營專家/音樂人/野生穿搭model,先后任職于美團、獵聘等中大廠AI訓練專家和智能運營專家崗;多年人工智能行業智能產品運營及大模型落地經驗,擁有AI外呼方向國家專利與PMP項目管理證書。(轉載需經授權) 目錄 ?? 什么是 Omakase?…

vivo Pulsar 萬億級消息處理實踐(3)-KoP指標異常修復

作者&#xff1a;vivo 互聯網大數據團隊- Chen Jianbo 本文是《vivo Pulsar萬億級消息處理實踐》系列文章第3篇。 Pulsar是Apache基金會的開源分布式流處理平臺和消息中間件&#xff0c;它實現了Kafka的協議&#xff0c;可以讓使用Kafka API的應用直接遷移至Pulsar&#xff0c;…

Marin說PCB之Allegro高亮BOM器件技巧詳解

一&#xff0c;首先在原理圖輸出BOM的時候&#xff0c;只需要勾選器件的位號這個選項即可&#xff0c;具體操作如下所示&#xff1a;二&#xff0c;輸出BOM完成后&#xff0c;打開表格選擇我們器件的位號那列即可&#xff0c;然后復制到我們的TEXT文本中。三&#xff0c;接著就…

數據結構與算法——從遞歸入手一維動態規劃【2】

前言&#xff1a; 記錄一下對左程云系列算法課程--算法講解066【必備】的剩余習題的學習。本文主要簡單記錄個人學習心得和提供C版本代碼。如需要題目的細致講解&#xff0c;請前往原視頻。 涉及內容&#xff1a; 動態規劃、三指針、 參考視頻&#xff1a; 左程云--算法講…

【理念●體系】Windows AI 開發環境搭建實錄:六層架構的逐步實現與路徑治理指南

【理念●體系】從零打造 Windows WSL Docker Anaconda PyCharm 的 AI 全鏈路開發體系-CSDN博客 Windows AI 開發環境搭建實錄&#xff1a;六層架構的逐步實現與路徑治理指南 ——理念落地篇&#xff0c;從路徑規劃到系統治理&#xff0c;打造結構化可復現的 AI 開發環境 AI…

5G標準學習筆記15 --CSI-RS測量

5G標準學習筆記15 --CSI-RS測量 前言 前面講了&#xff0c;在5GNR中&#xff0c;CSI-RS 是支持信道狀態評估、波束管理和無線資源管理&#xff08;RRM&#xff09;的關鍵參考信號。下面孬孬基于3GPP TS 38.331中的內容&#xff0c;詳細定義了基于 CSI-RS 的測量程序&#xff0c…

第P28:阿爾茨海默病診斷(優化特征選擇版)

&#x1f368; 本文為&#x1f517;365天深度學習訓練營 中的學習記錄博客&#x1f356; 原作者&#xff1a;K同學啊 一、進階說明 針對于特征對模型結果的影響我們做了特征分析 特征選擇 1. SelectFromModel 工作原理&#xff1a;基于模型的特征選擇方法&#xff0c;使用…

AI的歐幾里得要素時刻:從語言模型到可計算思維

引言 人工智能正在經歷一個關鍵的轉折點。就像歐幾里得的《幾何原本》為數學奠定了公理化基礎一樣&#xff0c;AI也正在尋找自己的"要素時刻"——一個能夠將當前的語言模型能力轉化為真正可計算、可驗證思考的轉變。 最近發表的論文《AI’s Euclid’s Elements Momen…

番外-linux系統運行.net framework 4.0的項目

基礎環境&#xff1a;linux系統&#xff0c;.net framework 4.0&#xff0c;npgsql 2.2.5.0 &#xff08;版本不同&#xff0c;構建可能失敗&#xff09; 方法背景&#xff1a;linux不支持運行.net framework 4.0&#xff0c;高版本mono不支持npgsql 2.x 主要使用&#xff1a…

國內AI訓練都有哪些企業?:技術深耕與場景實踐

國內AI訓練都有哪些企業&#xff1f;當人工智能從實驗室走向產業一線&#xff0c;AI 訓練就像為智能系統 “施肥澆水” 的關鍵環節&#xff0c;讓技術根系在各行業土壤里扎得更深。國內一批 AI 訓練企業正各展所長&#xff0c;有的專攻技術優化&#xff0c;有的深耕場景應用。它…

微算法科技基于格密碼的量子加密技術,融入LSQb算法的信息隱藏與傳輸過程中,實現抗量子攻擊策略強化

隨著量子計算技術的發展&#xff0c;傳統加密算法面臨被量子計算機破解的風險&#xff0c;LSQb 算法也需考慮應對未來可能的量子攻擊。微算法科技基于格密碼的量子加密技術&#xff0c;融入LSQb算法的信息隱藏與傳輸過程中&#xff0c;實現抗量子攻擊策略強化。格密碼在面對量子…