home | support | download | collateral | forum


Java Management Extensions (JMX)

Java Management Extensions (JMX) is a technologiy to provide a standard way to expose Jave resources within applications. This allows the applications to be monitored and managed from centralized management systems.

JMX technology provides a simple, standard way of managing resources such as applications, devices, and services. Because JMX technology is dynamic, you can use it to monitor and manage resources as they are created, installed and implemented. You can also use JMX technology to monitor and manage the Java Virtual Machine1 (JVMTM).

Using the JMX framework, a provider can implement functions, such as listing the configuration settings, and editing the settings. This framework also includes a notification layer that management applications can use to monitor events such as the startup of an application server.

JMX architecture

The JMX architecture is structured into three layers:

  • Instrumentation layer - Dictates how resources can be wrapped within special Java beans, called managed beans (MBeans).
  • Agent layer - Consists of the MBean server and agents, which provide a management infrastructure. The services that are implemented include:
    • Monitoring
    • Event notification
    • Timers
  • Management layer - Defines how external management applications can interact with the underlying layers in terms of protocols, APIs, and so on. This layer uses an implementation of the distributed services specification (JSR-077), which is not yet part of the Java 2 platform, Enterprise Edition (J2EE) specification.

Using JMX technology, a given resource is instrumented by one or more Java objects known as Managed Beans, or MBeans. These MBeans are registered in a core managed object server, known as an MBean server, that acts as a management agent and can run on most devices enabled for the Java programming language.