Preface
As technology evolves, it enables us to write applications that are increasingly distributed and complex. Today’s network technologies allow us to process units of work on physically separate machines scattered throughout the world. As the scale and complexity of today’s newest applications increases, so too does the challenge of managing them. After all, it is not really beneficial to distribute an application across many different machines if the answer to a question as simple as “Is the application still running?” cannot easily be determined.
This book is about Java Management Extensions, or JMX, which is the Java standard for management of application resources. An application resource can be any piece of hardware or software that you wish to monitor and control, such as a printer, router, database connection, or queue. At the heart of JMX is the concept of a managed bean, or MBean, which is a resource that has been instrumented via JMX. The MBean gets its name from the fact that it resembles a JavaBean, in that its state is entirely maintained through the use of get and set methods for its attributes. A notification model similar to the Java notification model is also available for MBeans that need to emit notifications.
JMX provides an architecture, a set of design patterns, and a set of application programming interfaces (APIs) that allow you to instrument your application and system resources so that they can be managed. JMX was designed to be able to integrate with ...