JMX

A Java Management Extensions (JMX) egy Java-technológia, ami alkalmazások, rendszerobjektumok, eszközök (pl. nyomtatók) és szervizorientált hálózatok menedzselésére és monitorozására képes eszközöket biztosít.

Ezek az erőforrások MBeans (Managed Bean)-nek nevezett objektumok által vannak ábrázolva. Az API-ban, az osztályok dinamikusan tölthetők be és valósíthatók meg. Alkalmazások vezérlése és ellenőrzése Java Dynamic Management Kit révén lehet megtervezve és kifejlesztve. JMX 1.0, 1.1 és 1.2 Java Community Process JSR 003 által lettek definiálva. 2006-ban a JMX 2.0 JSR 255 lett kifejlesztve. A JMX Remote API 1.0 a távoli menedzselés és ellenőrzéshez a JSR 160 álal van specifikálva.A JMX Remote API Web Szolgáltatások kiterjesztése a JSR 262 alatt van fejlesztve. A J2EE közösség révén már korán adoptálva lett, JMX a J2SE 5.0 verziója óta része annak. A Sun Microsystems, In. védjegye.

Architektúra

A JMX egy három rétegű architektúrán alapszik:

Az alkalmazások lehetnek „generic console”-ok (mint a JConsole és MC4J) vagy domain-specifikus (ellenőrzés) alkalmazások. Külső alkalmazások kapcsolatba léphetnek az MBean-vel a JMX kapcsolókat és protokoll adaptorokat használva. A kapcsolók arra használatosak, hogy az ágenst összekapcsolják a távoli JMX-engedélyezett vezérlő alkalmazással. A kommunikáció ezen formája magába foglalja a JMX ágens kapcsolóját és vezérlő alkalmazás kliensének kapcsolóját. Protokoll adapterok vezérlési nézetet nyújtanak a JMX ágensnek az adott protokollon keresztül. Vezérlési alkalmazások amelyek a protokoll adapterhez csatlakoznak általában az adott protokoll által meghatározottak.

Managed Bean

A Managed Bean – néha MBean-ként egyszerűsítve - JavaBean egy típusa, függőségi injektálással létrehozva. Managed Bean-ek a gyakorlatban a Java Management Extensions technológia révén kerülnek felhasználásra. De, a Java EE 6 specifikáció sokkal részletesebb jelentését adja a managed bean-nek.

Az MBean erőforrást képvisel, amely a Java virtuális gépben fut, mint egy alkalmazás vagy Java EE technikai szolgáltatás (átviteli monitor, JDBC illesztő, stb.). Ezek felhasználhatók az alkalmazás beállítások lekérésére és megadására, statisztika (teljesítmény, erőforrás felhasználás, gondok) és értesítés események (hibák, állapot változások) gyűjtésére. Java EE 6-ban a managed bean egy bean, amely a bean osztálynak nevezett, Java osztály révén van implementálva.

A legfelső szintű Java osztály egy managed bean ha egy másik Java EE technológia specifikáció (például JavaServer Faces) által managed bean-nek van definiálva vagy következő követelményeknek eleget tesz:

Semmi különleges deklaráció, mint annotáció, szükséges a managed bean definiálásához. Az MBean értesítheti az MbeanServer-t annak belső változásairól javax.management.NotificationEmitter implementációja segítségével. Az MBean változtatásaiban érdekelt alkalmazás egy figyelőt (javax.management.NotificationListener) regisztrál az MbeanServer-ben. Jegyezzük meg, hogy a JMX nem garantálja, hogy az összes értesítés megérkezik a figyelőkhöz.

Típusok

Az MBean-nek két alaptípusa létezik:

Adalékos típusok az Open MBeans, Model MBeans és Monitor MBeans. Open Mbeans dinamikus Mbeans, amely az alap adattípusokra támaszkodik. Ezek önmagáért érthetők és még jobban felhasználó barátok. Model Mbeans dinamikus Mbeans, amely futás közben konfigurálható. A generikus MBean osztály a dinamikus erőforrás beállításhoz a program futása alatt. Az MXBean (MBean platform) egy speciális típusú MBean amely Java virtuális gép alrendszereit tárgyasítja mint a tárolóhely, szemét gyűjtés, többszálúság, JIT összeállítás. Egy MLet (Management applet) egy MBean eszköz az Mbeans-ek XML leírásból MbeanServer-be való töltésére, aktualizálására és regisztrálására. Az XML leíró formátuma a következő:

<MLET CODE = ''class'' | OBJECT = ''serfile'' ARCHIVE = ''archiveList'' > </MLET>

Támogatás

JMX különböző forgalmazók által különböző szinteken vannak támogatva:

Irodalom

Külső hivatkozások

Articles