JMX is a Java framework for managing enterprise applications in a distributed environment. The book Java Management Extensions takes the reader from a high-level mountaintop description of what JMX is in the first chapter, aimed at architects and management, who might be investigating the new technology, to a trench-digging description of how to expose a class for management through instrumenting an MBean.
Perrys initial description of the JMX architecture in the first chapter does a good job describing the parts of the JMX and how they interoperate. It is a very high-level view of JMX and many abstract ideas are presented. On a personal level, my experience with the JBoss application server gave me a concrete example to refer to during this JMX introduction, which helped. Here, the reader is presented with many UML diagrams to illustrate the architecture.
The next four chapters cover the nuts and bolts of how to construct JMX services. To use the JMX framework, a developer must become familiar with an object called an MBean. In a nutshell, MBeans are Java classes that implement an MBean interface (A process known as instrumenting), allowing the MBeans to be loaded into an MBean server and managed. In these chapters, Perry talks about four types of Mbeans, Standard, Dynamic, Model, and Open MBeans. After introducing each type of MBean, Perry gives simple code examples of how to build each type of MBean.
Chapter 6 deals primarily with introducing the reader to the MBean server. Perry uses the reference implementation from Sun for the examples in his book. Real world MBean servers include names such as JBoss and WebLogic. The most exciting part of the book, I felt were chapters 7 and 9, where Perry talks about the JMX notification model and Monitoring classes. Firing events, filtering notifications, and creating monitors appear to be the real advantages to the JMX framework and are covered thoroughly in these chapters.
Perrys no-nonsense writing style provides a succinct description of the architecture. At 312 pages, the book is the thinnest technical book on my bookshelf, making the read easier to manage.
In summary, Java Management Extensions is a good book for developers who want to gain an understanding of what JMX is. Programmers new to JMX will probably find the first part of the book a good introduction to JMX and its architecture, while the last chapters focus more on how to put the framework to good use. Although Perry does not have a style of writing that entertained me, it was clear and to the point. He does cover his information thoroughly and appears to know the content well. JMX is a technology that I feel will be used heavily in the future, and for anyone who is intending to write a J2EE application that needs management or monitoring, JMX appears to be the answer.
|