[譯]Java 垃圾回收的監控和分析

說明:這篇文章來翻譯來自於JavapapersJava Garbage Collection Monitoring and Analysijava

在這個系列的Java垃圾回收教程中,咱們將看到可用於垃圾回收監控和分析的工具。而後使用一個工具去監控用於舉例的java程序的垃圾回收過程。若是你是一個新人,你最好通讀這個系列的教程。你能夠從Java垃圾回收的介紹開始。工具

Java垃圾回收監控和分析的工具

下面是幾個可用的工具。它們每個都有本身的優點和劣勢。經過選擇合適的工具和使用有組織的方式來分析咱們能夠提高程序的表現力。在這個教程中咱們將使用Java VisualVM插件

  • Java VisualVM
  • Naarad
  • GCViewwe
  • IBM Pattern Modeling and Analysis Tool for Java Garbage Collector
  • HPjmeter
  • IBM Monitoring and Diagnostic Tools for Java – Garbage Collection and Memory
  • Visualizer
  • Verbose GC Analyzer

Java VisualVM

Java VisualVM能夠經過JavaSE SDK的安裝中免費獲取。看一下你的JDK的安裝的可執行二進制文件夾,路徑是\Java\jdk1.8.0\bin。和javac和java工具一塊兒還有其餘不少可以使用的工具。jvisualvm只是他們其中的一個。翻譯

Java VisualVM 提供了一個可視化的接口用來展現關於正在運行的java程序的信息。它是一個將不少工具綁定成的工具。像JConsole、jstat、jinfo、jstack、jmap這些工具如今都是Java VisualVM的一部分了。code

Java VisualVM可以用於orm

  • 生成和分析堆內存垃圾
  • 查看和操做MBeans
  • 監控垃圾回收
  • 內存和CPU分析

1.運行 VisualVM

jvisual 可以在JDK的安裝目錄中找到。
Start-Java-VisualVM對象

Java-VisualVM

2.安裝VisualGC 插件

爲了有一個更棒的視覺感覺關於Java GC 過程,咱們須要安裝一個Visual GC 插件教程

Visual-GC-Plugin

3.監控垃圾回收(GC)

如今咱們能夠監控垃圾回收過程了。開啓你的Java程序,而後它能夠自動被發現而且被展現在Java VisualVM界面中。在Local節點的下面的左邊的Application面板中,全部的本地運行的java程序都會被列舉出來。接口

Java VisualVM是一個java程序並且它也會被顯示在裏面。爲了教程的目的,咱們將監控VisualVM 程序自己。進程

雙擊Local節點的下面的VisualVM圖標。

Analysis

如今程序的監控面板已經在右邊被打開了。那邊有不一樣的標籤頁去顯示和程序相關的不一樣的監控部分。咱們如今的注意力點在Visual GC,點擊它吧,

Memory-Space-Allocation

在上面的圖片中,展現了內存區中Old、S0、S1的利用率。在下面的圖中,顯示了每段智能的分配和回收內存。它以定義好的頻率來刷新。

Graphs

上面的圖表示的是一個程序正常的狀況。若是存在內存泄露或者其餘不正常的狀況,它將明顯的進行回收操做。咱們至少能夠知道有一個問題和對象內存的分配和來及回收有關。在其餘的標籤頁像Threads和Thead DUmp的幫助下,咱們能夠減小這種問題。

Monitor標籤頁中,咱們可以經過一個時間序列圖來監控堆內存的利用率。咱們可以經過Perform GC按鈕來初始化垃圾回收進程。

Perform-GC

Sampler標籤頁中,咱們可以開啓內存和CPU分析進程,它將詳細的展現每一個實例的利用率。它能夠幫助去明確表現出來的問題。

Instances-Memory-Allocation

伴隨着這部分教程,咱們系列教程已經來到了尾聲。

相關文章
相關標籤/搜索