java性能分析jconsole詳解
前言:
本章節(jié)繼續(xù)學(xué)習(xí)java性能優(yōu)化的相關(guān)知識(shí)。重點(diǎn)學(xué)習(xí)什么是jconsole,以及如何使用?它能幫助我們做什么?
jconsole簡(jiǎn)介
提供JVM圖形化視圖,包括內(nèi)存、線程、類、cpu等信息。用戶可以通過(guò)jconsole工具去連接指定的jvm,監(jiān)控jvm的變化。
我們可以在jdk的安裝文件bin當(dāng)中找到它:

雙擊運(yùn)行會(huì)打開(kāi)如下界面,上面是本地的java進(jìn)程,下面是通過(guò)遠(yuǎn)程的方式連接服務(wù)器上面的java進(jìn)程。

我們隨便點(diǎn)擊一個(gè)本地進(jìn)程得到如下的界面:

jconsole遠(yuǎn)程
jconsole除了可以查看本地的jvm信息,還能夠查看遠(yuǎn)程服務(wù)的jvm信息。前提是在遠(yuǎn)程服務(wù)啟動(dòng)的時(shí)候,添加下面的參數(shù):
-Dcom.sun.management.jmxremote=true # 服務(wù)器ip -Djava.rmi.server.hostname=xxx.xxx.xxx.xxx # 設(shè)置jconsole連接的端口 -Dcom.sun.management.jmxremote.port=8090 # 是否使用賬號(hào)密碼 -Dcom.sun.management.jmxremote.authenticate=false # 關(guān)閉ssl -Dcom.sun.management.jmxremote.ssl=false
如下所示:
nohup java -Dcom.sun.management.jmxremote=true -Djava.rmi.server.hostname=xxx.xxx.xxx.xxx -Dcom.sun.management.jmxremote.port=8090 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar -Xms1g -Xmx1g weather-forecast-0.0.1-SNAPSHOT.jar>/dev/null &
此時(shí)我們打開(kāi)windows中的jconsole,進(jìn)行連接:

此時(shí)我們?nèi)匀皇遣荒苓B接成功的,主要原因是jmx需要的端口不知我們指定的一個(gè),如我使用的8090,還有另外兩個(gè),使用netstat -nltp命令查看如下:

所以我們需要在防火墻除 8090 外,將這兩個(gè)端口也開(kāi)放,如果是云服務(wù)器就要去控制臺(tái)開(kāi)放對(duì)應(yīng)的策略。完成上面的操作總算可以完成遠(yuǎn)程連接,對(duì)我們的jvm進(jìn)行監(jiān)控了。
到此這篇關(guān)于java性能分析jconsole詳解的文章就介紹到這了,更多相關(guān)java jconsole內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java 高并發(fā)編程之最實(shí)用的任務(wù)執(zhí)行架構(gòu)設(shè)計(jì)建議收藏
高并發(fā)(High Concurrency)是互聯(lián)網(wǎng)分布式系統(tǒng)架構(gòu)設(shè)計(jì)中必須考慮的因素之一,它通常是指,通過(guò)設(shè)計(jì)保證系統(tǒng)能夠同時(shí)并行處理很多請(qǐng)求,高并發(fā)相關(guān)常用的一些指標(biāo)有響應(yīng)時(shí)間(Response Time),吞吐量(Throughput),每秒查詢率QPS(Query Per Second),并發(fā)用戶數(shù)等2021-10-10
springBoot+mybatis-plus實(shí)現(xiàn)監(jiān)聽(tīng)mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)增刪改
mybatis-plus技術(shù)是簡(jiǎn)化了繁瑣的代碼操作,把增刪改查的語(yǔ)句都內(nèi)置了,直接調(diào)用就可以實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增刪改查了,這篇文章主要給大家介紹了關(guān)于springBoot+mybatis-plus實(shí)現(xiàn)監(jiān)聽(tīng)mysql數(shù)據(jù)庫(kù)數(shù)據(jù)增刪改的相關(guān)資料,需要的朋友可以參考下2024-01-01
spring boot項(xiàng)目導(dǎo)入依賴后代碼報(bào)錯(cuò)問(wèn)題的解決方法
這篇文章主要給大家介紹了關(guān)于spring boot項(xiàng)目導(dǎo)入依賴后代碼報(bào)錯(cuò)問(wèn)題的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
mybatis使用collection嵌套查詢的實(shí)現(xiàn)
本文主要介紹了mybatis使用collection嵌套查詢的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05
idea運(yùn)行tomcat報(bào)錯(cuò)找不到catalina.bat,系統(tǒng)找不到指定的文件問(wèn)題
這篇文章主要介紹了idea運(yùn)行tomcat報(bào)錯(cuò)找不到catalina.bat,系統(tǒng)找不到指定的文件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,2023-11-11
SpringMVC HttpMessageConverter報(bào)文信息轉(zhuǎn)換器
??HttpMessageConverter???,報(bào)文信息轉(zhuǎn)換器,將請(qǐng)求報(bào)文轉(zhuǎn)換為Java對(duì)象,或?qū)ava對(duì)象轉(zhuǎn)換為響應(yīng)報(bào)文。???HttpMessageConverter???提供了兩個(gè)注解和兩個(gè)類型:??@RequestBody,@ResponseBody???,??RequestEntity,ResponseEntity??2023-01-01
java實(shí)現(xiàn)將ftp和http的文件直接傳送到hdfs
前面幾篇文章,我們已經(jīng)做了很好的鋪墊了,幾個(gè)要用到的工具我們都做了出來(lái),本文就是將他們集合起來(lái),說(shuō)下具體的用法,小伙伴們可以參考下。2015-03-03
Java版超大整數(shù)階乘算法代碼詳解-10,0000級(jí)
這篇文章主要介紹了Java版超大整數(shù)階乘算法代碼詳解-10,0000級(jí),具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01
Java中的StringTokenizer實(shí)現(xiàn)字符串切割詳解
這篇文章主要介紹了Java中的StringTokenizer實(shí)現(xiàn)字符串切割詳解,java.util工具包提供了字符串切割的工具類StringTokenizer,Spring等常見(jiàn)框架的字符串工具類(如Spring的StringUtils),需要的朋友可以參考下2024-01-01

