posts - 16,comments - 17,trackbacks - 0
          翻譯:JMX規(guī)范version1.2
          JMX組件概述

              下面列出了JMX架構(gòu)每一層中的關(guān)鍵組件,并將在接下來的部分進行介紹。
              1.工具層(Instrumentation Level)
                  a.MBeans(標準的,動態(tài)的,開放的和模型MBeans)
                  b.通知模型
                  c.MBean元數(shù)據(jù)類
              2.代理層(Agent Level)
                  a.MBean Server
                  b.代理服務(wù)

          工具層的組件

              工具層的主要組件就是MBean設(shè)計模式,通知模型和MBean元數(shù)據(jù)類。

          MBeans
              MBean是實現(xiàn)了一個特定接口,并遵從某一設(shè)計模式的Java對象。這要求在MBean中規(guī)范化資源管理接口的表現(xiàn)形式。資源的管理接口包含所有需要的信息,以及管理程序需要在資源上進行的操作的控制。
              MBean的管理接口表現(xiàn)為如下幾種:
              1.可以被訪問的屬性;
              2.可以被調(diào)用的操作;
              3.可以被發(fā)布的通知;
              4.MBean類的構(gòu)造子。
              MBeans通過它們的公共方法封裝屬性和方法,沿襲設(shè)計模式暴露它們給管理程序。例如,在標準MBean中一個只讀的屬性只有g(shù)etter方法,而可讀寫的屬性則既有g(shù)etter方法,又有setter方法。
          任何作為MBean來實現(xiàn)的對象,并且在代理中注冊,則它可以在代理所在的JVM以外進行管理。這些對象包括:
              1.程序所管理的資源;
              2.為幫助管理資源提供的增值服務(wù);
              3.能被管理的JMX基礎(chǔ)結(jié)構(gòu)組件。
              其他的JMX組件,例如代理服務(wù),被指定為工具MBeans,使它們能受益于JMX的基礎(chǔ)結(jié)構(gòu),并提供管理接口。
              JMX架構(gòu)并沒有強行限制編譯好的MBean類的儲存位置。它們可以放在任何代理的JVM的classpath指向的位置,如果使用了類載入(class loading)它們也可以放在一個遠程的站點。
              JMX規(guī)范定義了四類MBean:標準MBean、動態(tài)MBean、開放MBean和模型MBean。每一種MBean需要一種不同的工具。
              1.標準MBeans(Standard MBeans)設(shè)計和實現(xiàn)是最簡單的,這類MBean使用自己的方法名作為管理接口;
              2.動態(tài)MBeans(Dynamic MBeans)必須實現(xiàn)一個指定的接口,由于動態(tài)MBeans在運行期間暴露它們的管理接口,因此更為靈活;
              3.開放MBeans(Open MBeans)屬于動態(tài)MBeans,這類MBean依靠基礎(chǔ)數(shù)據(jù)類型來實現(xiàn)通用管理,并為友情用戶進行自我聲明;
              4.模型MBeans(Model MBeans)同樣也是動態(tài)MBeans,這類MBeans是完全可配置的,在運行期間進行自我聲明;它們?yōu)橘Y源動態(tài)工具提供一個一般性的,有默認行為的MBeans類。

          通知模型(Notification Model)
              JMX規(guī)范定義了基于Java事件模型的一般性通知模型。通知可以被MBean的實例和MBean server發(fā)布。規(guī)范中指明通知的發(fā)送和接受者必須實現(xiàn)通知對象、廣播和監(jiān)聽接口。
              JMX的實現(xiàn)可以提供通知模型發(fā)布的服務(wù),來使管理程序遠程偵聽MBean模型和MBean server的事件。如何完成通知模型的發(fā)布超出了本部分規(guī)范的范圍。規(guī)范的后面將討論高級通知服務(wù),例如管理程序取回通知進行轉(zhuǎn)發(fā)和保存。

          MBean元數(shù)據(jù)類
              工具規(guī)范定義了MBean的管理接口的類。這些類用來定義構(gòu)建發(fā)布MBean管理接口的標準信息結(jié)構(gòu)。在代理層的MBean server的一個功能是提供MBeans的元數(shù)據(jù)。
              元數(shù)據(jù)類包含描述MBean的管理接口的所有組件的結(jié)構(gòu):屬性、操作、通知和構(gòu)造子。每一個元數(shù)據(jù)類包含有名字、描述和它的特性。例如,屬性的特性是它為只讀、只寫還是可讀寫;操作的特性是它的參數(shù)的標識和返回類型。
              不同類型的MBean擴展元數(shù)據(jù)類來提供附加的信息。通過繼承,標準信息總是可用的,知道如何訪問子類的管理程序可以獲得額外的信息。

          代理層的組件

              代理層的關(guān)鍵組件是工具層的對象都在其中注冊的MBean server,和使JMX代理體現(xiàn)更自主和性能更好的智能管理可用的代理服務(wù)。

          MBean Server
              被管理Bean的服務(wù),簡稱MBean server,用來注冊在代理中暴露給管理操作的對象。任何注冊在MBean server中的對象對于管理程序都是可見的。MBean server只暴露MBean的管理接口,而不是直接暴露對象的引用。
              任何系統(tǒng)在代理JVM以外管理的資源都必須在MBean server中作為MBean注冊。MBean server也提供一個標準化的接口,給同一個JVM來訪問MBeans,為本地對象提供手工可管理資源的所有好處。MBeans可以通過一下幾類來實例 化和注冊:
              1.其他的MBean;
              2.代理本身;
              3.遠程管理程序(通過分布式服務(wù))
              注冊MBean的時候,必須為它指定一個唯一的對象名(Object Name)。管理程序用這個對象名來標識執(zhí)行管理操作的對象。MBean可用的操作包括:
              1.發(fā)現(xiàn)MBean的管理接口;
              2.讀寫MBean的屬性;
              3.執(zhí)行MBean定義的操作;
              4.基于對象名或者屬性值來查詢MBean。
              MBean server通過協(xié)議適配器和連接器使代理的JVM外的管理程序可以訪問代理。通過指定的協(xié)議每種適配器提供所有注冊在MBean server中的MBean的實例的視圖。例如,HTML適配器可以顯示MBean到Web瀏覽器。協(xié)議適配器提供的視圖因協(xié)議的不同而不同,在本規(guī)范中 不對其進行討論。
              連接器提供用來處理管理和代理之間通信的管理方接口。即使是不同的協(xié)議,每個連接器都提供相同的遠程接口。當遠程管理程序使用這些接口時,它就可以通過網(wǎng) 絡(luò)透明的連接到代理,而不需要知道相關(guān)的協(xié)議。遠程管理接口規(guī)范在JSR160“JMX Remoting 1.2”中進行討論。
              適配器和連接器使所有的MBean server操作對于遠程管理程序可用。對于一個被管理的代理,它必須包含至少一個協(xié)議適配器或者連接器。代理也可以擁有多個適配器和連接器,使它可以被不同的管理者,通過不同的協(xié)議進行管理。

          代理服務(wù)(Agent Services)
              代理服務(wù)是可以在注冊在MBean server中的MBean上執(zhí)行管理操作的對象。通過在代理上包含智能管理,JMX可以幫助你構(gòu)建更加強大的管理解決方案。代理服務(wù)通常是允許它們和它 們的功能通過MBean server進行控制的MBeans。JMX規(guī)范定義了一下幾種代理服務(wù):
              1.通過管理服務(wù)小程序從任意網(wǎng)絡(luò)位置取回和實例化新的類和本地庫動態(tài)載入類,實現(xiàn)動態(tài)的載入類;
              2.觀察MBean數(shù)字或字符串型的屬性,并能通知其他對象某些類型改變了的監(jiān)視器;
              3.提供一個一次報警通知或者是重復(fù)的,周期的通知的定時機制的定時器;
              4.定義MBeans之間關(guān)聯(lián)和執(zhí)行基于預(yù)定義關(guān)系類型關(guān)系的關(guān)系服務(wù)。
              所有的代理服務(wù)托管在一個遵從JMX的實現(xiàn)中。

          綜述

              本部分指明了關(guān)于實現(xiàn)遵從JMX工具和代理規(guī)范(Version 1.2)的工具層和代理層的托管組件。

          工具層(Instrumentation Level)
              遵從JMX工具規(guī)范(Version 1.2)的實現(xiàn)必須提供在第2章“MBean 工具”、“第3章”開放MBeans“和第4章”模型MBean“中說明的所有組件。它包括通過Javadoc工具生成的相應(yīng)的API文檔中定義的相關(guān) 類。這些組件為標準和動態(tài)的MBean提供了支持。

          代理層(Agent Level)
              遵從JMX代理規(guī)范(Version 1.2)的實現(xiàn)必須提供在第二部分”JMX代理“中指定的所有組件。它包括MBean server的實現(xiàn),代理服務(wù)和通過Javadoc工具生成的相應(yīng)的API文檔中定義的相關(guān)類。因此所有指定的四種服務(wù)的實現(xiàn)是必須的。



          posted on 2005-02-03 14:13 非飛 閱讀(618) 評論(0)  編輯  收藏 所屬分類: JMX

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 合阳县| 桐梓县| 金堂县| 石家庄市| 海门市| 始兴县| 湟中县| 响水县| 垫江县| 绥江县| 木里| 当涂县| 祥云县| 隆昌县| 定兴县| 司法| 定结县| 酉阳| 伊宁市| 高陵县| 兴仁县| 鹤峰县| 钟祥市| 内黄县| 泉州市| 洛扎县| 金门县| 旬阳县| 惠安县| 麦盖提县| 昌邑市| 交城县| 新乡县| 淳化县| 家居| 金沙县| 澄城县| 崇文区| 三江| 阿坝| 景泰县|