序言
本文主要探討在Win下面關於JDK調試工具的配置和使用為主題。
關於Jvm調優工具的配置與使用共分為2篇,本文為第一篇Tomcat已startup模式進行運行;第二篇Tomcat以服務方式運行時詳見[第二篇]。
一: 基本環境
jdk :1.8.0_161
Tomcat :8.5.31
IDE :2018.1.2
二:基本配置
2.1 tomcat 基本配置
鑒於本次是在Win10下面進行配置測試,tomcat采用免安裝版(已注冊服務模式運行,前提已關閉自動運行)。
本文通過startup啟動tomcat進行測試,基本過程:參數配置將在環境變量中進行配置,以避免直接修改tomcat文件。
鑒於部分同學熟悉Linux不熟悉Win因此在此處把環境修改變量位置貼出來:
(最終配置如截圖)
2.3Tomcat環境變量配置
Java_opt1
-XX:+UseG1GC -XX:MaxGCPauseMillis=300 -XX:ParallelGCThreads=4 -XX:ConcGCThreads=4 -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+HeapDumpOnOutOfMemoryError
Java_opt2
-Xloggc:D:\tomcat_jvm_log\tomcat_gc.log -XX:HeapDumpPath=D:\tomcat_jvm_log\heapdump.hprof
Java_opt3
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
Java_opt4
-Djava.rmi.server.hostname=192.168.101.85 -Dcom.sun.management.jmxremote.port=9999
Java_opt5(帶密碼時)
-Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access
Java_OPTS(無密碼時)
%Java_opt1% %Java_opt2% %Java_opt3% %Java_opt4%
Java_OPTS(帶密碼時)
%Java_opt1% %Java_opt2% %Java_opt3% %Java_opt4% %Java_opt5%
注意事項:
紅色位置參數值請改為你本地配置,端口請在防火牆放行。
-Dcom.sun.management.jmxremote.authenticate=false表示在jvisualvm中通過遠程連接添加遠程監控的時候不需要輸入認證賬號和密碼;true表示需要輸入賬號和密碼,當需要賬號和密碼時請完成以下操作:【把JAVA_HOME/jre/lib/management下面的jmxremote.access和jmxremote.password拷貝到Tomcat的conf目錄下】;關於jmxremote.access、jmxremote.password的配置詳見2.5。
保存配置
2.4Tomcat-cataline.bat文件配置
第244行修改為:set JAVA_OPTS=%JAVA_OPTS% -server -Xms512m -Xmx512m -XX:MaxNewSize=256m
注意:-XX:PermSize=512M -XX:MaxPermSize=512m 在當前Tomcat版本中不被支持,若有配置則需要移除,PermSize換為參數名:MetaspaceSize。
2.5JDK遠程連接支持
在(需要開啟遠程監控的機子)JDK安裝目錄下面 配置jmx
cd %JAVA_HOME%/jre/lib/management
復制 jmxremote.password.template 粘貼為 jmxremote.password
編輯器打開 jmxremote.password文件,在文件底部取消以下兩行注釋(刪除#符號)(慎重操作)
monitorRole QED
controlRole R&D
編輯器打開jmxremote.access文件把以下兩行注釋取消(慎重操作)
monitorRole readonly
controlRole readwrite \
至此已完成基本配置。
三:監控工具
3.1關閉CMD並重新打開(務必)
在以startup命令啟動Tomcat,以jvisualvm命令啟動VisualVM。
3.2垃圾回收日志
本示例存儲在D:\tomcat_jvm_log\目錄下面,以本次運行為例截圖
GC收集日志如下:
3.3啟動監測應用目標
以cmd 模式通過startup模式運行tomcat;如果測試IDEA,則啟動IDEA,調試模式運行原代碼
3.4啟動JDK監測工具
以cmd模式運行 Jconsole命令回車打開Jconsole監控工具開始監控,截圖瑞安:
以cmd模式運行jvisualvm命令回車打開Java VisualVM工具開始監控,截圖如下:
3.5Jconsole本地監控查看
以XXX應用為例
其他自行研究查看
3.6jvisualvm本地監控查看
3.7監控運行驗證
在截圖中可以看到紅框內得配置參數與前面得配置完全匹配,意味着配置成功,Tomcat已處於監控中。
3.8監控工具詳解
https://blog.csdn.net/moneyshi/article/details/81511687