欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

JMX---簡介

系統 1906 0

來自網絡---- 中科永聯 高級技術培訓中心( www.itisedu.com

JMX

中科永聯 高級技術培訓中心(www.itisedu.com)

????? JMX Java Management Extensions ,即 Java管理擴展 )是一個為應用 程序 、設備、系統等植入管理功能的 框架 。JMX可以跨越一系列異構 操作系統 平臺、系統 體系結構 和網絡傳輸協議,靈活的開發無縫集成的系統、網絡和服務管理應用。

????? Java管理擴展JMX(Java Management Extensions)是一個為應用程序植入管理功能的框架。JMX是一套標準的代理和服務,實際上,用戶可以在任何Java應用程序中使用這些代理和服務實現管理。

????? Java管理擴展JMX的前身是JMAPI。

????? Java管理擴展JMX致力于解決分布式 系統管理 的問題,因此,能夠適合于各種不同的環境是非常重要的。為了能夠利用功能強大的Java計算環境解決這一的問題,Sun公司擴充了Java基礎 庫,開發了專用的管理類庫。

????? JMX是一種 應用編程接口 ,可擴充 對象 和方法的集合體,可以用于跨越一系列不同的異構操作系統平臺、系統體系結構和網絡傳輸協議,靈活的開發無縫集成的系統、網絡和服務管理應用它提供了用戶界面指導、Java類和開發集成系統、網絡及網絡管理應用的規范。

????? 管理對象是JMX應用程序的核心。JMX結構包括:支持Java的Web瀏覽器用戶接口,管理運行模塊ARM(Admin Runtime Module)和應用。這三個部件之間通過 RMI Remote Method Invocation )進行通信。這里需要說明的是,RMI是使得一個 Java虛擬機 JVM )上運行的程序可以調用遠程服務器上另一個JVM總的對象。

????? 用戶接口用來發布管理操作,這些操作可以間接的通過瀏覽器或通過單獨的應用程序來激發。管理運行模塊用來給應用提供實例化的管理對象。它包括Agent對象接口,通知接口和被管數據接口。應用指的是那些被管設備單元。

????? JMX是一個完整的網絡管理應用程序開發環境,它同時提供了:廠商需要收集的完整的特性清單,可生成資源清單表格,圖形化的用戶接口;訪問SNMP的網絡 API ;主機間 遠程過程調用 數據庫 訪問方法。

????? JMX這一輕型的管理基礎結構,價值在于對被管理資源的服務實現了抽象,提供了低層的基本類集合,開發人員在保證大多數的公共管理類的完整性和一致性的前提下,進行擴展以滿足特定網絡管理應用的需要。

????? JMX注重于構造管理工具的 軟件 框架,并盡量采用已成熟的技術。

????? JMX可以用來管理網絡,設備,應用程序等資源,當前規范為1.2版。

一、Java管理擴展JMX的優點

????? 1:可以非常容易的使應用程序具有被管理的功能
????? 2:提供具有高度伸縮性的 架構
每個JMX Agent服務可以很容易的放入到Agent中,每個JMX的實現都提供幾個核心的Agent服務,你也可以自己編寫服務,服務可以很容易的部署,取消部署。
????? 3:主要提供接口,允許有不同的實現


二、Java管理擴展JMX的體系結構

JMX框架

????? 1)設備層(Instrumentation Level):主要定義了信息模型。在JMX中,各種管理對象以管理 構件 的形式存在,需要管理時,向MBean服務器進行注冊。該層還定義了通知機制以及一些輔助 元數據 類。
????? 2)代理層(Agent Level):主要定義了各種服務以及通信模型。該層的核心是一個MBean服務器,所有的管理構件都需要向它注冊,才能被管理。注冊在MBean服務器上管理構件并不直接和遠程應用程序進行通信,它們通過協議適配器和連接器進行通信。而協議適配器和連接器也以管理構件的形式向MBean服務器注冊才能提供相應的服務。
????? 3)分布服務層(Distributed Service Level):主要定義了能對代理層進行操作的管理接口和構件,這樣管理者就可以操作代理。然而,當前的JMX規范并沒有給出這一層的具體規范。
????? 4)附加管理協議API:定義的API主要用來支持當前已經存在的網絡管理協議,如SNMP、TMN、CIM/WBEM等。


????? 1.2 設備層(Instrumentation Level)
????? 該層定義了如何實現JMX管理資源的規范。一個JMX管理資源可以是一個Java應用、一個服務或一個設備,它們可以用Java開發,或者至少能用Java進行包裝,并且能被置入JMX框架中,從而成為JMX的一個管理構件(Managed Bean),簡稱MBean。管理構件可以是標準的,也可以是動態的,標準的管理構件遵從JavaBeans構件的 設計模式 ;動態的管理構件遵從特定的接口,提供了更大的靈活性。

????? 該層還定義了通知機制以及實現管理構件的輔助元數據類。


????? 1.2.1 管理構件(MBean)
????? 在JMX規范中,管理構件定義如下:它是一個能代表管理資源的Java對象,遵從一定的設計 模式 ,還需實現該規范定義的特定的接口。該定義了保證了所有的管理構件以一種標準的方式來表示被管理資源。

????? 管理接口就是被管理資源暴露出的一些信息,通過對這些信息的修改就能控制被管理資源。一個管理構件的管理接口包括:
????? 1)能被接觸的屬性值;
????? 2)能夠執行的操作;
????? 3)能發出的通知事件;
????? 4)管理構件的構建器。

????? 管理構件通過公共的方法以及遵從特定的設計模式封裝了屬性和操作,以便暴露給管理應用程序。例如,一個只讀屬性在管理構件中只有Get方法,既有Get又有Set方法表示是一個可讀寫的屬性。

????? 其余的JMX的構件,例如JMX代理提供的各種服務,也是作為一個管理構件注冊到代理中才能提供相應的服務。

????? JMX對管理構件的存儲位置沒有任何限制,管理構件可以存儲在運行JMX代理的Java虛擬機的類路徑的任何位置,也可以從網絡上的任何位置導入。

????? JMX定義了四種管理構件:標準、動態、開放和模型管理構件。每一種管理構件可以根據不同的環境需要進行制定。

????? 1.標準管理構件

????? 標準管理構件的設計和實現是最簡單的,它們的管理接口通過方法名來描述。標準管理構件的實現依靠一組命名規則,稱之為設計模式。這些命名規則定義了屬性和操作。檢查標準管理構件接口和應用設計模式的過程被稱為內省(Introspection)[22]。JMX代理通過內省來查看每一個注冊在MBean 服務器上的管理構件的方法和超類,看它是否遵從一定設計模式,決定它是否代表了一個管理構件,并辨認出它的屬性和操作。

????? 2.動態管理構件

????? 動態管理構件提供了更大的靈活性,它可以在運行期暴露自己的管理接口。它的實現是通過實現一個特定的接口DynamicMBean(如下圖)。


?


????? JMX代理通過getMBeanInfo方法來獲取該動態管理構件暴露的管理接口,該方法返回的對象是MbeanInfo類的實例,包含了屬性和操作的簽名。由于該方法的調用是發生在動態管理構件向MBean服務器注冊以后,因此管理接口是在運行期獲取的。不同于標準管理構件,JMX代理不需要通過內省機制來確定動態管理構件的管理接口。由于DynamicMBean的接口是不變的,因此可以屏蔽實現細節。由于這種在運行期獲取管理接口的特性,動態管理構件提供了更大的靈活性。

????? 3.開放管理構件

????? 開放管理構件是一種專門化的動態管理構件,其中所有的與該管理構件相關的參數、返回 類型 和屬性都圍繞一組預定義的數據類型(String、Integer、Float 等)來建立,并且通過一組特定的接口來進行自我描述。JMX代理通過獲得一個OpenMBeanInfo對象來獲取開放管理構件的管理接口,OpenMBeanInfo是MbeanInfo的子類。

????? 4.模型管理構件

????? 模型管理構件也是一種專門化的動態管理構件。它是預制的、通用的和動態的 MBean 類,已經包含了所有必要缺省行為的實現,并允許在運行時添加或覆蓋需要定制的那些實現。JMX規范規定該類必須實現為javax.management.modelmbean.RequiredModelMBean,管理者要做的就是實例化該類,并配置該構件的默認行為并注冊到JMX代理中,即可實現對資源的管理。JMX代理通過獲得一個ModelMBeanInfo對象來獲取管理接口。

????? 模型管理構件具有以下新的特點[23]:
????? 1)持久性
????? 定義了持久機制,可以利用Java的序列化或 JDBC 來存儲模型MBean的狀態。
????? 2)通知和日志功能
????? 能記錄每一個發出的通知,并能自動發出屬性變化通知。
????? 3)屬性值緩存
????? 具有緩存屬性值的能力。


????? 1.2.2 通知模型
????? 一個管理構件提供的管理接口允許代理對其管理資源進行控制和配置。然而,對管理復雜的分布式系統來說,這些接口只是提供了一部分功能。通常,管理應用程序需要對狀態變化或者當特別情況發生變化時作出反映。

????? 為此,JMX定義了通知模型。通知模型僅僅涉及了在同一個JMX代理中的管理構件之間的事件傳播。JMX通知模型依靠以下幾個部分:
????? 1)Notification,一個通用的事件類型,該類標識事件的類型,可以被直接使用,也可以根據傳遞的事件的需要而被擴展。
????? 2)NotificationListener接口,接受通知的對象需實現此接口。
????? 3)NotificationFilter接口,作為通知過濾器的對象需實現此接口,為通知監聽者提供了一個過濾通知的過濾器。
????? 4)NotificationBroadcaster接口,通知發送者需實現此接口,該接口允許希望得到通知的監聽者注冊。

????? 發送一個通用類型的通知,任何一個監聽者都會得到該通知。因此,監聽者需提供過濾器來選擇所需要接受的通知。

????? 任何類型的管理構件,標準的或動態的,都可以作為一個通知發送者,也可以作為一個通知監聽者,或兩者都是。


????? 1.2.3 輔助元數據類
????? 輔助元數據類用來描述管理構件。輔助元數據類不僅被用來內省標準管理構件,也被動態管理構件用來進行自我描述。這些類根據屬性、操作、構建器和通告描述了管理接口。JMX代理通過這些元數據類管理所有管理構件,而不管這些管理構件的類型。

????? 部分輔助元類如下:
????? 1)MBeanInfo--包含了屬性、操作、構建器和通知的信息。
????? 2)MBeanFeatureInfo--為下面類的超類。
????? 3)MBeanAttributeInfo--用來描述管理構件中的屬性。
????? 4)MBeanConstructorInfo--用來描述管理構件中的構建器。
????? 5)MBeanOperationInfo--用來描述管理構件中的操作。
????? 6)MBeanParameterInfo--用來描述管理構件操作或構建器的參數。
????? 7)MBeanNotificationInfo--用來描述管理構件發出的通知。


????? 1.3 代理層
????? 代理層是一個運行在Java虛擬機上的管理實體,它活躍在管理資源和管理者之間,用來直接管理資源,并使這些資源可以被遠程的管理程序所控制。代理層由一個MBean服務器和一系列處理被管理資源的服務所組成。下圖表示了代理層的組成:


?

?

????? 1.3.1 MBean服務器
????? Mbean服務器為代理層的核心,設備層的所有管理構件都在其注冊,管理者只用通過它才能訪問管理構件。
????? 管理構件可以通過以下三種方法實例化和注冊:
????? 1)通過另一個管理構件
????? 2)管理代理本身
????? 3)遠程應用程序
????? 注冊一個管理構件時,必須提供一個唯一的對象名。管理應用程序用這個對象名進行標識管理構件并對其操作。這些操作包括:
????? 1)發現管理構件的管理接口
????? 2)讀寫屬性值
????? 3)執行管理構件中定義的操作
????? 4)獲得管理構件發出的通告
????? 5)基于對象名和屬性值來查詢管理構件


????? 1.3.2 協議適配器和連接器
????? MBean服務器依賴于協議適配器和連接器來和運行該代理的Java虛擬機之外的管理應用程序進行通信。協議適配器通過特定的協議提供了一張注冊在MBean服務器的管理構件的 視圖 。例如,一個HTML適配器可以將所有注冊過的管理構件顯示在Web 頁面上。不同的協議,提供不同的視圖。

????? 連接器還必須提供管理應用一方的接口以使代理和管理應用程序進行通信,即針對不同的協議,連接器必須提供同樣的遠程接口來封裝通信過程。當遠程應用程序使用這個接口時,就可以通過網絡透明的和代理進行交互,而忽略協議本身。

????? 適配器和連接器使MBean服務器與管理應用程序能進行通信。因此,一個代理要被管理,它必須提供至少一個協議適配器或者連接器。面臨多種管理應用時,代理可以包含各種不同的協議適配器和連接器。

????? 當前已經實現和將要實現的協議適配器和連接器包括:
????? 1)RMI連接器
????? 2)SNMP協議適配器
????? 3)IIOP協議適配器
????? 4)HTML協議適配器
????? 5)HTTP連接器


????? 1.3.3 代理服務
????? 代理服務可以對注冊的管理構件執行管理功能。通過引入智能管理,JMX可以幫助我們建立強有力的管理解決方案。代理服務本身也是作為管理構件而存在,也可以被MBean服務器控制。

????? JMX規范定義了代理服務有:
????? 1)動態類裝載--通過管理小程序服務可以獲得并實例化新的類,還可以使位于網絡上的類庫本地化。
????? 2)監視服務--監視管理構件的屬性值變化,并將這些變化通知給所有的監聽者。
????? 3)時間服務--定時發送一個 消息 或作為一個調度器使用。
????? 4)關系服務--定義并維持管理構件之間的相互關系。

????? 1.動態類裝載

????? 動態類裝載是通過m-let(management applet )服務來實現的,它可以從網絡上的任何URL處下載并實例化管理構件,然后向MBean服務器注冊。在一個M-let服務過程中,首先是下載一個m-let文本 文件 ,該文件是 XML 格式的文件,文件的內容標識了管理構件的所有信息,比如構件名稱、在MBean服務器中唯一標識該構件的對象名等。然后根據這個文件的內容,m-let服務完成剩余的任務。下圖例示這一過程:


?


????? 2.監視服務

????? 通過使用監視服務,管理構件的屬性值就會被定期監視,從而保證始終處于一個特定的范圍。當監視的屬性值的變化超出了預期定義的范圍,一個特定的通告就會發出。JMX規范當前規定了三種監視器:

????? 1)計數器監視器,監視計數器類型的屬性值,通常為整型,且只能按一定規律遞增。
????? 2) 度量 監視器,監視度量類型的屬性值,通常為實數,值能增能減。
????? 3)字符串監視器,監視字符串類型的屬性值。

????? 每一個監視器都是作為一個標準管理構件存在的,需要提供服務時,可以由相應的管理構件或遠程管理應用程序動態創建并配置注冊使用。

????? 下圖例示了計數器監視器的使用情況:


?


????? 3.時間服務

????? 時間服務可以在制定的時間和日期發出通告,也可以定期的周期性的發出通告,依賴于管理應用程序的配置。時間服務也是一個管理構件,它能幫助管理應用程序建立一個可配置的備忘錄,從而實現智能管理服務。

????? 4.關系服務

????? JMX規范定義了管理構件之間的關系模型。一個關系是用戶定義的管理構件之間的N維聯系。

????? 關系模型定義如下一些術語:

????? 1)角色:就是是一個關系中的一類成員身份,它含有一個角色值。
????? 2)角色信息:描述一個關系中的一個角色。
????? 3)關系類型:由角色信息組成,作為創建和維持關系的模板。
????? 4)關系:管理構件之間的當前聯系,且必須滿足一個關系類型的要求。
????? 5)角色值:在一個關系中當前能滿足給定角色的管理構件的列表。
????? 6)關系服務:是一個管理構件,能接觸和維持所有關系類型和關系實例之間的一致性。

????? 在關系服務中,管理構件之間的關系由通過關系類型確定的關系實例來維護。僅僅只有注冊到MBean服務器上并且能被對象名標識的管理構件才能成為一個關系的成員。關系服務從來就不直接操作它的成員--管理構件,為了方便查找它僅僅提供了對象名。

????? 關系服務能鎖定不合理關系類型的創建,同樣,不合理的關系的創建也會被鎖定。角色值的修正也要遵守一致性檢查。

????? 由于關系是定義在注冊的管理構件之間的聯系,所以當其中的管理構件卸載時,就會更改關系。關系服務會自動更改角色值。所有對關系實例的操作比如創建、更新、刪除等都會使關系服務發出通告,通告會提供有關這次操作的信息。

????? JMX關系模型只能保證所有的管理構件滿足它的設計角色,也就是說,不允許一個管理構件同時出現在許多關系中。


????? 1.4 分布服務層
????? 當前,SUN并沒有給出這一層的具體規范,下面給出的只是一個簡要描述。

????? 該層規定了實現JMX應用管理平臺的接口。這一層定義了能對代理層進行操作的管理接口和 組件 。這些組件能:
????? 1)為管理應用程序提供一個接口,以便它通過一個連接器能透明和代理層或者JMX管理資源進行交互。
????? 2)通過各種協議的映射(如SNMP、HTML等),提供了一個JMX代理和所有可管理組件的視圖。
????? 3)分布管理信息,以便構造一個分布式系統,也就是將高層管理平臺的管理信息向其下眾多的JMX代理發布。
????? 4)收集多個JMX 代理端的管理信息并根據管理終端用戶的需要篩選用戶感興趣的信息并形成 邏輯視圖 送給相應的終端用戶。
????? 5)提供了安全保證。

????? 通過管理應用層和另一管理代理和以及他的設備層的聯合,就可以為我們提供一個完整的網絡管理的解決方案。這個解決方案為我們帶來了獨一無二的一些優點:輕便、根據需要部署、動態服務、還有安全性。


????? 1.5 附加管理協議API
????? 該層提供了一些API來支持當前已經存在的一些管理協議。

????? 這些附加的協議API并沒有定義管理應用的功能,或者管理平臺的體系結構,他們僅僅定義了標準的Java API和現存的網絡管理技術通信,例如SNMP。

????? 網絡管理平臺和應用的開發者可以用這些API來和他們的管理環境進行交互,并將這個交互過程封裝在一個JMX管理資源中。例如,通過SNMP可以對一個運行有SNMP代理的交換機進行管理,并將這些管理接口封裝成為一個管理構件。在動態網絡管理中,可以隨時更換這些管理構件以適應 需求

????? 這些API可以幫組開發者根據最通常的工業標準來部署他們的管理平臺和應用。新的網路管理的解決方案可以和現存的基礎結構合為一體,這樣,現存的網絡管理也能很好的利用基于Java技術的網絡管理應用。

????? 這些API目前在 JCP Java Community Process )內作為獨立的JSR(Java Specification Request)開發。

????? 他們包括:
????? 1)SNMP Manager API
????? 2)CIM/WBEM manager and protocol API


????? 1.6 JMX的當前實現及應用
????? 自從SUN發布了JMX規范,許多大公司紛紛行動起來,實現規范或者實現相應的基于JMX的網絡管理系統,下面列出了當前的主要實現及應用情況:

????? 1)SUN為JMX規范了作出了相應的參考實現,并在此基礎上開發了一個全新的用于網絡管理的產品JDMK(Java動態管理工具集),其中定義了資源的開發過程和方法、動態JMX代理的實現、遠程管理應用的實現。同時,JDMK也提供了一個完整的體系結構用來構造分布式的網絡管理系統,并提供了多種協議適配器和連接器,如SNMP協議適配器、HTML協議適配器、HTTP連接器、RMI連接器。
????? 2)IBM Tivoli實現了JMX規范的產品為TivoliJMX,它為JAVA管理應用程序和網絡提供了架構、設計模式、一些API集和一些服務。
????? 3)Adventnet開發的關于JMX的產品為AdventNet Agent Toolkit,它使得定義新的SNMP MIB、開發JMX和Java SNMP Agent的過程自動化。
????? 4) JBoss 實現的 J2EE應用服務器 以JMX為微內核,各個模塊以管理構件的形式提供相應的服務。
????? 5)BEA的Weblogic應用服務器也將JMX技術作為自己的管理基礎。
????? 6)金蝶的Apusic也是一個以JMX為內核開發出的 J2EE 應用服務器。


三、JMX的好處

????? 。可減少對JAVA應用實施管理的投資
????? 。提供了一個可伸縮的管理框架
????? 。集成現有的管理方案:如:WBEM,SNMP,TMN
????? 。使用現有的標準JAVA技術
????? 。能使用未來的一些管理概念:如 Jini 連接技術、通用即插即用、服務定位協議(Service Location Protocol)
????? 。只定義了一些可以訪問的接口

四、JMX架構的了解

????? JMX應該說是關于網絡應用管理的的框架,如果你開發了一個比較復雜的系統,無疑你要提供這個系統的自身管理 系統,JMX更多應用是體現在Server上,如果你要使用java開發一個自己Server或復雜的應用系統,那么推薦你基于JMX架構來開發, JBoss 3.0 weblogic等就是基于JMX開發的符合J2EE規范的服務器軟件。

????? 了解JMX可以使你深入了解J2EE服務器, 為什么我們平時說 " EJB "是個比較"Weight"的方案選擇,其中一個原因是J2EE服務器軟件本身 也是你的系統中一部分,它作為你系統的容器,對你的系統有至關重要的作用,如果無法直接介入 管理或“調教”它,那么無疑你的系統本身存在著隱含的危險, 現在,通過JMX,你現在可以深入到你J2EE容器內部的管理了。 (好像國內出現了第一個自己J2ee服務器,不知道那是不是基于JMX開發的?)

????? J2EE并不能概括所有的應用領域,比如對速度和性能要求極高的游戲或股票行情等系統就需要自己直接來開發Server, 如果是能夠基于JMX開發,那么可以說就大大提高編寫管理程序的效率,可以將你的模塊變成JMX的MBean,可以通過Agent在程序內部或者通過 WEB管理頁面對你的MBean模塊進行初始化 重啟 以及參數設置。

????? JMX的好處還有:可以方便整合連接現有的Java技術,如JNDI JDBC JTS及其它。特別是能夠使用Jini的查詢 發現機制以及協議,我們知道,Jini提供了一種服務的查詢和發現機制,這些services都可以通過JMX 來實現管理。

????? 現在我們開始JMX的了解:

????? 1.到java.sun.com首頁的JMX頁面,下載JMX的規定說明和Samples程序。
????? 2.按照JMX的說明進行一次Tutorial,了解如何加入 刪除 配置一個MBean,Tutorial中是以SimpleMBean為例,那么我們能否建立一個自己的MBean?

????? 我們來做一個Hello 的MBean,這里有一個小關鍵點,你的 class 取名有個規則, 需要以MBean為結尾,如這里我們取名為HelloMbean:


public interface HelloMBean {

  // management attributes
  public String getName();
  public void setName(String name);

  // management operations
  public void print();

}

????? 在這個Class里,有一個隱含attributes: name, 提供了set和get的方法,同時有一個操作方法print():

????? 再定義一個concrete類:

public class Hello implements HelloMBean {

  private String name = "";

  public String getName() {
  return name;
  }

  public void setName(String name) {
  this.name = name;
  }

  public void print() {
  System.out.println("Hello, " + name + "!!" );
  }
}


????? 這樣一個簡單的MBean就做好了,我們可以通過admin界面加入這個Hello,

????? 再按 Tutorial啟動BaseAgent,在Agent Administration中參考Simple填入:
Domain: Standard_Hello_MBeans

Keys : name=Hello,number=1

Java Class: Hello

????? 將出現Create Successful信息。進入MBean View 給Name賦值,點按Apply ,然后再按print,這是你的Hello中的方法,在控制臺你會看到輸出。

????? 是不是很驚奇Hello中的 attributes 和operations能被動態的訪問和控制? 已經隱約感到JMX的架構原理了吧?

????? 下面再深入明確一些概念:
????? 上面HelloMBean資源是通過admin這樣的HTTP WEB界面管理,這種管理資源方式是屬于JMX的Distributed服務層, JMX 通過Distributed層能夠部署和管理MBean資源。就象上面的例子,是通過HtmlAdaptor提供的HTTP WEB界面來方面的維護管理HelloMBean.

????? 那么我們能否在程序中自動管理和部署我的MBean?當然可以,這是通過Agent層來完成,現在我們已經有了這個層次,MBean所在的資源層,
最外面的Distributed服務層,Distributed服務層是通過Agent層來訪問MBean資源的,看看下面來自Sun公司JMX規定的架構圖:

????? 從圖中看出,Agent Level(Agent層)包括MBean Server和Agent Services,那么我們來做一個上面例子HelloMBean的Agent:

// CREATE the MBeanServer
//
System.out.println("\n\tCREATE the MBeanServer.");
MBeanServer server = MBeanServerFactory.createMBeanServer();

// CREATE Registe HelloMBean
//
System.out.println("\n\tCREATE, REGISTER a new Hello Standard_MBean:");
HelloMBean helloMBean = new Hello();

ObjectName hello_name = null;
try {
hello_name = new ObjectName("Standard_Hello_MBeans:name=Hello,number=1");
System.out.println("\tOBJECT NAME = " + hello_name);

//將HelloMBean注冊到MBeanServer中去
server.registerMBean(helloMBean, hello_name);
}
catch (Exception e) {
e.printStackTrace();
return;
}

????? 向MBeanServer注冊后,以后JMX就知道有了這個HelloMBean資源。

????? 管理一個agent的MBean資源或使用它提供的服務必須通過一個protocol adaptor 或者connector,adaptor 或者connector屬于Distributed layer level(Distributed服務層),我們上面例子中通過HTTP WEB界面管理HelloMBean就是瀏覽器通過HtmlAdaptor這個adaptor來實現的。

????? 通過本篇文章,你應該大體了解了JMX的架構和一些原理和應用,再深入可以研究SUN的JMX Specification.

(來源:www.huihoo.org;www.jdon.com )


?

JMX---簡介


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美les免费观看网站 | 精品久久久久久久 | 高清中文字幕视频在线播 | 动漫福利在线观看 | 日本高清色惰www在线视频 | 日韩精品成人a在线观看 | 国产高清在线精品一区二区三区 | 超碰伊人网 | 国产精品久久久久免费视频 | 国产亚洲成av人在线观看导航 | 在线中文字幕亚洲 | 亚洲欧美色欧另类欧 | 久久久精品视频免费看 | 日本三级欧美三级 | 五月网站 | 成在线人免费视频一区二区三区 | 欧美福利 | 91久久国产露脸精品免费 | 日本一区二区不卡 | 青草九九 | 三上悠亚2022最新番号 | 一区二区三区四区在线 | 亚洲精品国产偷自在线观看 | 999精品视频在线观看 | 成人黄色免费 | 干片网| 国产精品亚洲一区二区三区在线 | 日韩在线国产精品 | 欧美一a一片一级一片 | 亚洲激情中文 | 成人免费毛片网站 | 久草新在线 | 欧美激情a∨在线视频播放 中文字幕亚洲图片 | 亚洲人成在线观看一区二区 | 日本午夜大片免费观看视频 | 日韩啊v | 综合爱爱 | 精品免费国产一区二区三区 | 成人国产精品免费视频不卡 | 免费黄色欧美视频 | 女同久久另类99精品国产 |