<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    朋的博客

    MySQL資料,Java技術,管理思想,博弈論,Ajax,XP極限編程,H.264,HEVC,HDR
    隨筆 - 86, 文章 - 59, 評論 - 1069, 引用 - 0
    數據加載中……

    利用JDK1.5的工具對遠程的Java應用程序進行監測



    ???最近需要在
    Linux 系統上對 Java 的應用系統進行監測,就用到了 JDK1.5 附帶的工具 jps Java Virtual Machine Process Status Tool ,查看 JVM 進程狀態的工具), jstat(Java Virtual Machine Statistics Monitoring Tool ,運行數據監測工具 ) 以及 jstatd jstat daemon 程序,利用 RMI 進行遠程監控)。(建議可以使用 jvmstat 包,可視化的 jstat 監控工具,可以在 http://java.sun.com/performance/jvmstat/ 下載)

    ?

    部署過程描述如下:

    ?

    1.?????? 在需要監測的機器(我這里是 Linux 機器)部署相關應用:

    a)???????? 在你需要進行監測的機器上安裝 JDK1.5 (狂暈一陣子),別倒下(這個部分就不多說了,因為如果這里還要解釋的話,那我就暈了)。

    b)??????? 正確設置 Java 的運行環境。

    c)???????? 啟動 jstatd 進程。

    命令如下: ./jstatd -J-Djava.security.policy=all.policy

    一般來說呢,這里是會出現問題的,那就是 permission 的問題了,還好, Sun 的網站上給了相關的解決方法,方法如下,在 jdk/…/security/ java.policy 文件中添加下面的代碼:

    grant codebase "file:${java.home}/../lib/tools.jar" {

    permission java.security.AllPermission;

    };

    然后重新啟動 jstatd 進程。

    d)??????? 完了,別讓人亂動就好了,我經常是不小心就按 CTRL+C 把程序關閉了。

    2.?????? 在客戶端(監控者使用的機器)的操作:

    a)???????? 使用 jps 查看遠端機器有哪些 JVM 進程在使用當中,命令如下:

    jps 172.25.1.24 // 遠端機器的 IP 地址或名稱

    屏幕輸入如下:

    13686 Jstatd

    14115 XXXJavaServer

    15117 Jserver

    b)??????? 從上面可以看到遠端機器的 Jstatd 進程已經啟動起來了。我們就可以使用 jstat 對相關進程的具體情況進行查看。

    Jstat 命令用法如下:

    jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]

    解釋如下:

    Option 包括以下選項:

    -class

    -compiler

    -gc

    -gccapacity

    -gccause

    -gcnew

    -gcnewcapacity

    -gcold

    -gcoldcapacity

    -gcpermcapacity

    -gcutil

    -printcompilation

    ?

    Vmid 就是 jps 查看到的進程 id ,如上 Jserver 的進程 id 15117

    Interval 是時間間隔,單位為毫秒, 1000 就是一秒。

    Count 就是需要查看的次數。

    ?

    例子假設我們需要查看 172.25.1.24 機器 vmid 15117 gc 的情況,可以輸入下面的命令:

    jstat -gc 15117@172.25.1.24 1000 3

    然后你能看到四行信息(一行為 title ,剩下的就是你要的信息了),仔細看看就可以發現很多信息的了(如果不明白,可以問我, 6-6 )。

    c)???????? 那么下面就開始配置可視化的監控包, jvmstat ,下載好了后,解壓到任意目錄。

    執行 visualgc ,然后就可以看到可視化的監控窗口。不過,好像現在只提供 Linux 下的 visualgc 的啟動腳本,所以在 Windows 下或者 Linux 最好使用我下面提供的方式:

    Linux 下:

    /usr/java/jdk1.5/bin/java –Xbootclasspath/p:” /usr/java/jdk1.5/lib/tools.jar” –jar jvmstat/jars/visualgc.jar vmid@server

    Windows 下也一樣,就是改改 jdk 的路徑就好了。

    成功執行后你就能看見一個 java 的監視窗口(樣子還蠻專業的),這個時候就 可以開始監視了。

    posted on 2007-03-14 13:50 benchensz 閱讀(4121) 評論(4)  編輯  收藏

    評論

    # re: 利用JDK1.5新工具進行系統性能進行監測  回復  更多評論   

    據說壓力測試的時候用 visualgc 會 Java 死機.
    2007-03-14 14:22 | BeanSoft

    # re: 利用JDK1.5新工具進行系統性能進行監測  回復  更多評論   

    確實是比較容易導致Remote端的JVM CRASH,不過還好我還沒遇見。:-)
    2007-03-14 21:19 | 陳朋奕

    # re: 利用JDK1.5的工具對遠程的Java應用程序進行監測[未登錄]  回復  更多評論   

    把運行后得到的結果,有個貼圖就好了,這樣可以便于我們沒做之前,可以先了解能得哪些信息.
    2008-01-24 03:57 | test

    # re: 利用JDK1.5的工具對遠程的Java應用程序進行監測  回復  更多評論   

    能不能解釋一下運行結果后信息中title的意義,謝謝!!!!!!
    2008-08-14 09:03 | zzz

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 曰批全过程免费视频在线观看无码 | 亚洲视频免费在线看| 6080午夜一级毛片免费看 | 鲁丝片一区二区三区免费| 亚洲精品成人久久| 国产伦精品一区二区三区免费下载 | 亚洲国产一级在线观看| 无码av免费一区二区三区试看| 亚洲综合丁香婷婷六月香| 国产成人亚洲精品影院| 亚洲免费在线视频播放| 成人一级免费视频| 亚洲免费福利在线视频| 国产亚洲精aa成人网站| 在线jlzzjlzz免费播放| 高清一区二区三区免费视频| 亚洲乱亚洲乱妇24p| 亚洲国产美国国产综合一区二区| 日本特黄a级高清免费大片| 99热在线观看免费| caoporn成人免费公开| 中文字幕亚洲精品无码| 亚洲成A∨人片在线观看不卡| 麻豆国产入口在线观看免费| 国产精品白浆在线观看免费 | 亚洲精品在线免费观看| 免费看黄福利app导航看一下黄色录像| 亚洲视频网站在线观看| 久久亚洲国产精品123区| 成人免费无码大片a毛片软件| 久久久久久AV无码免费网站 | 亚洲今日精彩视频| 亚洲天堂免费在线视频| 日韩电影免费在线| 曰曰鲁夜夜免费播放视频| 国产真人无码作爱视频免费| 成人免费夜片在线观看| 77777亚洲午夜久久多人| 免费爱爱的视频太爽了| 麻豆最新国产剧情AV原创免费| 91免费在线视频|