摘要:在系統(tǒng)運(yùn)行過程中其他人也許動態(tài)調(diào)整了系統(tǒng)參數(shù)。如何實(shí)時查看正在運(yùn)行的的參數(shù)呢解決方案可以采用來查看正在運(yùn)行的的參數(shù)。從開始引入的一個診斷命令行工具,可以向運(yùn)行中的發(fā)送診斷命令。
問題描述
解決方案為了分析和定位一個Java線上系統(tǒng)問題,我們需要查看JVM啟動時的一些參數(shù)設(shè)置,例如:垃圾回收算法、堆大小等等。這些參數(shù)可能在啟動腳本中明確指明,也可能采用默認(rèn)值。在系統(tǒng)運(yùn)行過程中其他人也許動態(tài)調(diào)整了系統(tǒng)參數(shù)。 如何實(shí)時查看正在運(yùn)行的JVM的參數(shù)呢?
查看JVM進(jìn)程的PID可以采用jcmd來查看正在運(yùn)行的JVM的參數(shù)。jcmd從JDK 7開始引入的一個JVM診斷命令行工具,可以向運(yùn)行中的JVM發(fā)送診斷命令。
$ jcmd -l 27940 sun.tools.jcmd.JCmd -l 24684 org.codehaus.plexus.classworlds.launcher.Launcher -Prun 23839 com.intellij.idea.Main 23951 org.jetbrains.idea.maven.server.RemoteMavenServer查看進(jìn)程24684的參數(shù)
$ jcmd 24684 VM.flags 24684: -XX:InitialHeapSize=98566144 -XX:MaxHeapSize=1547698176 -XX:MaxNewSize=515899392 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=1572864 -XX:OldSize=96993280 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParallelGC
堆大小設(shè)置,垃圾回收算法等一目了然。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/66146.html
摘要:是什么摘自的介紹大意為是阿里開源的一個診斷工具,可以幫助開發(fā)人員在不修改代碼或重啟服務(wù)器的情況下快速定位線上問題。聽起來確實(shí)是我們的程序員的一大福利。參考資料使用手冊 1. Arthas是什么? 摘自Arthas的Github介紹: Arthas is a Java Diagnostic tool open sourced by Alibaba. Arthas allows deve...
摘要:是什么鬼是一款阿里巴巴開源的線上診斷工具,功能非常強(qiáng)大,可以解決很多線上不方便解決的問題。診斷使用的是命令行交互模式,支持,操作系統(tǒng),命令還支持使用鍵對各種信息的自動補(bǔ)全,診斷起來非常利索。顯示當(dāng)前系統(tǒng)的實(shí)時數(shù)據(jù)面板,按即可退出。 Arthas是什么鬼? Arthas是一款阿里巴巴開源的 Java 線上診斷工具,功能非常強(qiáng)大,可以解決很多線上不方便解決的問題。 Arthas診斷使用的是...
摘要:注意這個統(tǒng)計(jì)也會產(chǎn)生一定的開銷這個接口本身開銷比較大,因此會看到的線程占用一定的百分比,為了降低統(tǒng)計(jì)自身的開銷帶來的影響,可以把采樣間隔拉長一些,比如毫秒。 Arthas 能為你做什么? 這個類從哪個 jar 包加載的?為什么會報(bào)各種類相關(guān)的 Exception? 我改的代碼為什么沒有執(zhí)行到?難道是我沒 commit?分支搞錯了? 遇到問題無法在預(yù)發(fā) debug 一下,難道只能通過加...
摘要:目標(biāo)群體有時候突然一個問題反饋上來,需要入?yún)⒉拍芡瓿啥ㄎ唬∏]有任何日志。通過指定渲染路徑,并可記錄下路徑中所有方法的入?yún)⒎抵蹬c命令聯(lián)動。使用和介紹具體查看 目標(biāo)群體 有時候突然一個問題反饋上來,需要入?yún)⒉拍芡瓿啥ㄎ唬∏]有任何日志。回去加上重新部署,一杯咖啡時間過去了,是不是很崩潰? 當(dāng)你經(jīng)過反復(fù)這樣幾次折騰之后變得聰明了,在自己的代碼的所有入?yún)⒑统鰠⒌胤蕉技由蟙ebug日...
摘要:什么是內(nèi)存溢出內(nèi)存溢出是指,程序創(chuàng)建對象需要內(nèi)存,但是卻沒有內(nèi)存可用了,內(nèi)存就溢出了。使用命令查看個數(shù)輸入后,按診斷是文件在服務(wù)端沒讀取到,還是內(nèi)存溢出。無耐,阿里云學(xué)生機(jī)配置不好,只能稍微修改一點(diǎn),再將文件切割為小文件上傳了參數(shù)請參考 1、什么是內(nèi)存泄漏內(nèi)存泄漏是指,有未被釋放的java對象,一直停留在內(nèi)存中。GCRoot 無法追蹤到此對象,導(dǎo)致此對象無法被回收。 2、什么是內(nèi)存溢出...
閱讀 1855·2021-11-25 09:43
閱讀 1498·2021-09-02 15:21
閱讀 3462·2019-08-30 15:52
閱讀 1507·2019-08-30 12:48
閱讀 1304·2019-08-30 10:57
閱讀 2934·2019-08-26 17:41
閱讀 684·2019-08-26 11:59
閱讀 1374·2019-08-26 10:41