ゞ沉默是金ゞ

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

          jconsole 可以很方便的監(jiān)控本機(jī)的所有 Java 應(yīng)用和遠(yuǎn)程的應(yīng)用.

          監(jiān)控本地應(yīng)用

           首先就是啟動(dòng)您要監(jiān)控的應(yīng)用, 例如我用 JDK 1.6 來啟動(dòng)了 Tomcat, 或者 Eclipse 也可以, 可以在任務(wù)管理器(Ctrl+Alt+Del可以調(diào)出來, 或者在任務(wù)欄點(diǎn)擊右鍵)里看到進(jìn)程ID, 例如我這里是 6132.

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

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

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

          監(jiān)控遠(yuǎn)程進(jìn)程

          首先需要在運(yùn)行的應(yīng)用上啟用遠(yuǎn)程管理, 參數(shù)如下(簡單期間就不加用戶驗(yàn)證了):
          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

          然后連接的時(shí)候選擇遠(yuǎn)程進(jìn)程, 地址輸入:

          localhost:1090

          即可.當(dāng)然在別的電腦上(一般是局域網(wǎng))可以輸入那個(gè)電腦的IP.

          綜述: 使用 JConsole 可以簡單的監(jiān)控 Server 狀態(tài), 但是本身要占一定的資源, 不過 JVM 自帶的監(jiān)控, 理論上講應(yīng)該是占資源很小很小的, 可以用它來方便的了解 Web 服務(wù)器應(yīng)用進(jìn)程的狀態(tài). 如果要調(diào)優(yōu)應(yīng)用, 還是使用 JProfiler 等工具更好一些, 當(dāng)然它們占的資源也更大.

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

          FeedBack:
          # re: jconsole[未登錄]
          2009-05-08 07:32 | shaofan
          非常有用,謝謝分享。  回復(fù)  更多評論
            
          主站蜘蛛池模板: 泰和县| 乐昌市| 乌拉特中旗| 白朗县| 五台县| 泽普县| 杭锦后旗| 濮阳县| 武鸣县| 车致| 扶余县| 鹰潭市| 象山县| 响水县| 朝阳县| 泗阳县| 抚宁县| 深泽县| 潼关县| 上饶县| 延边| 堆龙德庆县| 东阿县| 临武县| 望江县| 玉田县| 平度市| 望谟县| 潞城市| 缙云县| 化隆| 阿拉善左旗| 洛阳市| 个旧市| 宜良县| 香河县| 苗栗县| 怀来县| 沙湾县| 开远市| 惠东县|