JVM系列實用命令(jmap、jstat、jstack)-創(chuàng)新互聯

概論
命令監(jiān)控最方便,但是最優(yōu)的方式是通過工具打開監(jiān)控:比如jconsole、jvisualvm,幾乎全部的信息都有了,另外jvisualvm支持遠程監(jiān)控,但是需要做一些配置
使用命令的目的

成都創(chuàng)新互聯公司是一家集成都網站制作、網站設計、外貿網站建設、網站頁面設計、網站優(yōu)化SEO優(yōu)化為一體的專業(yè)網站建設公司,已為成都等多地近百家企業(yè)提供網站建設服務。追求良好的瀏覽體驗,以探求精品塑造與理念升華,設計最適合用戶的網站頁面。 合作只是第一步,服務才是根本,我們始終堅持講誠信,負責任的原則,為您進行細心、貼心、認真的服務,與眾多客戶在蓬勃發(fā)展的市場環(huán)境中,互促共生。

獲取垃圾回收器的類型和系統參數 // jmap -heap pid
查看應用啟動的參數// jinfo -flags pid
查看當前各個代區(qū)的容量和使用量情況 // jstat
FGC、YGC的總次數和總耗時 // jstat
立即生成Dump文件 //jmap -dump:live,file=dump_001.bin PID
強制FullGC // jmap -dump:live
查看線程的運行信息(包括死鎖的線程) // jstack -l pid

jmap命令

heap pid:查看 JDK的概況的最好的一個參數

JVM主要參數:垃圾回收器的類型、各種ratio、當前實際Size、MaxSize是多少

當前各個代區(qū)的使用情況:Eden、From、To、Old區(qū)、Perm區(qū)

JVM系列 實用命令(jmap、jstat、jstack)
JVM系列 實用命令(jmap、jstat、jstack)
參數解讀

垃圾回收器: parallel + Concurrent Mark-Sweep
堆區(qū)MaxSize是4G,也就是默認是操作系統的1/4,16G*1/4=4G
堆區(qū)低于40%,或者大于70% 會自動調整老年代的大?。ǖ遣荒艿陀趚ms的配置 2G,也不能高于 MaxSize 4G)
Perm區(qū) 大1G ,如我們配置
老年代(concurrent mark-sweep generation)容量:1715.25MB
年輕代:New Generation + 1 Survivor Space= 299.5MB+33.25MB
堆區(qū)的當前容量:1715.25+299.5+33.25=2048M

dump:生成快照文件,然后可以利用工具(比如jvisualvm)來分析dump包
dump堆到文件,format指定輸出格式,live指明是活著的對象,file指定文件名

./jmap -dump:live,format=b,file=/usr/developer/huangForBackUp/test20190129.dump 25508

jmap還有一個額外的功能,通過命令觸發(fā)FullGC,比如可以執(zhí)行定時任務,在業(yè)務低峰期執(zhí)行,會自動觸發(fā)FullGC
因為在*:live前會進行full gc,如果帶上live則只統計活對象,因此不加live的堆大小要大于加live堆的大小

jmap -histo:live <pid>
jmap -dump:live,file=dump_001.bin PID

jstat命令
gc: 主要查看FGC、YGC的總次數和累計耗時
查看堆內各個代區(qū)的當前容量和當前使用量(當前容量不等于MaxCapactiy,當前容量是根據條件動態(tài)調整的),因為當前容量不等于Max容量所以在定位問題的時候,沒有太多的使用價值

- S0C : survivor0區(qū)的總容量
- S1C : survivor1區(qū)的總容量
- S0U : survivor0區(qū)已使用的容量
- S1C : survivor1區(qū)已使用的容量
- EC : Eden區(qū)的總容量
- EU : Eden區(qū)已使用的容量
- OC : Old區(qū)的總容量
- OU : Old區(qū)已使用的容量
- PC 當前perm的容量 (KB)
- PU perm的使用 (KB)
- YGC : 新生代垃圾回收次數
- YGCT : 新生代垃圾回收時間
- FGC : 老年代垃圾回收次數
- FGCT : 老年代垃圾回收時間
- GCT : 垃圾回收總消耗時間

gcutil:功能和gc 一樣,但是是百分比的形式,讀取更友好

gccapacity:讀取各個代區(qū)的當前容量、大容量、當前使用量等信息

NGCMN : 新生代占用的最小空間
NGCMX : 新生代占用的大空間
OGCMN : 老年代占用的最小空間
OGCMX : 老年代占用的大空間
OGC:當前年老代的容量 (KB)
OC:當前年老代的空間 (KB)
PGCMN : perm占用的最小空間
PGCMX : perm占用的大空間

命令的使用:

./jstat -gc 91328
./jstat -gcutil 91328
./jstat -gccapacity 91328

jstack -l pid >> stackLog.log //-l 表示包括線程死鎖的信息
輸出當前應用的線程使用信息,其中包括線程死鎖的相關信息

另外有需要云服務器可以了解下創(chuàng)新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

當前標題:JVM系列實用命令(jmap、jstat、jstack)-創(chuàng)新互聯
網頁鏈接:http://bm7419.com/article40/dpoeeo.html

成都網站建設公司_創(chuàng)新互聯,為您提供手機網站建設、電子商務、外貿建站、自適應網站、域名注冊、網站策劃

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

成都做網站