JMX是Sun在Java5中提出的一種用于監(jiān)控JVM運(yùn)行狀態(tài)的框架和規(guī)范,通過JMX可以很方便的檢測Tomcat集群各個(gè)節(jié)點(diǎn)的運(yùn)行狀況。了解JMX可以看這篇文章http://www.ibm.com/developerworks/cn/java/j-lo-jse63/。
具體操作步驟非常簡單,首先用文本編輯器打開一個(gè)Tomcat節(jié)點(diǎn)的Catalina.bat,找到setJAVA_OPTS=%JAVA_OPTS%-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager-Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties",改為set JAVA_OPTS=%JAVA_OPTS%-Dcom.sun.management.jmxremote.port=10090-Dcom.sun.management.jmxremote.ssl=false-Dcom.sun.management.jmxremote.authenticate=false-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager-Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties",這里的10090是監(jiān)控客戶端即jconsole通過RMI遠(yuǎn)程訪問JMX代理的端口,注意在一臺服務(wù)器運(yùn)行多個(gè)tomcat節(jié)點(diǎn)時(shí)需設(shè)置不同端口,筆者設(shè)為10090,重啟當(dāng)前tomcat節(jié)點(diǎn)。
運(yùn)行jconsole(在jdk安裝目錄的bin目錄下),輸入需要監(jiān)控的tomcat節(jié)點(diǎn)的IP和剛才配置的端口,就可以看到類似下圖的界面了,在這個(gè)界面里可以了解到當(dāng)前節(jié)點(diǎn)的所有運(yùn)行時(shí)狀態(tài)信息。