PS,1880后程序員

          看不完的牙,寫不完的程序,跑不完的步。
          隨筆 - 97, 文章 - 34, 評論 - 10, 引用 - 0
          數據加載中……

          使用Eclipse Memory Analyzer對Tomcat進行內存分析

          測試環境

          Java JDK1.6

          Tomcat Tomcat 5.5

          Eclipse Memory AnalyzerEMA 1.2.1(直接去Eclipse下載,無需安裝哈)

           

          獲得Heap Dump文件

          Eclipse Memory Analyzer是針對Heap Dump文件進行分析的,因此第一步就是要獲得Heap Dump文件。

          步驟:

          獲得線程ID啟動jconsole.exe,位于jdk目錄下的bin目錄,jconsolejdk自帶的一個內存分析工具,它提供了圖形界面。可以查看到被監控的jvm的內存信息,線程信息,類加載信息,MBean信息。

          此處我們可以找到需要檢測的Tomcat的線程ID

          獲得Heap Dump文件。使用jmap來獲得Heap Dump文件,命令行如下:

          jmap -dump:format=b,file=heap.bin 3888

          此處3888就是Tomcat對應的線程ID

          生成分析報告

          啟動MemoryAnalyzer.exe,打開指定的Heap Dump文件。File -> Open Heap Dump

          MAT針對指定的Heap Dump文件進行分析,生成內存泄露檢測報告



          看懂分析報告

          要想看懂EAT的報告,與其到網上去找各種神貼,不如老老實實找本書,先簡單復習下JVMHeap是怎么工作滴?gc的大概一個工作機制。否則EAT的報告就像天書一樣。EAT只是工具,不是目的。

          posted on 2013-01-17 10:55 amenglai 閱讀(1733) 評論(0)  編輯  收藏 所屬分類: 我愛內存泄露

          主站蜘蛛池模板: 岫岩| 抚州市| 哈密市| 中山市| 龙陵县| 谷城县| 阿拉善盟| 汶川县| 鹤岗市| 枝江市| 双峰县| 榕江县| 洱源县| 都匀市| 彰化县| 九龙城区| 宁安市| 女性| 巧家县| 汕头市| 黄浦区| 乌海市| 宜君县| 日照市| 滦平县| 新乡县| 张北县| 南岸区| 哈尔滨市| 砚山县| 太保市| 寿光市| 芒康县| 阜平县| 进贤县| 淮滨县| 佛冈县| 黄陵县| 宣威市| 梁平县| 益阳市|