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

資訊專(zhuān)欄INFORMATION COLUMN

JVM常用命令

IT那活兒 / 484人閱讀
JVM常用命令

點(diǎn)擊上方“IT那活兒”公眾號(hào),關(guān)注后了解更多內(nèi)容,不管IT什么活兒,干就完了?。?! 


  
前置啟動(dòng)程序:
事先啟動(dòng)一個(gè)web應(yīng)用程序,用jps查看其進(jìn)程id,接著用各種jdk自帶命令優(yōu)化。



Jmap

此命令可以用來(lái)查看內(nèi)存信息,實(shí)例個(gè)數(shù)以及占用內(nèi)存大小。
打開(kāi)log.txt,文件內(nèi)容如下:
  • num:序號(hào)
  • instances:實(shí)例數(shù)量
  • bytes:占用空間大小
  • class name:類(lèi)名稱(chēng),[C is a char[],[S is a short[],[I is a int[],[B is a byte[],[[I is a int[][]
堆信息:
堆內(nèi)存dump:

也可以設(shè)置內(nèi)存溢出自動(dòng)導(dǎo)出dump文件(內(nèi)存很大的時(shí)候,可能會(huì)導(dǎo)不出來(lái))

  • -XX:+HeapDumpOnOutOfMemoryError

  • -XX:HeapDumpPath=./ (路徑)

示例代碼
可以用jvisualvm命令工具導(dǎo)入該dump文件分析。


Jstack

用jstack加進(jìn)程id查找死鎖,見(jiàn)如下示例:
  • Thread-1" 線程名
  • prio=5 優(yōu)先級(jí)=5
  • tid=0x000000001fa9e000 線程id
  • nid=0x2d64 線程對(duì)應(yīng)的本地線程標(biāo)識(shí)nid
  • java.lang.Thread.State: BLOCKED 線程狀態(tài)
jstack找出占用cpu最高的線程堆棧信息:
1)使用命令top -p ,顯示你的java進(jìn)程的內(nèi)存情況,pid是你的java進(jìn)程號(hào),比如19663:
2)按H,獲取每個(gè)線程的內(nèi)存情況:
3)找到內(nèi)存和cpu占用最高的線程tid,比如19664。
4)轉(zhuǎn)為十六進(jìn)制得到 0x4cd0,此為線程id的十六進(jìn)制表示。
5)執(zhí)行 jstack 19663|grep -A 10 4cd0,得到線程堆棧信息中 4cd0 這個(gè)線程所在行的后面10行,從堆棧中可以發(fā)現(xiàn)導(dǎo)致cpu飆高的調(diào)用方法。


Jinfo

查看正在運(yùn)行的Java應(yīng)用程序的擴(kuò)展參數(shù)
  • 查看jvm的參數(shù):
  • 查看java系統(tǒng)參數(shù):


Jstat

4.1 jstat -gc pid 最常用,可以評(píng)估程序內(nèi)存使用及GC壓力整體情況。

  • S0C:第一個(gè)幸存區(qū)的大小,單位KB
  • S1C:第二個(gè)幸存區(qū)的大小
  • S0U:第一個(gè)幸存區(qū)的使用大小S1U:第二個(gè)幸存區(qū)的使用大小
  • EC:伊甸園區(qū)的大小
  • EU:伊甸園區(qū)的使用大小
  • OC:老年代大小
  • OU:老年代使用大小
  • MC:方法區(qū)大小(元空間)
  • MU:方法區(qū)使用大小
  • CCSC:壓縮類(lèi)空間大小
  • CCSU:壓縮類(lèi)空間使用大小
  • YGC:年輕代垃圾回收次數(shù)
  • YGCT:年輕代垃圾回收消耗時(shí)間,單位s
  • FGC:老年代垃圾回收次數(shù)
  • FGCT:老年代垃圾回收消耗時(shí)間,單位s
  • GCT:垃圾回收消耗總時(shí)間,單位s

4.2 新生代垃圾回收統(tǒng)計(jì)

  • S0C:第一個(gè)幸存區(qū)的大小
  • S1C:第二個(gè)幸存區(qū)的大小
  • S0U:第一個(gè)幸存區(qū)的使用大小
  • S1U:第二個(gè)幸存區(qū)的使用大小
  • TT:對(duì)象在新生代存活的次數(shù)
  • MTT:對(duì)象在新生代存活的最大次數(shù)
  • DSS:期望的幸存區(qū)大小
  • EC:伊甸園區(qū)的大小
  • EU:伊甸園區(qū)的使用大小
  • YGC:年輕代垃圾回收次數(shù)
  • YGCT:年輕代垃圾回收消耗時(shí)間

4.3 新生代內(nèi)存統(tǒng)計(jì)

  • NGCMN:新生代最小容量
  • NGCMX:新生代最大容量
  • NGC:當(dāng)前新生代容量
  • S0CMX:最大幸存1區(qū)大小
  • S0C:當(dāng)前幸存1區(qū)大小
  • S1CMX:最大幸存2區(qū)大小
  • S1C:當(dāng)前幸存2區(qū)大小
  • ECMX:最大伊甸園區(qū)大小
  • EC:當(dāng)前伊甸園區(qū)大小
  • YGC:年輕代垃圾回收次數(shù)
  • FGC:老年代回收次數(shù)

4.4 老年代垃圾回收統(tǒng)計(jì)

  • MC:方法區(qū)大小
  • MU:方法區(qū)使用大小
  • CCSC:壓縮類(lèi)空間大小
  • CCSU:壓縮類(lèi)空間使用大小
  • OC:老年代大小
  • OU:老年代使用大小
  • YGC:年輕代垃圾回收次數(shù)
  • FGC:老年代垃圾回收次數(shù)
  • FGCT:老年代垃圾回收消耗時(shí)間
  • GCT:垃圾回收消耗總時(shí)間
4.5 老年代內(nèi)存統(tǒng)計(jì)
  • OGCMN:老年代最小容量
  • OGCMX:老年代最大容量
  • OGC:當(dāng)前老年代大小
  • OC:老年代大小
  • YGC:年輕代垃圾回收次數(shù)
  • FGC:老年代垃圾回收次數(shù)
  • FGCT:老年代垃圾回收消耗時(shí)間
  • GCT:垃圾回收消耗總時(shí)間
4.6 元數(shù)據(jù)空間統(tǒng)計(jì)

  • MCMN:最小元數(shù)據(jù)容量
  • MCMX:最大元數(shù)據(jù)容量
  • MC:當(dāng)前元數(shù)據(jù)空間大小
  • CCSMN:最小壓縮類(lèi)空間大小
  • CCSMX:最大壓縮類(lèi)空間大小
  • CCSC:當(dāng)前壓縮類(lèi)空間大小
  • YGC:年輕代垃圾回收次數(shù)
  • FGC:老年代垃圾回收次數(shù)
  • FGCT:老年代垃圾回收消耗時(shí)間
  • GCT:垃圾回收消耗總時(shí)間

本文作者:牛 森(上海新炬王翦團(tuán)隊(duì))

本文來(lái)源:“IT那活兒”公眾號(hào)

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/129292.html

相關(guān)文章

  • 面試官問(wèn)我JVM調(diào)優(yōu),我忍不住了!

    面試官:今天要不來(lái)聊聊JVM調(diào)優(yōu)相關(guān)的吧?面試官:你曾經(jīng)在生產(chǎn)環(huán)境下有過(guò)調(diào)優(yōu)JVM的經(jīng)歷嗎?候選者:沒(méi)有面試官:...候選者:嗯...是這樣的,我們一般優(yōu)化系統(tǒng)的思路是這樣的候選者:1. 一般來(lái)說(shuō)關(guān)系型數(shù)據(jù)庫(kù)是先到瓶頸,首先排查是否為數(shù)據(jù)庫(kù)的問(wèn)題候選者:(這個(gè)過(guò)程中就需要評(píng)估自己建的索引是否合理、是否需要引入分布式緩存、是否需要分庫(kù)分表等等)候選者:2. 然后,我們會(huì)考慮是否需要擴(kuò)容(橫向和縱向都...

    不知名網(wǎng)友 評(píng)論0 收藏0
  • JVM調(diào)優(yōu)前戲之JDK命令行工具---jhat

    摘要:在的命令行中,一般開(kāi)發(fā)人員最耳熟能詳?shù)目隙ň褪堑瘸S妹?,不過(guò)在下還有許多其他的命令行工具,它們被用來(lái)監(jiān)測(cè)運(yùn)行時(shí)的狀態(tài),下面我們來(lái)詳細(xì)解讀一下幾個(gè)常用的工具以及如何使用。 在JDK的命令行中,一般開(kāi)發(fā)人員最耳熟能詳?shù)目隙ň褪莏ava,javac,javap等常用命令,不過(guò)在jdk/bin下還有許多其他的命令行工具,它們被用來(lái)監(jiān)測(cè)JVM運(yùn)行時(shí)的狀態(tài),下面我們來(lái)詳細(xì)解讀一下幾個(gè)常用的工具以...

    RiverLi 評(píng)論0 收藏0
  • 第01部分_Introduction

    摘要:由硬件和軟件所組成,沒(méi)有安裝任何軟件的計(jì)算機(jī)稱(chēng)為裸機(jī)。計(jì)算機(jī)的硬件是指計(jì)算機(jī)系統(tǒng)中由電子,機(jī)械和光電元件等組成的各種物理裝置的總稱(chēng)。計(jì)算機(jī)軟件數(shù)據(jù)和指令的集合,分為系統(tǒng)軟件和應(yīng)用軟件。提供了程序運(yùn)行的環(huán)境核心類(lèi)庫(kù)。 一、計(jì)算機(jī)基礎(chǔ) 1. 計(jì)算機(jī) 全稱(chēng)為電子計(jì)算機(jī),俗稱(chēng)電腦。 是一種能夠按照程序運(yùn)行,自動(dòng)且高速地處理海量數(shù)據(jù)的現(xiàn)代化智能電子設(shè)備。 由硬件和軟件所組成,沒(méi)有安裝任何軟件的...

    wemall 評(píng)論0 收藏0
  • JVM調(diào)優(yōu)前戲之JDK命令行工具---jstack

    摘要:用于生成虛擬機(jī)當(dāng)前時(shí)刻的線程快照。線程快照就是當(dāng)前虛擬機(jī)內(nèi)每一條線程正在執(zhí)行的方法堆棧的集合,生成線程快照的主要目的就是定位線程出現(xiàn)長(zhǎng)時(shí)間停頓的原因,如線程死鎖死循環(huán)請(qǐng)求外部資源導(dǎo)致的長(zhǎng)時(shí)間等待等都是導(dǎo)致線程長(zhǎng)時(shí)間停頓的常見(jiàn)原因。 在JDK的命令行中,一般開(kāi)發(fā)人員最耳熟能詳?shù)目隙ň褪莏ava,javac,javap等常用命令,不過(guò)在jdk/bin下還有許多其他的命令行工具,它們被用來(lái)監(jiān)...

    Cristic 評(píng)論0 收藏0
  • Java面試 32個(gè)核心必考點(diǎn)完全解析

    摘要:如問(wèn)到是否使用某框架,實(shí)際是是問(wèn)該框架的使用場(chǎng)景,有什么特點(diǎn),和同類(lèi)可框架對(duì)比一系列的問(wèn)題。這兩個(gè)方向的區(qū)分點(diǎn)在于工作方向的側(cè)重點(diǎn)不同。 [TOC] 這是一份來(lái)自嗶哩嗶哩的Java面試Java面試 32個(gè)核心必考點(diǎn)完全解析(完) 課程預(yù)習(xí) 1.1 課程內(nèi)容分為三個(gè)模塊 基礎(chǔ)模塊: 技術(shù)崗位與面試 計(jì)算機(jī)基礎(chǔ) JVM原理 多線程 設(shè)計(jì)模式 數(shù)據(jù)結(jié)構(gòu)與算法 應(yīng)用模塊: 常用工具集 ...

    JiaXinYi 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<