JMX

JMX : Java Management Extendions

JMX是用于管理和监控资源的API : applications, devices, services, JVMs, etc.

(1) consult,change application configuration.

查看、修改程序配置。

(2) accumulate, publish statistics about application behavior.

累积?、发布程序行为的特征。

(3) notify users or applications of state changes and erroneous conditions.

通知用户或程序,状态变化或错误的条件。

JMX API包含了远程访问,因此远程的管理系统可以和程序进行交互。

javax.management.*

com.sun.jmx.*


MBean : Managed Bean

MBean Server : core-managed object server, MBean registed here.Management agent.

JMX agent :

包含一个MBean Server和用于操作MBean的services

JMX connector :

远程管理系统通过connector访问JMX agent。

不同协议的connector提供了相同的接口,因此,远程管理系统可以透明的访问资源,不管使用了什么通信协议。


JMX

(1) 用户可以通过简单灵活的MBean来管理Java程序。

(2) create smart agent, implementing distributed management middlewares and manages

(3) 把这些无缝集成到现有的管理和监控系统。


JMX技术分为三层:

(1) Instumentation

JMX访问的资源必须是通过Java访问的。必须通过MBean访问。

MBean是标准的,无需知道JMX agent。

Notification mechanism : MBean 产生notification events 并传播到其他层的component。

(2) JMX agent

直接访问资源,并且使得remote management application可以访问到资源。

通常与资源处于同一台机器,非必需。

核心是MBean server。

一些访问MBean的service。

至少一个communication adaptor or connector,以允许远程访问。

(3) Remote management

MBean server通过protocol adaptor or connector,使得JMX agent可以被访问得到。

adaptor : 为MBean server中的所有MBean提供个view。

connector : 提供manager-side interface,以管理management application和JMX agent之间的communication。

remote management application 通过这个interface访问JMX agent, 不管什么protocol。



MBean : Managed Bean

Managed Java object,类似JavaBean,遵循JMX规范。

一个MBean可以代表任意被管理的资源,比如设备,程序,等。

MBean提供了管理接口:

(1) readable or writable attributes, or both

(2) invokable operations

(3) self description

管理接口在一个生命周期中不会改变。

当一些pre-defined event发生时,MBean可以发出notification。

MBean :

Standard MBean

Dynamic MBean

Open MBean

Model MBean

MXBean



你可能感兴趣的:(server,application,jmx,attributes,statistics,管理和监控)