ゞ沉默是金ゞ

          魚離不開水,但是沒有說不離開哪滴水.
          posts - 98,comments - 104,trackbacks - 0

          jconsole 可以很方便的監控本機的所有 Java 應用和遠程的應用.

          監控本地應用

           首先就是啟動您要監控的應用, 例如我用 JDK 1.6 來啟動了 Tomcat, 或者 Eclipse 也可以, 可以在任務管理器(Ctrl+Alt+Del可以調出來, 或者在任務欄點擊右鍵)里看到進程ID, 例如我這里是 6132.

          接著在 JDK 安裝目錄中(<JDK_HOME>/bin/jconsole.exe)啟動 jconsole.exe (雙擊或者在 cmd 里面敲入 jconsole), 主界面會提示您建立一個新連接:

          可以看到進程ID, 選擇它, 然后點擊"連接". 這些 ID 必須都是用 JDK 1.6 的 java.exe 啟動的, 否則在列表里看不到.

          JConsle 能監控內存,線程,類的數目和CPU然后點擊各個 Tab 可以看到詳細的輸出, 詳細的輸出包括:
          內存: 堆/非堆, 峰值, 內存的各個部分, 例如 Perm, Eden 等的大小曲線圖.
          線程: 峰值, 所有線程的列表, 堆棧跟蹤(哪個對象中的線程)等. 還可以強制執行GC.
          類: 峰值, 類總數曲線圖.
          MBean: 一些 JVM 參數的詳細 MBean 信息.

          監控遠程進程

          首先需要在運行的應用上啟用遠程管理, 參數如下(簡單期間就不加用戶驗證了):
          java -Dcom.sun.management.jmxremote.port=1090 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar ../demo/jfc/Java2D/Java2Demo.jar

          然后連接的時候選擇遠程進程, 地址輸入:

          localhost:1090

          即可.當然在別的電腦上(一般是局域網)可以輸入那個電腦的IP.

          綜述: 使用 JConsole 可以簡單的監控 Server 狀態, 但是本身要占一定的資源, 不過 JVM 自帶的監控, 理論上講應該是占資源很小很小的, 可以用它來方便的了解 Web 服務器應用進程的狀態. 如果要調優應用, 還是使用 JProfiler 等工具更好一些, 當然它們占的資源也更大.

          posted on 2009-05-06 14:47 ゞ沉默是金ゞ 閱讀(1601) 評論(1)  編輯  收藏 所屬分類: Java SE

          FeedBack:
          # re: jconsole[未登錄]
          2009-05-08 07:32 | shaofan
          非常有用,謝謝分享。  回復  更多評論
            
          主站蜘蛛池模板: 抚顺市| 公安县| 六枝特区| 曲麻莱县| 关岭| 开阳县| 榆树市| 通许县| 同江市| 崇义县| 岑溪市| 桃园市| 交城县| 建平县| 驻马店市| 定安县| 西峡县| 遂平县| 桦南县| 盘山县| 隆德县| 武功县| 东源县| 新野县| 东辽县| 西昌市| 沾化县| 五大连池市| 临漳县| 石嘴山市| 内乡县| 兰州市| 松滋市| 东宁县| 新丰县| 抚顺市| 农安县| 交城县| 保靖县| 历史| 法库县|