偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

聊聊JVM優(yōu)化的常用指令

開發(fā) 前端
hat是用來分析jmap生成dump文件的命令,jhat內(nèi)置了應(yīng)用服務(wù)器,可以通過網(wǎng)頁查看dump文件分析結(jié)果,jhat一 般是用在離線分析上。

一、jps

jps 是(java process Status Tool), Java版的ps命令,查看java進(jìn)程及其相關(guān)的信息,如果你想找到一個java進(jìn)程的 pid,那可以用jps命令替代linux中的ps命令了,簡單而方便。

jps [options] [hostid]

options參數(shù)解釋:

  • -l : 顯示進(jìn)程id,顯示主類全名或jar路徑
  • -q : 顯示進(jìn)程id
  • -m : 顯示進(jìn)程id, 顯示JVM啟動時(shí)傳遞給main()的參數(shù)
  • -v : 顯示進(jìn)程id,顯示JVM啟動時(shí)顯示指定的JVM參數(shù)

hostid :

主機(jī)或其他服務(wù)器ip

最常用示例:

  • jps -l 輸出jar包路徑,類全名
  • jps -m 輸出main參數(shù)
  • jps -v 輸出JVM參數(shù)

二、jinfo

jinfo是用來查看JVM參數(shù)和動態(tài)修改部分JVM參數(shù)的命令。

命令格式:

jinfo [option] <pid>

options參數(shù)解釋:

no options 輸出所有的系統(tǒng)屬性和參數(shù)

  • -flag 打印指定名稱的參數(shù)
  • -flag [+|-] 打開或關(guān)閉參數(shù)
  • flag = 設(shè)置參數(shù)
  • -flags 打印所有參數(shù)
  • -sysprops 打印系統(tǒng)配置

三、jstat

jstat命令是使用頻率比較高的命令,主要用來查看JVM運(yùn)行時(shí)的狀態(tài)信息,包括內(nèi)存狀態(tài)、垃圾回收等。

命令格式:

jstat [option] VMID [interval] [count ]

其中VMID是進(jìn)程id,interval是打印間隔時(shí)間(毫秒),count是打印次數(shù)(默認(rèn)一直打?。?/p>

option參數(shù)解釋:

  • -class class loader的行為統(tǒng)計(jì)
  • -compiler HotSpt JIT編譯器行為統(tǒng)計(jì)
  • -gc 垃圾回收堆的行為統(tǒng)計(jì)
  • -gccapacity 各個垃圾回收代容量(young,old,perm)和他們相應(yīng)的空間統(tǒng)計(jì)
  • -gcutil 垃圾回收統(tǒng)計(jì)概述
  • -gccause 垃圾收集統(tǒng)計(jì)概述(同-gcutil),附加最近兩次垃圾回收事件的原因
  • -gcnew 新生代行為統(tǒng)計(jì)
  • -gcnewcapacity 新生代與其相應(yīng)的內(nèi)存空間的統(tǒng)計(jì)
  • -gcold 年老代和永生代行為統(tǒng)計(jì)
  • -gcoldcapacity 年老代行為統(tǒng)計(jì)
  • -printcompilation HotSpot編譯方法統(tǒng)計(jì)

四、 jstack

jstack是用來查看JVM線程快照的命令,線程快照是當(dāng)前JVM線程正在執(zhí)行的方法堆棧集合。使用jstack命令可以定 位線程出現(xiàn)長時(shí)間卡頓的原因,例如死鎖,死循環(huán)等。jstack還可以查看程序崩潰時(shí)生成的core文件中的stack信 息。

命令格式:

jstack [options] option

參數(shù)解釋:

  •  -F 當(dāng)使用jstack 無響應(yīng)時(shí),強(qiáng)制輸出線程堆棧。
  •  -m 同時(shí)輸出java堆棧和c/c++堆棧信息(混合模式)
  • -l 除了輸出堆棧信息外,還顯示關(guān)于鎖的附加信息

cpu占用過高問題:

1.使用Process Explorer工具找到cpu占用率較高的線程

2.在thread卡中找到cpu占用高的線程id

3.線程id轉(zhuǎn)換成16進(jìn)制

4.使用jstack -l 查看進(jìn)程的線程快照

5.線程快照中找到指定線程,并分析代碼

五、jmap

jmap可以生成 java 程序的 dump 文件, 也可以查看堆內(nèi)對象示例的統(tǒng)計(jì)信息、查看 ClassLoader 的信息以及 finalizer 隊(duì)列。

命令格式:

jmap [option] (連接正在執(zhí)行的進(jìn)程)

option參數(shù)解釋:

如果使用不帶選項(xiàng)參數(shù)的jmap打印共享對象映射,將會打印目標(biāo)虛擬機(jī)中加載的每個共享對象的起始 地址、 映射大小以及共享對象文件的路徑全稱。

  • -heap 打印java heap摘要
  • -histo[:live] 打印堆中的java對象統(tǒng)計(jì)信息
  •  -clstats 打印類加載器統(tǒng)計(jì)信息
  • -finalizerinfo 打印在f-queue中等待執(zhí)行finalizer方法的對象
  •  -dump: 生成java堆的dump文件 dump-options: live 只轉(zhuǎn)儲存活的對象,如果沒有指定則轉(zhuǎn)儲所有對象 format=b 二進(jìn)制格式 file= 轉(zhuǎn)儲文件到

六、jhat

hat是用來分析jmap生成dump文件的命令,jhat內(nèi)置了應(yīng)用服務(wù)器,可以通過網(wǎng)頁查看dump文件分析結(jié)果,jhat一 般是用在離線分析上。

命令格式

jhat [option][dumpfile]

option參數(shù)解釋:

  • -stack false: 關(guān)閉對象分配調(diào)用堆棧的跟蹤
  •  -refs false: 關(guān)閉對象引用的跟蹤
  •  -port : HTTP服務(wù)器端口,默認(rèn)是7000
  • -debug : debug級別
  • -version 分析報(bào)告版本
責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2023-07-14 12:28:07

JVM優(yōu)化操作

2023-07-31 07:48:43

Java內(nèi)存虛擬機(jī)

2021-01-14 08:58:12

Synchronize鎖操作

2020-02-24 21:43:36

avaJVM 級鎖線程安全

2021-06-11 06:54:35

DPDK優(yōu)化HugeTLB

2025-06-11 08:20:00

JVM線程代碼

2024-02-29 18:06:39

HTTP性能優(yōu)化

2012-12-10 11:02:46

2021-06-29 07:04:16

Sed常用操作

2021-11-26 00:02:00

模式正則修飾符

2020-12-31 05:33:34

軟件性能優(yōu)化

2024-03-15 08:04:30

G1CMSJVM

2025-06-30 07:10:00

JavaJVM線程

2023-04-24 14:54:09

JVM性能調(diào)優(yōu)

2023-01-08 13:46:49

2010-09-27 13:09:29

JVM指令系統(tǒng)

2010-12-31 09:23:44

FreeBSD

2023-11-10 11:23:20

JVM內(nèi)存

2011-11-28 10:50:56

JavaJVM優(yōu)化

2024-10-15 08:37:08

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號