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

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

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

    活到老,學(xué)到老

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      9 Posts :: 1 Stories :: 2 Comments :: 0 Trackbacks
        這是我讀了JMX In Action以后的總結(jié),這篇文章是這個(gè)系列的第一篇,主要介紹一下什么是JMX,為什么要使用JMX?以及簡單闡述一下JMX的架構(gòu)。
        什么是JMX?
        首先看一下維基百科的定義:JMX(Java Management Extensions,即Java管理擴(kuò)展)是Java平臺上為應(yīng)用程序、設(shè)備、系統(tǒng)等植入管理功能的框架。
    JMX可以跨越一系列異構(gòu)操作系統(tǒng)平臺、系統(tǒng)體系結(jié)構(gòu)和網(wǎng)絡(luò)傳輸協(xié)議,靈活的開發(fā)無縫集成的系統(tǒng)、網(wǎng)絡(luò)和服務(wù)管理應(yīng)用。
        隨著企業(yè) IT 規(guī)模的不斷增長,IT 資源(IT resource)數(shù)量不斷增加,IT 資源的分布也越來越分散。IT資源主要包括網(wǎng)絡(luò)和應(yīng)用等。管理網(wǎng)絡(luò)(硬件)的主要工具是
    簡單網(wǎng)絡(luò)管理協(xié)議(SNMP),硬件廠商一般都會在設(shè)備中提供SNMP hooks,但SNMP開發(fā)不是件容易的事情,而且需要掌握特定的語言,對JAVA開發(fā)者絕非易事。
        有些企業(yè)開發(fā)的應(yīng)用的時(shí)候,是不會考慮運(yùn)行時(shí)配置和管理問題。有些企業(yè)直接在產(chǎn)品中開發(fā)管理工具和界面。也有一些企業(yè)直接使用應(yīng)用服務(wù)器或web服務(wù)器的管理工具。
        現(xiàn)實(shí)世界的IT資源管理需求主要有以下一些:
        1、監(jiān)控平臺和硬件的健康。硬件可以通過SNMP,WEB服務(wù)器和應(yīng)用服務(wù)器可以通過他們自己的管理工具。數(shù)據(jù)庫也是一樣等。
       2、配置應(yīng)用層面的資源。比如配置應(yīng)用在查詢結(jié)果中每頁顯示的數(shù)量,配置數(shù)據(jù)庫連接池,或者外部請求數(shù)等。
       3、收集應(yīng)用程序的統(tǒng)計(jì)信息。如多少成功訂單,多少失敗訂單等。
       4、日志級別,改變?nèi)罩炯墑e。出問題的時(shí)候,可以通過改變?nèi)罩炯墑e來打印調(diào)試信息,快速定位問題。
       5、監(jiān)視服務(wù)器的性能、負(fù)載,通過email、sms等通知關(guān)鍵性事件,比如服務(wù)器負(fù)載超過預(yù)設(shè)的界限。
        要滿足這些需求往往是非常昂貴和困難的,管理員通常需要通過不同的工具來管理不同的服務(wù)和硬件。 如果使用JMX,創(chuàng)建一個(gè)滿足上面需求的管理系統(tǒng)將是廉價(jià)、更加靈活、所需時(shí)間更短。    
     
        
        使用JMX的好處
         1、非常容易使用。特別是對一個(gè)JAVA程序員,要理解SNMP是困難的。而JMX對他來說非常容易。
          2、利用現(xiàn)有的技術(shù):現(xiàn)有的管理工具可以插入JMX,JMX提供了很多協(xié)議(SNMP、HTTP)和傳輸方式(如RMI),如果原有的應(yīng)用和設(shè)備沒有提供管理能力,則可以創(chuàng)建JMX代理提供管理能力。
          3、模塊化。以模塊化的方式創(chuàng)建你的管理環(huán)境。
          4、警告、事件和統(tǒng)計(jì)信息。
            JMX提供了一套通知系統(tǒng),充分利用了面向?qū)ο髢?yōu)勢,通知提供了不僅僅是數(shù)據(jù),而是一個(gè)有分布式JAVA對象,封裝了數(shù)據(jù)和行為。例如,你發(fā)送了一個(gè)服務(wù)器負(fù)載的通知,里面還包含了一個(gè)顯示負(fù)載重要性的級別的機(jī)制,說白了就是對象里面有個(gè)方法,可以判定負(fù)載的嚴(yán)重程度。
          5、快速的監(jiān)控解決方案。不同的開發(fā)人員只需要自己開發(fā)MBean,而不需要花很多的時(shí)間在相互的協(xié)作上面,這些MBean分布在不同的主機(jī)上,但可以通過一個(gè)管理工具就可以管理所有的這些應(yīng)用。

        JMX的一些術(shù)語
        1、可管理資源(Manageable resource
        可以是任何的應(yīng)用、設(shè)備、或者其他存在的實(shí)體,能夠被java訪問和包裝。是被JMX MBean管理的資源。
        2、MBean(Managed Bean)
        是滿足某些命名規(guī)則和繼承JMX 規(guī)范的java類,為可管理資源的管理和訪問暴露接口。通過屬性和行為來暴露接口。有這3類:Standard, Dynamic, and Model MBeans。
        3、MBean Server
        管理一組MBean的JAVA類。是JMX 管理環(huán)境核心。是MBean的注冊器。
        
    4、JMX Agent
        JMX代理是為管理一組MBean提供一系列服務(wù)的java進(jìn)程。是一個(gè)MBean Server的容器,它還提供了一些有用的服務(wù):創(chuàng)建MBean之間的關(guān)系,動態(tài)加載類,簡單的監(jiān)控服務(wù),定時(shí)器服務(wù)。Agent有一個(gè)協(xié)議適配器和連接器集合能使外部程序連接到他們。
        
    5、Protocol adapters and connectors
        協(xié)議適配器和連接器是位于JMX Agent內(nèi)部的對象。把Agent暴露給管理程序和協(xié)議。一個(gè)Agent可以有很多適配器和連接器。
        
    6、Management application
        連接到JMX Agent的用戶應(yīng)用程序。
        
    7、Notification
        通知是Mbean或者M(jìn)bean server發(fā)送的java對象,他們封裝了事件、警告、或者其他的一般信息。其他的Mbean或者java對象可以注冊成為監(jiān)聽器來接受通知。
        8、Instrumentation(設(shè)備化)
        用MBean暴露一個(gè)可管理資源的過程。
        
        JMX架構(gòu)
        JMX架構(gòu)主要分為三層:Distributed layerAgent layerInstrumentation layer,如下圖所示:
         
     

        1、Distributed layer(分布式層)
          屬于JMX架構(gòu)的最外層,這層主要負(fù)責(zé)使JMX Agent能對外部程序可用。    又分為兩種:一種通過不同的協(xié)議(如SNMP,HTTP)來為MBean提供可見性。
    另一種是把Agent API暴露給其他的分布式技術(shù)如RMI。
        2、The agent layer(代理層)
        它包含的最主要的組件是MBean Server,它還包括4個(gè)代理服務(wù)使管理MBean更加容易,它們分別是:    定時(shí)器(timer)、監(jiān)控服務(wù)、動態(tài)MBean加載、和MBean關(guān)系服務(wù)。Agent可以和被管理的資源在同一個(gè)主機(jī)上,也可以是遠(yuǎn)程的。
        3、The instrumentation layer
        這是最靠近資源的一層,它包含了注冊在Agent里面的MBean。
        4、Notifications
        除了架構(gòu)中的三層以外,JMX提供了一個(gè)通知機(jī)制,類似于JAVA事件模型。通知機(jī)制是管理系統(tǒng)的最后必須的組件。Agent和MBean可以使用通知機(jī)制來發(fā)送警告或信息給管理應(yīng)用。
        以上就是JMX架構(gòu)的主要內(nèi)容,下一篇構(gòu)建一個(gè)HelloWorld的JMX程序。
    posted on 2011-04-03 23:08 simon.shen 閱讀(2274) 評論(0)  編輯  收藏 所屬分類: Java企業(yè)開發(fā)

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: g0g0人体全免费高清大胆视频| 91成人免费观看在线观看| 亚洲一区二区三区四区视频 | 最近免费最新高清中文字幕韩国 | 国产亚洲真人做受在线观看| 亚洲阿v天堂在线| 亚洲资源最新版在线观看| 免费无遮挡无遮羞在线看| 久久狠狠躁免费观看2020| 在线播放免费播放av片| 亚洲愉拍99热成人精品热久久 | 亚洲精品无码成人片久久| 伊人免费在线观看高清版| 久久久综合亚洲色一区二区三区| 亚洲欧洲免费无码| 三级毛片在线免费观看| 成人免费视频试看120秒| 亚洲精品中文字幕乱码三区| 免费观看一区二区三区| 四虎影在线永久免费观看| 亚洲男女一区二区三区| 成人av片无码免费天天看| 亚洲av无码成h人动漫无遮挡 | 亚洲美女大bbbbbbbbb| 青草青草视频2免费观看| 免费看国产精品3a黄的视频| 亚洲日韩av无码| 6080午夜一级毛片免费看6080夜福利 | 成人免费看片又大又黄| 真正全免费视频a毛片| 中文字幕人成无码免费视频| 国产精品亚洲а∨无码播放| 57pao国产成永久免费视频| 国产 亚洲 中文在线 字幕| 18禁美女黄网站色大片免费观看 | 狠狠综合久久综合88亚洲| 亚洲精品无码久久久久秋霞| 亚洲人成网站18禁止一区| 亚洲av永久无码精品秋霞电影秋| 成年黄网站色大免费全看| 亚洲AV无码一区二区三区系列|