初級Java工程師也能輕鬆進行JVM調優了

本文來自: PerfMa技術社區

PerfMa(笨馬網絡)官網java

Java 性能調優對於每個Java程序員來講,是實現技術進階必不可缺的知識了。好比:一臺8G的服務器怎麼配置JVM參數?個人JVM參數是否合理?如何分析內存Dump文件?如何分析線程Dump文件?等等...,你確定或多或少都遇到過,熟知Java虛擬機的工做原理能夠大幅提高平常編程的效率,對尋常Bug的修復更是垂手可得。程序員

爲此,PerfMa推出了一款 Java 應用綜合體檢工具,將本來枯燥繁雜的配置項、線程狀態等信息經過清晰美觀的可視化界面展示,且對重要指標進行了分析和詳解,來幫助 Java 工程師們能夠更便捷的進行應用性能調優。 編程

下面就讓咱們來全面瞭解一下如何使用 XPocket 吧~服務器

「XPocket - Java 應用綜合體檢」

一款針對 Java 應用程序的命令行工具包。經過簡單的交互,能夠對 Java 程序進行綜合體檢。網絡

  • JVM 參數優化:全面診斷JVM參數,給出綜合優化建議,並提供優化後的參數列表,即便不太懂JVM參數的初級用戶,也能夠藉助本產品獲得相對合理的參數列表。
  • Java線程分析:更直觀的定位各類線程,線程池泄露問題。更全面的展現線程,線程池,鎖等數據的內在聯繫。
  • 更多功能正在增強中,敬請期待~

最新版,工具下載地址:工具

前置條件

JDK 1.6 ~ 1.8,環境變量 JAVA_HOME 已設置。性能

準備待檢 Java 進程

啓動任意的 Java 進程。這裏以一個從 Spring Boot 官網生成 Web Demo 工程爲例,爲了方便展現效果,爲它加上一些 JVM 參數:學習

java -Xmx256M -Xms100M -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256M -jar demo-0.0.1-SNAPSHOT.jar

啓動

進入對應版本號目錄優化

  • Window 用戶,雙擊執行 xpocket.bat
  • Linux/MacOS 用戶,命令行執行 sh xpocket.sh

支持遊客模式,但遊客的分析數據會被公開,推薦激活後使用。spa

Attach Java 進程

激活成功(或以遊客模式登入)後,自動列出當前運行的Java進程。選擇一個進程,輸入對應的序號,回車。

JAVA 線程分析

輸入thread,回車。 將執行一次線程Dump並分析。 能夠查看當前進程的線程狀態統計、線程池概況、鎖概況。

能夠根據提示,訪問「XSheepdog - Java線程Dump分析」頁面,獲取更加詳細的線程分析報告。

JVM 參數優化

輸入args,回車。

能夠查看進程的JVM參數,並根據當前實際環境信息(內存、CPU、操做系統、JDK版本)生成一份針對性的優化建議。

能夠根據提示,訪問「XXFox - Java虛擬機參數分析」頁面,獲取更加詳細的JVM參數優化建議。

一塊兒來學習吧

PerfMa KO 系列課之 JVM 參數【Memory篇】

一個線程罷工的詭異事件

相關文章
相關標籤/搜索