国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

MC4J遠(yuǎn)程監(jiān)測Tomcat集群-JMX助Tomcat1(圖)

2019-11-18 13:04:03
字體:
供稿:網(wǎng)友

  摘要
  
  最新版本的Tomcat(5.5.9)采用java治理擴(kuò)展(JMX)治理beans(managed beans)技術(shù)實(shí)現(xiàn)了對servlet容器的治理,其中包括監(jiān)測所有的集群(cluster)元素和session復(fù)制情況。本文探討了Tomcat對集群和session復(fù)制的支持,作者Srini Penchikala介紹了所有能用MBeans API監(jiān)測的Tomcat集群組件。他還通過一個(gè)運(yùn)行在集群上的Web應(yīng)用示例展示了如何監(jiān)測集群的細(xì)節(jié)和session復(fù)制,以及用JMX控制臺(tái)顯示服務(wù)器的統(tǒng)計(jì)數(shù)據(jù)。(原文2,300詞,2005年8月1日發(fā)表)
  
  J2SE5.0在監(jiān)測和治理方面的支持很全面,擁有對Java平臺(tái)及運(yùn)行于其上的應(yīng)用進(jìn)行遠(yuǎn)程監(jiān)測能力。J2SE 5.0中包含了Java治理擴(kuò)展(JMX)遠(yuǎn)程監(jiān)測技術(shù),這是對JVM監(jiān)控能力的一個(gè)新的補(bǔ)充。Java規(guī)范第160號需求是JMX遠(yuǎn)程監(jiān)測規(guī)范,它是關(guān)于遠(yuǎn)程訪問機(jī)制的,為基于JMX的代理制定了一套遠(yuǎn)程客戶端API。
  
  Tomcat 5.5在設(shè)計(jì)上借助了J2SE 5.0內(nèi)建的JMX技術(shù),5.5版(由Tomcat 5.0.27發(fā)展而來)實(shí)現(xiàn)了最新的Servlet (2.4) 規(guī)范和JavaServer Pages (2.0)規(guī)范,并對Tomcat服務(wù)器架構(gòu)在很大程度上做了重新設(shè)計(jì)和組合。它運(yùn)行更加穩(wěn)定,與Tomcat 4.x相比,性能、伸縮性、可靠性、JMX監(jiān)測、集成的session集群和應(yīng)用部署等方面都有了提高。
  
  有了最新版的Tomcat和J2SE 5.0的JMX技術(shù),我們就可以通過JMX來使用servlet容器的屬性和方法,同時(shí)減少與JMX相關(guān)的復(fù)雜編碼。我在本文中將介紹如何在啟動(dòng)Tomcat servlet容器時(shí)啟用遠(yuǎn)程JMX監(jiān)測,以及一個(gè)運(yùn)行在有session復(fù)制功能的Tomcat集群上的Web應(yīng)用示例。最后,我們用JMX客戶端查看集群元素和HTTP session的細(xì)節(jié)。不過在我們深入探討遠(yuǎn)程JMX監(jiān)測之前,還是先看一下構(gòu)成Tomcat集群的組件類。
  
  集群元素
  
  一個(gè)Tomcat集群由六個(gè)主要的組件構(gòu)成:cluster(集群),membership(成員),sender(發(fā)送者),receiver(接收者),replication valve(復(fù)制閥)和deployer(部署者)。
  
  表1說明了Tomcat中的每個(gè)組件是如何完成集群和session復(fù)制工作的。
  
  表1 Tomcat集群元素
  
 MC4J遠(yuǎn)程監(jiān)測Tomcat集群-JMX助Tomcat1(圖)(圖一)

  有關(guān)集群元素的具體說明參見Tomcat 5.5的集群文檔。
  
  Tomcat 5.5在集群、session復(fù)制、服務(wù)器監(jiān)測和治理方面相對以前的版本(Tomcat 4.1 和 5.0)做了一些改進(jìn)。在Tomcat 4中幾個(gè)服務(wù)器組件(如host、engine和service)可用MBeans來監(jiān)測,而在Tomcat 5.5中Yoav Shapira、Filip Hanik和其他的Tomcat開發(fā)者為監(jiān)測集群元素編寫了JMX實(shí)現(xiàn)。
  
  既然我們已經(jīng)了解了每個(gè)Tomcat集群元素的功能,接下來讓我們看看各種連接Tomcat服務(wù)器集群和監(jiān)測集群情況的JMX客戶端工具。
  
  JMX客戶端
  
  JMX客戶端是一個(gè)用來連接JMX代理(運(yùn)行在本地或遠(yuǎn)程)的圖形化用戶界面(客戶機(jī)/服務(wù)器或瘦客戶端)。理想的JMX客戶端具備以下特點(diǎn),能夠有效地監(jiān)測應(yīng)用服務(wù)器而不為其帶來額外的負(fù)擔(dān):
  
  ---對系統(tǒng)和網(wǎng)絡(luò)資源的低占用
  ---能保持系統(tǒng)的穩(wěn)定和性能
  ---少量的或無需非凡設(shè)置(即使需要設(shè)置,也是簡單明了而不是編程方式的)
  ---可提供良好的報(bào)告
  
  J2SE 5.0附帶了一個(gè)稱為Jconsole的JMX客戶端工具,可用來查看JVM運(yùn)行時(shí)的具體情況。Tomcat的安裝中包含了一個(gè)叫做JMXPRoxyServlet的JMX servlet,可用來查看、更新Tomcat MBeans的屬性。它是一個(gè)能查看、操作運(yùn)行于Tomcat容器中的MBeans的輕量級代理,通過與命令行腳本共同作用來監(jiān)測和改變Tomcat的內(nèi)部運(yùn)行。JMX Query和Set命令分別用于查詢MBeans和修改它們的屬性和操作。
  
  除了這兩個(gè)工具,還有幾個(gè)第三方開源JMX客戶端應(yīng)用程序(本文的資源部分有與之相關(guān)的鏈接):
  
  ---XMOJO
  ---jManage
  ---MX4J
  ---Spring JMX
  ---JMX-Html適配器
  ---MC4J JMX控制臺(tái)
  
  在本文中我將介紹如何安裝和配置MC4J,遠(yuǎn)程連接到Tomcat Servlet容器,以及監(jiān)測服務(wù)器集群所有的MBeans組件。
  
  用MC4J實(shí)現(xiàn)JMX遠(yuǎn)程監(jiān)測與治理
  
  MC4J控制臺(tái)提供了以下功能:
  
  ---以樹狀方式顯示MBeans的屬性、操作和通知
  ---設(shè)置MBeans屬性值
  ---執(zhí)行MBeans操作
  ---連接多個(gè)J2EE應(yīng)用服務(wù)器
  ---圖形化顯示MBeans屬性
  
  我在本文的示例中用的是MC4J 1.2 Beta 9。安裝MC4J可從SourceForge下載可執(zhí)行文件(MC4J-12b9-Windows.exe),然后雙擊該文件進(jìn)行安裝,安裝過程中會(huì)提示選擇JDK宿主目錄和MC4J安裝目錄(本文是安裝在c:/dev/tools目錄下)。
  
  為JMX設(shè)置系統(tǒng)屬性
  
  只有對一些系統(tǒng)屬性進(jìn)行設(shè)置后才能使用JMX遠(yuǎn)程監(jiān)測,這些屬性由一個(gè)在JAVA_HOME/lib/management目錄下名為management.properties的屬性文件設(shè)定。表2給出了啟用JXM監(jiān)測所必須設(shè)定的屬性。
  
  表2 啟用JMX監(jiān)測所需的系統(tǒng)屬性
  
 MC4J遠(yuǎn)程監(jiān)測Tomcat集群-JMX助Tomcat1(圖)(圖二)

  設(shè)置密碼文件非常重要,非凡是在多用戶的環(huán)境下。我按以下步驟在JAVA_HOME/lib/management目錄下建立密碼文件:
  
  ---用密碼模板文件(文件名jmxremote.passWord.template)拷貝出一個(gè)名為jmxremote.password的新文件
  ---將密碼文件的文件權(quán)限設(shè)置為只有你能讀寫
  ---為角色設(shè)置密碼,如monitorRole 和controlRole
  ---當(dāng)啟動(dòng)JVM時(shí)系統(tǒng)屬性已經(jīng)設(shè)置成表2的樣子
  
  Tomcat集群的配置
  
  我采用Tomcat 5.5.9組建Tomcat集群。本文使用的服務(wù)器集群由兩個(gè)Tomcat實(shí)例組成,它們共享session狀態(tài),通過負(fù)載均衡在集群節(jié)點(diǎn)間分配處理請求。我的集群配置用到了SimpleTcpCluster 和 DeltaManager選項(xiàng)(使用默認(rèn)值),在我的系列文章“Tomcat的集群與負(fù)載均衡”(ONJava.com,2004年)中對集群的組建有更具體的闡述。
  
  為了能夠在啟動(dòng)Tomcat服務(wù)器時(shí)啟用遠(yuǎn)程JMX監(jiān)測,要對位于CATALINA_HOME/bin目錄下的 Tomcat啟動(dòng)腳本(catalina.bat 或catalina.sh)做如下修改:
  
  set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote.port=8999
  
  注重:你在對第二個(gè)Tomcat實(shí)例的jmxremote端口設(shè)置時(shí)必須指定不同的端口(9999)。
  
  圖1 給出了集群的拓?fù)浼?xì)節(jié)。
  
 MC4J遠(yuǎn)程監(jiān)測Tomcat集群-JMX助Tomcat1(圖)(圖三)
點(diǎn)擊查看大圖

  
圖1 Tomcat集群架構(gòu)示意圖。

  
  表3列出了組建Tomcat集群所需的各項(xiàng)配置參數(shù)。
  
  表3 集群配置具體說明
  
MC4J遠(yuǎn)程監(jiān)測Tomcat集群-JMX助Tomcat1(圖)(圖四)


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 花垣县| 垫江县| 宝清县| 沅陵县| 乡宁县| 肃宁县| 新野县| 梨树县| 高陵县| 沂水县| 马山县| 循化| 府谷县| 延津县| 咸阳市| 老河口市| 抚松县| 长宁区| 秦皇岛市| 镇江市| 淮安市| 读书| 镇安县| 青岛市| 栾城县| 高淳县| 广水市| 宣化县| 大渡口区| 浦县| 富平县| 瑞昌市| 米林县| 上杭县| 林州市| 达拉特旗| 英吉沙县| 民乐县| 基隆市| 驻马店市| 泰顺县|