成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JVM分析工具簡介

IT那活兒 / 2085人閱讀
JVM分析工具簡介

點擊上方“IT那活兒”公眾號,關注后了解更多內容,不管IT什么活兒,干就完了?。?!

前 言

JDK是一個功能非常強大的Java開發(fā)套裝,不僅給我們提供了Java運行環(huán)境,還給開發(fā)人員提供了許多有用的開發(fā)組件(位于bin目錄中,如下圖所示),對于我們運維人員來說,在我們出現(xiàn)一些內存,GC,線程等問題,JVM分析工具能夠很好的幫助我們定位分析問題,我們可以利用jdk自帶的jvm分析工具進行分析,比如jps,jinfo,jvisualvm,jconsole,jstat,jstack,jcmd,jmap等。當然也可以采用很多優(yōu)秀的開源jvm分析工具進行分析,Arthas等。

常見自帶的JVM分析工具


工具

類型

作用

jps

命令行

jvm進程狀態(tài)工具,列出系統(tǒng)上jvm進程的pid

jinfo

命令行

jvm信息查看工具,查看jvm的各種配置信息

jvisualvm

圖形界面

jvm綜合監(jiān)控工具,查看jvm基本信息,堆,棧,轉儲,內存,cpu以及gc等信息

jconsole

圖形界面

jmx兼容的圖形工具,用于監(jiān)控jvm基本情況,查看MBean

jstat

命令行

jvm統(tǒng)計監(jiān)控工具,附件到一個jvm進程上手機和記錄jvm的各種性能指標數(shù)據(jù)

jstack

命令行

jvm棧查看工具,可以查看jvm進程的線程和鎖信息

jcmd

命令行

jvm命令行調試工具,用于向jvm進程發(fā)送調試命令

jmap

命令行

jvm堆內存分析工具,可以查看jvm進程對象直方圖,類加載統(tǒng)計以及做堆轉儲操作


JVM分析工具詳解

1. jps

通過jps查看Java進程列表pid。如圖所示能看到ASMain的pid為2977。

2. Jinfo

通過Java進程對應的pid,使用jinfo查看jvm各種配置信息。比如jdk版本,環(huán)境,路徑,虛擬機名稱,編碼,堆棧等信息。

3. jvisualvm

jvisualvm是一個綜合監(jiān)控工具,查看jvm基本信息,堆,棧,轉儲,內存,cpu以及gc等信息。

打開圖形化界面,找到對應執(zhí)行方法程序可以查看相關資源配置信息。
  • 概述:可以看到堆棧信息以及系統(tǒng)參數(shù)等。

  • 監(jiān)視:CPU(使用情況,垃圾回收情況),內存(堆大小,堆使用大?。?,類(類裝入卸載數(shù)量),線程(活動線程,守護線程數(shù)量)。

  • 線程:當前所有線程執(zhí)行狀態(tài),主要包括開啟了那些線程,線程運行,休眠,等待,駐留,監(jiān)視等信息。

  • 抽樣器:CPU抽樣(CPU樣例與線程CPU時間)與內存抽樣(堆柱狀圖與每個線程分配)。,

  • Profiler:CPU與內存性能分析。

4. jstat

jstat工具以命令行的方式,允許以固定的監(jiān)控頻次輸出 JVM 的各種監(jiān)控指標,比如使用 -gcutil 輸出 GC 和內存占用匯總信息,每隔 5 秒輸出一次,輸出 100 次.

5. jstack

通過命令行工具 jstack,也可以實現(xiàn)抓取線程棧的操作,進行在線分析,一般情況我們會連續(xù)抓取三次,每隔五秒。

6. jmap

jmap jvm自帶命令行工具,可用于了解系統(tǒng)運行時的對象分布。

jmap pid 查看基本信息。

查看堆信息,jmap -heap pid。

jmap -histo pid 查看一些class的使用情況。

jmap -histo:live pid >dump.txt 輸出class信息到dump文件。



本文作者:程 紅(上海新炬王翦團隊)

本文來源:“IT那活兒”公眾號

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/129201.html

相關文章

  • 學習JVM必看書籍

    學習JVM的相關資料 《深入理解Java虛擬機——JVM高級特性與最佳實踐(第2版)》 showImg(https://segmentfault.com/img/bVbsqF5?w=200&h=200); 基于最新JDK1.7,圍繞內存管理、執(zhí)行子系統(tǒng)、程序編譯與優(yōu)化、高效并發(fā)等核心主題對JVM進行全面而深入的分析,深刻揭示JVM的工作原理。以實踐為導向,通過大量與實際生產(chǎn)環(huán)境相結合的案例展示了解...

    shaonbean 評論0 收藏0
  • java8 之 新的Java工具

    簡介 毫無疑問,Java 8是Java自Java 5(發(fā)布于2004年)之后的最重要的版本。這個版本包含語言、編譯器、庫、工具和JVM等方面的十多個新特性。在本文中我們將學習這些新特性,并用實際的例子說明在什么場景下適合使用。 這個教程包含Java開發(fā)者經(jīng)常面對的幾類問題: 語言編譯器庫工具運行時(JVM)新的Java工具 Java 8提供了一些新的命令行工具,這部分會講解一些對開發(fā)者最有用的工具...

    sourcenode 評論0 收藏0
  • Java學習路線總結,搬磚工逆襲Java架構師(全網(wǎng)最強)

    摘要:哪吒社區(qū)技能樹打卡打卡貼函數(shù)式接口簡介領域優(yōu)質創(chuàng)作者哪吒公眾號作者架構師奮斗者掃描主頁左側二維碼,加入群聊,一起學習一起進步歡迎點贊收藏留言前情提要無意間聽到領導們的談話,現(xiàn)在公司的現(xiàn)狀是碼農(nóng)太多,但能獨立帶隊的人太少,簡而言之,不缺干 ? 哪吒社區(qū)Java技能樹打卡?【打卡貼 day2...

    Scorpion 評論0 收藏0
  • 細述 Java垃圾回收機制→Java Garbage Collection Introduction

    摘要:在架構中,堆內存和垃圾回收器這兩個部分和垃圾回收相關。堆內存在的內存模型中,最重要的是要了解堆內存的概念。在垃圾回收的過程中,這些對象將被從堆內存中清除,同時它們的空間也就被回收了。 本文非原創(chuàng),翻譯自Java Garbage Collection introduction在Java中為對象分配和釋放內存空間都是由垃圾回收線程自動執(zhí)行完成的。和C語言不一樣的是Java程序員不需要手動寫...

    codergarden 評論0 收藏0
  • 學Java編程需要注意的地方

    摘要:學編程真的不是一件容易的事不管你多喜歡或是多會編程,在學習和解決問題上總會碰到障礙。熟練掌握核心內容,特別是和多線程初步具備面向對象設計和編程的能力掌握基本的優(yōu)化策略。   學Java編程真的不是一件容易的事,不管你多喜歡或是多會Java編程,在學習和解決問題上總會碰到障礙。工作的時間越久就越能明白這個道理。不過這倒是一個讓人進步的機會,因為你要一直不斷的學習才能很好的解決你面前的難題...

    leanxi 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<