国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇

這篇具有很好參考價(jià)值的文章主要介紹了性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、概述

性能診斷是軟件工程師在日程生活中需要經(jīng)常面對(duì)和解決的問(wèn)題

Java作為最流行的編程語(yǔ)言之一,其應(yīng)用性能診斷一直收到業(yè)內(nèi)廣泛關(guān)注。造成Java應(yīng)用出現(xiàn)性能問(wèn)題的因素非常多,例如線程控制,磁盤(pán)讀寫(xiě),數(shù)據(jù)庫(kù)訪問(wèn),網(wǎng)絡(luò)io,垃圾收集等。想要定位這些問(wèn)題,一款優(yōu)秀的性能診斷工具必不可少。

1、簡(jiǎn)單命令行工具

jdk的bin目錄下,有一系列的輔助命令行工具,這些輔助工具用來(lái)獲取 Jvm不同方面,不同層次的信息,幫助開(kāi)發(fā)人員很好的解決Java應(yīng)用程序的一些疑難雜癥。例如 jinfo 、jconsole、javap …

二、jps:查看正在運(yùn)行的Java程序(掌握)

1、是什么?

Java Process Status:用于查詢正在運(yùn)行的Java虛擬機(jī)進(jìn)程

2、測(cè)試

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

3、基本語(yǔ)法

1)options
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
如何將信息輸出到同級(jí)文件中:
語(yǔ)法:命令 > 文件名稱
例如:jps -l > a.txt

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

三、jstat:查看jvm統(tǒng)計(jì)信息(掌握)

1、是什么?

jstat (JVM statistics Monitor tool ): 用于監(jiān)視虛擬機(jī)各種運(yùn)行狀態(tài)信息的命令行工具。它可以顯示本地或者遠(yuǎn)程虛擬機(jī)進(jìn)程中的類裝載、內(nèi)存、垃圾收集、JIT編譯等運(yùn)行數(shù)據(jù)

在沒(méi)有GUI的圖形界面,只提供了純文本控制臺(tái)環(huán)境的服務(wù)器上,它將是運(yùn)行期間定位虛擬機(jī)性能問(wèn)題的首選工具,常用于檢測(cè)垃圾回收問(wèn)題以及內(nèi)存泄漏問(wèn)題

2、基本語(yǔ)法

基本語(yǔ)法: 使用jstat查看語(yǔ)法格式

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

其中vmid是進(jìn)程id號(hào),也就是jps之后看到的前面的號(hào)碼,如下:
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

1)options參數(shù)
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

  • -gc
    性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
    其中S0C代表幸存者0區(qū)的總?cè)萘浚?br> S1C代表幸存者1區(qū)的總?cè)萘浚?br> S0U代表幸存者0區(qū)使用的容量,
    S1U代表幸存者1區(qū)使用的容量,
    EC代表伊甸園區(qū)的總?cè)萘浚?br> EU代表伊甸園區(qū)使用的總?cè)萘浚?br> OC代表老年代的總?cè)萘浚?br> OU代表老年代已經(jīng)使用的容量,
    MC代表方法區(qū)的總?cè)萘浚?br> MU代表方法區(qū)的總?cè)萘浚?br> CCSC代表壓縮類的總?cè)萘浚?br> CCSU代表壓縮類使用的容量,
    YGC代表年輕代垃圾回收的次數(shù),
    YGCT年輕代進(jìn)行垃圾回收需要的時(shí)間,
    FGC代表代表Full GC的次數(shù),
    FGCT代表Full GC的時(shí)間,
    GCT代表垃圾回收的總時(shí)間

  • -gccapacity舉例:jstat -gccapacity 13152,其中13152代表類的進(jìn)程id,執(zhí)行結(jié)果如下:
    性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
    其中S0C代表幸存者0區(qū)的容量,
    S1C代表幸存者1區(qū)的容量,
    EC代表伊甸園區(qū)的容量,
    CCSC代表壓縮類的容量,
    YGC代表年輕代垃圾回收的時(shí)間,
    FGC代表Full
    GC垃圾回收的時(shí)間


  • gcutil舉例:jstat -gcutil 13152,其中13152代表類的進(jìn)程id,執(zhí)行結(jié)果如下所示:
    性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
    以上是各區(qū)域占比以及垃圾回收的情況,
    S0代表幸存者0區(qū),
    S1代表幸存者1區(qū),
    E代表伊甸園區(qū),
    O代表老年代,
    M代表方法區(qū),
    CCS代表壓縮類,以上這些值都是占比情況
    YGC代表年輕代垃圾回收的次數(shù),
    YGCT年輕代進(jìn)行垃圾回收需要的時(shí)間,
    FGC代表代表Full GC的次數(shù),
    FGCT代表Full GC的時(shí)間,
    GCT代表垃圾回收的總時(shí)間

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

2)-t 參數(shù)
可以在輸出信息前加上一個(gè) TimeStamp列,顯示程序的運(yùn)行時(shí)間。單位秒

【經(jīng)驗(yàn)】
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
jstat -gc -t 35812 1000
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
如果讓左邊框框中的某兩個(gè)值相減,假設(shè)這個(gè)值是num1,然后讓對(duì)應(yīng)右邊框框中的另外兩個(gè)值相減,假設(shè)這個(gè)值是num2,之后讓num2/num1,得出的差值就是上述所說(shuō)的GC時(shí)間占運(yùn)行時(shí)間的比例

3)-h
可以在周期性數(shù)據(jù)輸出時(shí),輸出多少行數(shù)據(jù)后輸出一個(gè)表頭信息

4)interval 參數(shù)
用于指定輸出統(tǒng)計(jì)數(shù)據(jù)的周期,單位為毫秒秒(查詢間隔)

5)count 參數(shù)
用于指定查詢的總次數(shù)

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

3、補(bǔ)充

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm



四、jinfo:實(shí)時(shí)查看和修改JVM配置參數(shù)

1、是什么?

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

2、基本語(yǔ)法

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

查看
jinfo -flags 進(jìn)程id
查看曾經(jīng)賦過(guò)值的一些參數(shù)
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

jinfo -flag 參數(shù)名稱 進(jìn)程id
查看某個(gè)java進(jìn)程的具體參數(shù)信息
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

修改
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

針對(duì)boolean類型:jinfo -flag [+|-]參數(shù)名稱 進(jìn)程id
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

針對(duì)非boolean類型: jinfo -flag 參數(shù)名稱=參數(shù)值 進(jìn)程id
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

3、拓展

java -XX:+PrintFlagsInitial 查看所有JVM參數(shù)啟動(dòng)的初始值
java -XX:+PrintFlagsFinal 查看所有JVM參數(shù)的最終值



五、jmap:導(dǎo)出內(nèi)存映像文件 & 內(nèi)存使用情況

1、是什么?

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

2、基本語(yǔ)法

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
使用語(yǔ)法可以通過(guò)在DOS窗口中使用jmap/jmap -h/jmap -help查看

<executable 代表可執(zhí)行的代碼,比如使用> 文件名稱來(lái)指定生成的dump文件的生成位置

[server_id@]<……>是為遠(yuǎn)程連接準(zhǔn)備的

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm



3、使用

1)導(dǎo)出內(nèi)存映像文件

手動(dòng)

jmap -dump:format=b,file=xxx.hprof pid

jmap -dump:live,format=b,file=xxx.hprof pid  【基本使用這個(gè)】

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

自動(dòng)

-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=xxx.hprof

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm


2、顯示堆內(nèi)存相關(guān)信息

jmap -heap 進(jìn)程id
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

jmap -histo 進(jìn)程id
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm



4、小結(jié)

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm



六、jhat (不使用了)

1、是什么?

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

2、基本語(yǔ)法

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm



七、jstack 打印Jvm的線程快照

1、是什么

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

2、基本語(yǔ)法

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm

參數(shù):option:
性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm



八、jcmd 多功能命令行



九、jstatd 遠(yuǎn)程主機(jī)信息收集

性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇,# Jvm,jvm
demo:
https://blog.csdn.net/huanqingdong/article/details/104095402/文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-668767.html

到了這里,關(guān)于性能調(diào)優(yōu)篇 二、Jvm監(jiān)控及診斷工具-命令行篇的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • JVM調(diào)優(yōu)篇:探索Java性能優(yōu)化的必備種子面試題

    JVM調(diào)優(yōu)篇:探索Java性能優(yōu)化的必備種子面試題

    首先面試官會(huì)詢問(wèn)你在進(jìn)行JVM調(diào)優(yōu)之前,是否了解JVM內(nèi)存模型的基礎(chǔ)知識(shí)。這是一個(gè)重要的入門(mén)問(wèn)題。JVM內(nèi)存模型主要包括程序計(jì)數(shù)器、堆、本地方法棧、Java棧和方法區(qū)(1.7之后更改為元空間,并直接使用系統(tǒng)內(nèi)存)。 正常堆內(nèi)存又分為年輕代和老年代。在Java虛擬機(jī)中,年

    2024年02月15日
    瀏覽(27)
  • JVM性能監(jiān)控之命令行工具全解

    JVM性能監(jiān)控之命令行工具全解

    性能診斷是軟件工程師在日常工作中需要經(jīng)常面對(duì)和解決的問(wèn)題,在用戶體驗(yàn)至上的今天,解決好應(yīng)用的性能問(wèn)題能帶來(lái)非常大的收益。 Java作為最流行的編程語(yǔ)言之一,其應(yīng)用性能診斷一直受到業(yè)界的廣泛關(guān)注,可能造成Java應(yīng)用出現(xiàn)性能問(wèn)題的因素非常多,例如線程控制、

    2023年04月08日
    瀏覽(19)
  • JVM監(jiān)控及診斷工具大全

    JVM監(jiān)控及診斷工具大全

    jconsole:從Java5開(kāi)始,在JDK中自帶的java監(jiān)控和管理控制臺(tái)。用于對(duì)JVM中內(nèi)存、線程和類等的監(jiān)控,是一個(gè)基于JMX(java management extensions)的GUI性能監(jiān)控工具。 官方地址:https://docs.oracle.com/javase/7/docs/technotes/guides/management/jconsole.html Visual VM是一個(gè)功能強(qiáng)大的多合一故障診斷和性能

    2024年02月08日
    瀏覽(22)
  • 數(shù)據(jù)庫(kù)監(jiān)控與調(diào)優(yōu)【七】—— MySQL數(shù)據(jù)庫(kù)診斷命令

    TIPS 本文基于MySQL 8.0,理論支持MySQL 5.0及更高版本。 本文整理了常用的MySQL診斷命令,可以幫助我們了解數(shù)據(jù)庫(kù)的運(yùn)行情況。 作用: SHOW [FULL] PROCESSLIST用于查看當(dāng)前正在運(yùn)行的線程。如果執(zhí)行此命令的用戶擁有 PROCESS 權(quán)限,則可看到所有線程;否則只能看到自己的線程(即與

    2024年02月11日
    瀏覽(29)
  • 【Jvm】性能調(diào)優(yōu)(拓展)Jprofiler如何監(jiān)控和解決死鎖、內(nèi)存泄露問(wèn)題

    【Jvm】性能調(diào)優(yōu)(拓展)Jprofiler如何監(jiān)控和解決死鎖、內(nèi)存泄露問(wèn)題

    Jprofilers是針對(duì)Java開(kāi)發(fā)的 性能分析工具(免費(fèi)試用10天) , 可以對(duì)Java程序的 內(nèi)存,CPU,線程,GC,鎖 等進(jìn)行監(jiān)控和分析 , 本人IDEA版本是 2020.2.2 ,選擇的Jprofiler版本是 12.0 (早期的版本是純英文的, 12.0支持中文 ,安裝主要考慮是否與IDEA插件兼容即可) 進(jìn)入Jprofiler官網(wǎng)下載 - Jprofiler 版本這

    2024年02月19日
    瀏覽(23)
  • MySQL性能調(diào)優(yōu)篇(4)-查詢語(yǔ)句的優(yōu)化與重構(gòu)

    MySQL是一種常用的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),廣泛應(yīng)用于Web開(kāi)發(fā)中。在實(shí)際應(yīng)用中,對(duì)數(shù)據(jù)庫(kù)查詢語(yǔ)句的優(yōu)化和重構(gòu)是提高應(yīng)用性能和響應(yīng)速度的重要手段。本文將介紹一些常見(jiàn)的優(yōu)化技巧和重構(gòu)方法,幫助開(kāi)發(fā)者提高數(shù)據(jù)庫(kù)查詢效率。 優(yōu)化索引 索引是數(shù)據(jù)庫(kù)中存儲(chǔ)數(shù)據(jù)位置的

    2024年02月19日
    瀏覽(24)
  • 【Jvm】性能調(diào)優(yōu)(上)線上問(wèn)題排查工具匯總

    【Jvm】性能調(diào)優(yōu)(上)線上問(wèn)題排查工具匯總

    產(chǎn)品閉環(huán) 產(chǎn)品閉環(huán)是能夠讓 用戶主動(dòng)迭代促進(jìn)產(chǎn)品發(fā)展的方式 。例如一些內(nèi)容產(chǎn)品,比如 糗事百科 ,種子用戶 產(chǎn)出高質(zhì)量?jī)?nèi)容 ,舉報(bào)與贊起到 篩選內(nèi)容 ,提高內(nèi)容質(zhì)量的作用, 內(nèi)容質(zhì)量的提升有助于吸引更多用戶 。 這就是產(chǎn)品閉環(huán), 產(chǎn)品給予用戶需求解決方法,用戶

    2024年02月20日
    瀏覽(30)
  • MySQL性能調(diào)優(yōu)篇(8)-NoSQL與MySQL的比較

    MySQL數(shù)據(jù)庫(kù)是一種關(guān)系型數(shù)據(jù)庫(kù),而NoSQL是一種非關(guān)系型數(shù)據(jù)庫(kù)。它們?cè)跀?shù)據(jù)存儲(chǔ)和處理方式、數(shù)據(jù)模型和可擴(kuò)展性等方面存在一些明顯的差異。本文將對(duì)MySQL數(shù)據(jù)庫(kù)和NoSQL進(jìn)行比較,并介紹它們的優(yōu)勢(shì)和劣勢(shì)。 首先,MySQL使用表格的形式來(lái)存儲(chǔ)數(shù)據(jù),采用一對(duì)多的關(guān)系,并且

    2024年02月19日
    瀏覽(17)
  • JVM監(jiān)控和調(diào)優(yōu)常用命令jps|jstat|jinfo|jmap|jhat|jstack實(shí)戰(zhàn)

    性能優(yōu)化 :通過(guò)JVM調(diào)優(yōu),可以提高Java應(yīng)用程序的性能,減少響應(yīng)時(shí)間,提高吞吐量,以更好地滿足用戶需求。性能優(yōu)化可以加快應(yīng)用程序的執(zhí)行速度,減少延遲,提高用戶體驗(yàn)。 內(nèi)存管理 :JVM負(fù)責(zé)管理Java應(yīng)用程序的內(nèi)存。正確的內(nèi)存管理可以避免內(nèi)存泄漏和內(nèi)存溢出等問(wèn)

    2024年02月09日
    瀏覽(22)
  • JVM 性能監(jiān)控與故障處理工具

    JVM 性能監(jiān)控與故障處理工具

    基礎(chǔ)工具 jps:虛擬機(jī)進(jìn)程狀態(tài)工具 jps 命令格式: jps [options] [hostid] 命令可選項(xiàng)解釋: 選項(xiàng) 解釋 -q 只輸出 LVMID,省略主類的名稱 -m 輸出傳給 main 函數(shù)的參數(shù) -l 輸出主類的全名,如果進(jìn)程運(yùn)行的 JAR 包,則輸出 JAR 包的路徑 -v 輸出虛擬機(jī)進(jìn)程啟動(dòng)時(shí)的 JVM 參數(shù) jstat:虛擬機(jī)統(tǒng)

    2024年02月07日
    瀏覽(23)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包