亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

環(huán)境:JDK1.8.0_92

JDK(JAVA Development Kit)提供了一系列的命令行工具,用于幫助開發(fā)人員進(jìn)行問題排查。以下是關(guān)于JDK命令行工具問題排查的一些常見操作:

  1. 使用jps查看虛擬機(jī)進(jìn)程:jps是一個(gè)用于顯示Java虛擬機(jī)(JVM)進(jìn)程信息的工具。通過jps指令可以獲取到正在運(yùn)行的JVM進(jìn)程的ID(PID),這對(duì)于后續(xù)的問題排查非常有用。
  2. 使用jstat監(jiān)視虛擬機(jī)運(yùn)行時(shí)信息:jstat是一個(gè)用于監(jiān)視虛擬機(jī)運(yùn)行時(shí)各種信息的工具。它可以監(jiān)控類加載數(shù)量、內(nèi)存使用情況、垃圾回收情況等信息,對(duì)于排查內(nèi)存泄漏、GC問題等非常有用。
  3. 使用jstack獲取線程堆棧信息:jstack是一個(gè)用于獲取Java線程堆棧信息的工具。當(dāng)JVM進(jìn)程出現(xiàn)異常或卡頓時(shí),可以使用jstack指令獲取線程堆棧信息,以幫助開發(fā)人員找到問題所在。
  4. 使用jmap生成堆轉(zhuǎn)儲(chǔ)文件:jmap是一個(gè)用于生成Java堆轉(zhuǎn)儲(chǔ)文件的工具。當(dāng)JVM內(nèi)存溢出或需要排查內(nèi)存問題時(shí),可以使用jmap指令生成堆轉(zhuǎn)儲(chǔ)文件,以幫助開發(fā)人員找到內(nèi)存泄漏或垃圾回收等問題。

以上是JDK命令行工具問題排查中常用的幾個(gè)操作,它們可以幫助開發(fā)人員快速定位和解決問題。當(dāng)然,還有其他JDK提供的工具也可以用于問題排查,例如jconsole、jvisualvm等。

JDK命令行工具所在目錄%JAVA_HOME%bin 目錄下:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

這里你會(huì)發(fā)現(xiàn)這些工具的大小基本上都是17kb左右。為何?因?yàn)檫@些工具大部分都是

%JAVA_HOME%bintools.jar這個(gè)jar中的類實(shí)現(xiàn)的,而這里的可執(zhí)行exe文件只是對(duì)這寫功能做了簡(jiǎn)單的一個(gè)封裝而已。

對(duì)應(yīng)到tools.jar中

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

接下來對(duì)常用的工具做介紹:

1.jps

顯示所有當(dāng)前正在運(yùn)行的HosSpot虛擬機(jī)進(jìn)程。

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

參數(shù):

-l :輸出完整的包名+類名,如果執(zhí)行的是jar包,輸出jar包的路徑。

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

-m:輸出啟動(dòng)程序時(shí),傳的參數(shù)信息。

測(cè)試程序:

public class JpsMAIn {


  public static void main(String[] args) throws Exception {
    System.out.println(Arrays.toString(args)) ;
    System.in.read() ;
  }


}

啟動(dòng)參數(shù)設(shè)置:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

啟動(dòng)時(shí)設(shè)置了3個(gè)參數(shù)分別是:a , b , c

查看:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

-v:輸出進(jìn)程啟動(dòng)時(shí)的jvm參數(shù)。

還是以上面的測(cè)試程序?yàn)槔?/p>

啟動(dòng)jvm參數(shù)設(shè)置:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

查看:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

-q:只輸出進(jìn)程號(hào)。

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

到此jps工具介紹完畢。

2.jstat

用于監(jiān)視虛擬機(jī)運(yùn)行時(shí)的各種信息。如:類加載,內(nèi)存,垃圾回收等信息。

使用格式:

jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]

vmid:表示jvm進(jìn)程號(hào)。

interval:表示查詢間隔(單位秒 s,毫秒 ms)。

count:表示查詢次數(shù)

查看option有哪些選項(xiàng)信息(也就是可以監(jiān)控哪些信息)

命令:

jstat -options

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

-class: 顯示類加載,卸載的數(shù)量,總空間及加載所耗時(shí)。

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

-compiler:顯示JIT編譯器編譯過的方法,耗時(shí)等信息。

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

-gc:監(jiān)視Java堆的使用情況,GC時(shí)間等信息。

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

S0C:第一個(gè)幸存區(qū)的大小

S1C:第二個(gè)幸存區(qū)的大小

S0U:第一個(gè)幸存區(qū)的使用大小

S1U:第二個(gè)幸存區(qū)的使用大小

EC:伊甸園區(qū)的大小

EU:伊甸園區(qū)的使用大小

OC:老年代大小

OU:老年代使用大小

MC:方法區(qū)大小

MU:方法區(qū)使用大小

CCSC:壓縮類空間大小

CCSU:壓縮類空間使用大小

YGC:年輕代垃圾回收次數(shù)

YGCT:年輕代垃圾回收消耗時(shí)間

FGC:老年代垃圾回收次數(shù)

FGCT:老年代垃圾回收消耗時(shí)間

GCT:垃圾回收消耗總時(shí)間

-gcutil:該選項(xiàng)與-gc基本相同,但他主要關(guān)注的是已使用空間占總空間的百分比。

S0:幸存1區(qū)當(dāng)前使用比例
S1:幸存2區(qū)當(dāng)前使用比例
E:伊甸園區(qū)使用比例
O:老年代使用比例
M:元數(shù)據(jù)區(qū)使用比例
CCS:壓縮使用比例
YGC:年輕代垃圾回收次數(shù)
FGC:老年代垃圾回收次數(shù)
FGCT:老年代垃圾回收消耗時(shí)間
GCT:垃圾回收消耗總時(shí)間

-gcnew:監(jiān)視年輕代GC情況。

 

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

圖片

-gcold:監(jiān)視老輕代GC情況。

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

示例:

jstat -gc 16480 3s

每3秒統(tǒng)計(jì)一次gc信息。

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

3. jinfo

實(shí)時(shí)查看和調(diào)整虛擬機(jī)各項(xiàng)參數(shù)。

使用:

jinfo option pid

示例:
輸出當(dāng)前jvm進(jìn)程的完整信息

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

查詢具體jvm參數(shù)值信息:

jinfo -flag CICompilerCount 16480

4. jmap

用于生成堆轉(zhuǎn)儲(chǔ)快照信息。

使用格式:

jmap [option] pid

option參數(shù)說明:

-dump:生成Java堆轉(zhuǎn)儲(chǔ)快照

jmap -dump:live,format=b,file=heap.bin <pid>

示例:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

-heap:顯示Java堆詳細(xì)信息。如:使用的垃圾回收期,參數(shù)配置,分代信息等。

jmap -heap <pid>

示例:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

-histo:顯示堆中對(duì)象的統(tǒng)計(jì)信息,包括類,實(shí)例數(shù),合計(jì)容量等。

jmap -histo <pid>

示例:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

5. jhat

堆轉(zhuǎn)儲(chǔ)文件分析工具。

使用格式:

jhat <file>

分析上面生成的文件

示例:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

這里生成了一個(gè)端口為7000的服務(wù),直接訪問

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

6. jstack

用于生成當(dāng)前進(jìn)程中當(dāng)前時(shí)刻線程的快照。

使用格式:

jstack [option] <pid>

參數(shù):

-F:當(dāng)正常輸出的請(qǐng)求不被響應(yīng)時(shí),強(qiáng)制輸出線程堆棧。

-l:除了顯示堆棧信息,還顯示關(guān)于鎖的相關(guān)信息。

-m:如果調(diào)用的是本地方法,可以顯示C/C++的堆棧。

示例:

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

JDK命令行工具詳解,這四個(gè)工具你都會(huì)用嗎?圖片

完畢!!!

分享到:
標(biāo)簽:JDK
用戶無頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定