If you are already familiar with Java Management Extensions (JMX) technology, see JMX Technology Versions for version information.
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 Machine (Java VM).
JMX technology was developed through the Java Community Process (JCP) as two closely related Java Specification Requests (JSRs):
The JSRs are defined by the API documentation that is generated by the Javadoc tool, and in the PDF specification documents for each JSR.
As its name indicates, the JMX Remote API adds remote capabilities to the JMX Specification, enabling you to remotely monitor and manage applications, systems, and networks. In this guide, the term JMX technology is used to describe both the JMX Specification and the JMX Remote API.
This chapter introduces JMX technology in the following sections:
The JMX specification defines in the Java programming language an architecture, the design patterns, the APIs, and the services for application and network management and monitoring.
Using JMX technology, one or more Java objects known as Managed Beans (MBeans) instruments a specified resource. These MBeans are registered in a core managed object server, known as an MBean server. The MBean server acts as a management agent and can run on most devices enabled for the Java programming language.
The specification defines JMX agents that you can use to manage resources that are instrumented in compliance with the specification. A JMX agent consists of an MBean server, in which MBeans are registered, and a set of services for handling MBeans. JMX agents directly control resources and make them available to remote management applications.
The way in which resources are instrumented is completely independent from the management infrastructure. Resources can therefore be rendered manageable regardless of how their management applications are implemented.
JMX technology defines standard connectors (JMX connectors) that enable you to access JMX agents from remote management applications. JMX connectors use different protocols to provide the same management interface. A management application can manage resources transparently, regardless of the communication protocol that is used. JMX agents can be used by systems and applications that are not compliant with the JMX Specification but which support JMX agents.
JMX technology provides Java developers across all industries with a flexible means to instrument Java code, create smart Java agents, implement distributed management middleware and managers, and smoothly integrate these solutions into existing management and monitoring systems.