常用鏈接

          統(tǒng)計(jì)

          最新評(píng)論

          JProfiler試用手記(轉(zhuǎn))

           JProfiler是一款Java的性能監(jiān)控工具。可以查看當(dāng)前應(yīng)用的對(duì)象、對(duì)象引用、內(nèi)存、CPU使用情況、線程、線程運(yùn)行情況(阻塞、等待等),同時(shí)可以查找應(yīng)用內(nèi)存使用得熱點(diǎn),即:哪個(gè)對(duì)象占用的內(nèi)存比較多;或者CPU熱點(diǎn),即:哪兒方法占用的較大得CPU資源。我使用的是4.3.2版本,以前試用過3**版本,不過那個(gè)bug比較多,容易死,4**版本穩(wěn)定多了。

               有了上面那些信息對(duì)于系統(tǒng)的調(diào)優(yōu)會(huì)有很大幫助。這里提供有幾篇文章供參考:獲取、介紹簡單入門使用JProfiler解決實(shí)際問題。這幾篇文章基本介紹了常見東西了,下面說點(diǎn)心得。

          1. JProfiler監(jiān)控是要消耗系統(tǒng)資源的,所以一般情況下不要用于性能測(cè)試時(shí)候的監(jiān)控。
          2. 如果要用于相對(duì)大壓力情況下,可以有選擇的打開監(jiān)控項(xiàng),不用所有都打開。主要有兩個(gè),一個(gè)是內(nèi)存監(jiān)控,打開的情況下可以查找內(nèi)存分配熱點(diǎn)。一個(gè)是CPU監(jiān)控,打開的情況下可以查看CPU使用熱點(diǎn)。
            如圖所示,紅筆標(biāo)注部分。如果兩個(gè)都關(guān)閉的話,還是可以跑一定壓力的,同時(shí)還可以監(jiān)控對(duì)象數(shù)量。
          3. 個(gè)人認(rèn)為最好用的(也是用的最多的)是查詢當(dāng)前的對(duì)象的數(shù)量。數(shù)量監(jiān)控很重要,如果你使用了單例,那么你只會(huì)看到有一個(gè)對(duì)象存在,如果多了就說明程序有問題了。同樣,如果應(yīng)用進(jìn)行一系列操作,檢查一下該銷毀的對(duì)象是否還繼續(xù)存在,如果沒有釋放,就得考慮是否存在內(nèi)存溢出了。
          4. JProfiler還提供了一個(gè)比較好的檢查內(nèi)存溢出得工具。他可以查找某個(gè)對(duì)象的引用情況,即:當(dāng)你發(fā)現(xiàn)某個(gè)該釋放掉的對(duì)象沒有釋放,就可以看一下哪個(gè)實(shí)例在引用它,找到了根即找到了溢出點(diǎn)。
            具體操作如下:在 “Memory Views”界面中右鍵選擇你要監(jiān)控的對(duì)象,選擇第一項(xiàng)“Take Heap Snapshot for Selection”,選擇完成后會(huì)進(jìn)入“Heap Walker”界面,界面下面提供幾個(gè)功能,選擇“References”即可 。如圖:

          5. JProfiler提供不同的觀察粒度,提供對(duì)類的監(jiān)控、對(duì)包的監(jiān)控、對(duì)J2EE組件的監(jiān)控,同時(shí)過濾器也比較好用,直接定位你關(guān)注的包或類即可。
          6. JProfiler的監(jiān)控可能與應(yīng)用之間存在一定時(shí)間差,所以有些時(shí)候需要等待刷新,才能顯示正確系統(tǒng)情況。

          posted on 2008-04-22 15:19 九寶 閱讀(498) 評(píng)論(1)  編輯  收藏 所屬分類: Java

          評(píng)論

          # re: JProfiler試用手記(轉(zhuǎn)) 2011-12-22 15:54 小曾

          具體怎么 用啊,你說的太籠統(tǒng)啊  回復(fù)  更多評(píng)論   

          主站蜘蛛池模板: 平原县| 扶余县| 云浮市| 石楼县| 张家港市| 东平县| 中西区| 读书| 石狮市| 芦溪县| 兴业县| 汶川县| 嘉峪关市| 正蓝旗| 石狮市| 唐海县| 滦南县| 六枝特区| 青岛市| 永安市| 化隆| 榕江县| 宝丰县| 宿州市| 哈巴河县| 榆林市| 双峰县| 石柱| 武夷山市| 渭南市| 突泉县| 青田县| 墨脱县| 务川| 涿州市| 阿拉善盟| 白山市| 乐平市| 浦城县| 克山县| 枣强县|