Java and JMX: Building Manageable Systems

Paperback (Print)
Used and New from Other Sellers
Used and New from Other Sellers
from $1.99
Usually ships in 1-2 business days
(Save 96%)
Other sellers (Paperback)
  • All (11) from $1.99   
  • New (6) from $42.87   
  • Used (5) from $1.99   
Close
Sort by
Page 1 of 1
Showing All
Note: Marketplace items are not eligible for any BN.com coupons and promotions
$42.87
Seller since 2008

Feedback rating:

(17715)

Condition:

New — never opened or used in original packaging.

Like New — packaging may have been opened. A "Like New" item is suitable to give as a gift.

Very Good — may have minor signs of wear on packaging but item works perfectly and has no damage.

Good — item is in good condition but packaging may have signs of shelf wear/aging or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Acceptable — item is in working order but may show signs of wear such as scratches or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Used — An item that has been opened and may show signs of wear. All specific defects should be noted in the Comments section associated with each item.

Refurbished — A used item that has been renewed or updated and verified to be in proper working condition. Not necessarily completed by the original manufacturer.

New
Brand New, Perfect Condition, Please allow 4-14 business days for delivery. 100% Money Back Guarantee, Over 1,000,000 customers served.

Ships from: Westminster, MD

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
$42.88
Seller since 2007

Feedback rating:

(23490)

Condition: New
BRAND NEW

Ships from: Avenel, NJ

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
$46.24
Seller since 2014

Feedback rating:

(0)

Condition: New
0672324083 Premium Publisher Direct Books are Like New or Brand New books direct from the publisher sometimes at a discount. Multiple copies are usually available. These books ... are not available for expedited shipping and may take up to 14 business days to receive. Read more Show Less

Ships from: Woodland Hills, CA

Usually ships in 1-2 business days

  • Standard, 48 States
  • Express, 48 States
$48.55
Seller since 2014

Feedback rating:

(31)

Condition: New
PAPERBACK New 0672324083 Premium Publisher Direct Books are Like New or Brand New books direct from the publisher sometimes at a discount. Multiple copies are usually ... available. These books are not available for expedited shipping and may take up to 14 business days to receive. Read more Show Less

Ships from: Tarzana, CA

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
$72.16
Seller since 2014

Feedback rating:

(5)

Condition: New
New

Ships from: Idyllwild, CA

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
$76.96
Seller since 2010

Feedback rating:

(9)

Condition: New
12-30-02 other 1 BRAND NEW! ONLY Expedited orders are shipped with tracking number! *WE DO NOT SHIP TO PO BOX* Please allow up to 14 days delivery for order with standard ... shipping. SHIPPED FROM MULTIPLE LOCATIONS. Read more Show Less

Ships from: San Jose, CA

Usually ships in 1-2 business days

  • Canadian
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
Page 1 of 1
Showing All
Close
Sort by

Overview

Java is now used with increasing frequency to develop mission-critical applications. Using Java Management Extensions (JMX) is the key to managing those applications. As JMX is increasingly accepted into the fields of embedded systems, enterprise systems, and telephony, it is clear that all Java developers will encounter JMX before long.

Java™ and JMX: Building Manageable Systems is the definitive guide to JMX, combining an introduction to the technology with extensive coverage that will make this book a favorite reference. Much more than just an explanation of the JMX specifications, this book can drastically reduce a reader's JMX learning curve by explaining how to develop management requirements and apply JMX to them. The book's coverage includes:

  • A management primer for Java programmers and architects
  • A historical perspective on the evolution of JMX and its relation to other management standards, including SNMP, CIM/WBEM, TMN, and CMIP
  • Development of JMX Manageable Resources with Standard and Dynamic MBeans
  • Development with Model MBeans as customizable generic instrumentation using both the JMX APIs and XML files
  • MBeanServer, including the MBean registry and object naming scheme, the generic MBean interface, and the query mechanism
  • JMX Monitors and Notifications
  • MBeanServer Services including the timer, relationship, and dynamic loading, along with custom services for XML services, HTTP adapters, RMI connectors, and security exposures and permissions
  • JMX best practices, including deployment patterns, instrumentation patterns, federation patterns, and best practices
  • JMX integration into J2EE and the JSR077 management models in J2EE 1.4
  • Using JMX to manage Web services from the perspective of service providers, registry providers, and users

Written with an unparalleled degree of in-the-trenches familiarity and full of practical examples and working sample code, Java™ and JMX is a must-have introduction, technological guide, and reference for Java architects and developers.

0672324083B12052002

Read More Show Less

Product Details

  • ISBN-13: 9780672324086
  • Publisher: Addison-Wesley
  • Publication date: 12/28/2002
  • Edition description: New Edition
  • Pages: 592
  • Product dimensions: 7.32 (w) x 9.05 (h) x 1.33 (d)

Meet the Author

Heather Kreger was the original JMX evangelist at IBM. A founding member of the JMX expert group, she personally contributed ModelMBeans to the JMX specification and is currently applying management to Web services technologies.

Ward Harold is the lead architect for Tivoli's implementation of JMX, TMX4J. He is a member of the current JMX expert group.

Leigh Williamson led the design and implementation of the WebSphere Version 5 new administrative architecture.

Read More Show Less

Read an Excerpt

Introduction

Welcome! You have just opened your key to the secret art of management. This book is your comprehensive guide to the development of manageable application software using the Java Management Extensions (JMX). Now that Java has made the leap from cool to critical, every developer who has deployed a mission-critical application knows it is not enough just to write great code; to be truly useful, critical applications must be manageable as well. With the publishing of the JMX specification and the availability of multiple JMX implementations, Java programmers have a standard mechanism with which to instrument and manage their software products. This book will provide you with the information necessary to leverage JMX to create a new generation of better-instrumented, more manageable, and therefore more reliable mission-critical Java applications.

At the moment the two biggest growth areas for Java are enterprise and embedded systems. Tens of thousands of IT developers are now or soon will be using J2EE technologies to create mission-critical business systems. The major J2EE vendors, including IBM WebSphere and BEA WebLogic application servers, are using JMX to provide their own management, as well as to enable yours. The J2EE 1.4 standard is being extended to include management interfaces using JMX as defined by JSR (Java Specification Request) 77. At the other end of the spectrum, thousands more developers will be using Java to create embedded applications, from set-top boxes to remote pumping-station monitors.

It is essential that these applications, which run unattended on "invisible computers" for the most part, be as self-monitoring and self-managing as possible. JMX provides a substrate upon which to construct such self-monitoring/managing applications, and a copy of this book will substantially reduce your JMX learning curve.

JMX is also being accepted by the telephony industry as a management infrastructure for Java for the Advanced Intelligent Network (JAIN). As these specifications for the use of Java in telephony service environments emerge, whole new industries will need to become familiar with JMX. The probability that you will encounter JMX in one form or another, as part of your own designs or as the instrumentation mechanism for components of your infrastructure, is very high. This book will give you the foundation and technical details you need to make effective use of JMX wherever you find it.

Although it is well known that JMX is continuing to evolve, its basic architecture and interfaces will remain consistent. There is more to using JMX than understanding the architecture and interfaces; you also need to understand how it connects to management systems, the role it plays in the management industry, appropriate use of the technology, and management design patterns. In short, you need to understand how to create a manageable system.

This book has been written in a comprehensive manner by experts in that space. It also will give you an in-depth understanding of the application of JMX in hot technologies: J2EE and Web services. You will find this book to be useful long after new versions of JMX become available because the concepts introduced here are classic applications of management concepts and technologies to the Java family. This book will do more than help you write MBeans; it will help guide you build manageable systems.This Book's Intended Audience

Our primary goal in writing this book is to explain Java-based management, manageability (i.e., enabling resources to be managed), and JMX in detail, and to make it easy to understand.

Architects and developers involved in the design and implementation of mission-critical Java applications are the primary audience for this book. They understand that their biggest challenges come well after the first successful installation of a new piece of software, when their client's business becomes critically dependent on that software. Then it is essential that administrators be able to monitor and manage the application day and night to keep the business in business. Until recently, each Java-based product had to develop its own ad hoc management solution. That changed with publication of the Java Management Extensions Instrumentation and Agent Specification, v1.0.

This book has been written especially for Java developers who find themselves in a situation where they must enable their application to be managed by an "outside" management system. Other Java developers and architects who will find this book useful include

  • Those who are going to help create a new administrative or management system for their Java application
  • Those who need to integrate their application into an existing JMX-based administrative or management system
  • Those who want to develop some management functions to interact with an application that supports JMX
  • Curious folks who just like to know what all the Java acronyms stand for

This book assumes that you do not have a background in systems or applications management and provides a comprehensive overview of the history of the management industry and the forces that combined to make JMX the ubiquitous management technology for Java resources across the Java community. Java resources deployed in the micro, standard, and enterprise editions of the JDK can all use JMX.

The authors have extensive firsthand experience with JMX from nearly every angle. Heather Kreger was an original member of the JMX Expert Group and personally contributed the specification, reference implementation (RI), and Technology Compatibility Kit (TCK) for model MBeans. She is now involved in Web services and applying management to this emerging space. Ward Harold is a member of the current JMX Expert Group (JSR 160), the lead architect for Tivoli's implementation of JMX and TMX4J, as well as Tivoli's Web Component Manager product, which uses JMX to manage resources. Leigh Williamson was a member of JSR 77 ("J2EE Management") and the architect for WebSphere's JMX support and JSR 77 support. This book represents our experience with JMX from all these projects: We bring you a unique insider perspective on the intent, implementation, application, and even pitfalls of JMX. All of this JMX experience is in the context of our extensive experience in all aspects of management systems and middleware.

This book will be valuable for developers of applications that should be managed, developers of middleware, and developers of management systems. We hope that you will find it useful not only as an introduction to JMX, but also as a frequent desktop reference as you connect your application to an existing management system or start to develop your own management application.What You Need to Know before Reading This Book

This book assumes that you are familiar with developing applications using Java. We do not assume that you have experience with management systems. As such, the first chapter introduces management concepts, disciplines, and architectures. If you are familiar with management systems, then you may skip this chapter and start with Chapter 2 (Introduction to JMX).

Chapter 10 (J2EE and JMX) explains JSR 77 ("J2EE Management") in depth, as well as how it relates to JMX. This chapter assumes that you have a high-level understanding of the components of the J2EE specification and its realization in J2EE application servers.

Chapter 11 (Web Services and JMX) explains how JMX can be used to develop manageable Web service applications. It will be helpful to have a general understanding of what a Web service is, and familiarity with common Web service architectures.What You Will Learn from Reading This Book

This book will provide you with the necessary information, insight, and examples for using JMX to build manageable mission-critical applications or provide a standard management interface to homegrown and third-party management applications.

It is sometimes as important to understand the context of Java technologies as it is to understand the technology itself. This is the case with JMX. Therefore, this book gives you almost two chapters (1 and 2) detailing the history of management systems, management architectures, applications, and technologies. In these chapters we also explain the forces that combined to make JMX so important for the Java community. This book gives you the background you need to understand and enter into conversations in the management industry.

Specifically, you will learn to develop standard and dynamic MBeans to represent JMX manageable resources in their applications. You will understand how and when to use the model MBean to rapidly develop extensible instrumentation and how to represent interdependent management components using the JMX relation service. Because instrumentation inevitably requires monitoring, this book discusses the use of JMX's various monitors and its notification model in detail. In addition, this book provides working sample code to illustrate the application of JMX technology in various settings, including J2EE and Web services.

Software Needed to Complete the ExamplesAll of the examples in this book, along with extras not in the book, can be downloaded from Addison-Wesley's Web site for this book: http://www.awprofessional.com/titles/0672324083. At a minimum, you will need to have a J2SE JDK and a JMX implementation installed on your computer to compile and run the samples shown throughout this book. These samples have been tested with the TMX4J. Some have also been tested with MX4J implementations. TMX4J is 100 percent Java code and should run on any platform, but it has been tested on a Windows operating system. TMX4J can be downloaded for free from the IBM alphaWorks Web site at http://alphaworks.ibm.com.

The examples in Chapter 10 demonstrate solutions based on J2EE application server products such as WebSphere Application Server. The J2EE servers that support JMX and JSR 77 are listed in the appendix. Complete product information for WebSphere Application Server may be found on the Web at http://www.ibm.com/products/websphere.

To run the examples in Chapter 11, you will need a Web services runtime including a Web server, servlet engine, SOAP engine, and JMX implementation. The samples in this chapter were tested with the IBM Web Services Tool Kit, which is available for free from the IBM alphaWorks Web site at http://alphaworks.ibm.com.How This Book Is Organized

We have arranged the content of this book into three broad sections. Part I introduces management and JMX. Part II provides detailed and comprehensive coverage of the JMX architecture, APIs, programming techniques, and pitfalls. We even provide an entire chapter on design and implementation suggestions, along with our favorite pitfalls. Part III lays out the application of JMX in two fast-growing fields: J2EE and Web services.

We recognize that each reader will be interested in different portions of the book, and not everyone will need to read every chapter. Readers who are already familiar with management systems may skip Chapter 1 (Management Concepts), which introduces management concepts, disciplines, and architectures. We encourage everyone to read at least Chapter 2 (Introduction to JMX). You should feel free to read those chapters that most interest you or are most immediate to your needs. If you have a general understanding of JMX, then the rest of the chapters of the book can stand alone, so it is not necessary to read the book straight through.

The following is a quick summary of the contents of each of the three sections of the book:

Part I: JMX Introduction. The first part of the book, Chapters 1 and 2, introduces you to the management world and JMX. JMX is a management technology, and effective use of it requires some fundamental understanding of the aspects of management and JMX's role in each. Chapter 1 (Management Concepts) describes the basic concepts and vocabulary of system and applications management. It starts by highlighting the history of management technologies, and it explains management disciplines, applications, architectures, and information. Chapter 2 (Introduction to JMX) describes why and how JMX came about, and then introduces each of the fundamental elements of JMX, MBeans, MBeanServer, and notifications. We give you a hands-on tour of JMX, using a simple server and then instrumenting it for management using JMX to illustrate each of the elements. If you are new to management and JMX, we recommend that you read the chapters in this part first to provide common background material and terminology for the remainder of the book.

Part II: JMX Details. Part II is the meat of this book. This section gives you the comprehensive coverage of JMX along with practical examples and advice, including how to relate security to JMX. The management beans that you will need to be able to implement are introduced with extensive examples and advice in Chapter 3 (All about MBeans) and Chapter 4 (Model MBeans). Chapter 5 (The MBeanServer) describes the MBeanServer that is central to JMX's agent architecture and key to its flexibility. This chapter describes the interfaces and services that the MBeanServer provides: the MBean registry and object naming scheme, the generic MBean interface, the query mechanism, and the notification support. Chapter 6 (Monitors and Monitoring) and Chapter 7 (JMX Agent Services) will help you understand the standard services that JMX provides and how to use them. Chapter 8 (Securing JMX) covers a crucial topic that the JMX specification is silent on. This chapter describes the security exposures presented by the management domain and offers a transparent security layer based on the one designed for TMX4J. Finally, Part III closes with the pure gold of Chapter 9 (Designing with JMX). In this chapter, all the authors share their experiences with JMX and how these experiences can be used in real systems. Included are discussions on deployment models, instrumentation patterns, best practices, and pitfalls.

Part III: Application of JMX. Part III is where we see JMX positioned as a fundamental technology for new and fast-growing industries. Chapter 10 (J2EE and JMX) provides great detail, from one who was there, about how JMX's management of J2EE systems has been standardized with JSR 77. It includes examples of how JMX works in real-world application server products. The section ends with a look to the future in Chapter 11 (Web Services and JMX). This chapter gives a brief description of Web services and the management issues associated with them. It then illustrates how JMX can be used to make Web service-based applications manageable. It lays out how to manage the registry, the Web service execution environment, and the Web service itself.Appendix. The appendix provides a reference for implementers and users of JMX technology, including lists of JMX implementations, JMX-enabled management platforms, and JMX-instrumented products.

Read More Show Less

Table of Contents

Preface.

Part I. JMX Introduction.

1. Management Concepts.

Progress of Management.

Why Invest in Management?

The Natural Evolution of Management.

Management Architectures.

Managed Resource.

Agent.

Subagent.

Midlevel Manager.

Management System.

Management Technologies.

Proprietary Technologies.

Standard Technologies.

Managing the Lifecycle.

Management Disciplines.

Distribute.

Install.

Configure.

Monitor.

Control.

Managed Resource Responsibilities.

Management Data.

Management Operations.

Management Instrumentation.

Management Patterns.

Event Generator.

Noninterruptible.

Queryable.

Operational.

Management Applications.

Distribution Applications.

Inventory Applications.

Topology Applications.

Configuration Applications.

Operations Applications.

Event and Automation Applications.

Monitoring and Performance Applications.

Summary.

General References.

Notes.

2. Introduction to JMX.

Why We Need JMX.

Choosing a Management Technology.

Dealing with Diversity.

Being Managed by Multiple Management Applications.

Supporting Application-Specific Management Systems.

Which Applications Should Be Manageable?

Complex Applications.

High-Volume Applications.

Mission-Critical Applications.

Corporate Applications.

Applications with Expectant Customers.

The Goals of JMX.

Simple API.

Dynamic Management.

Isolation.

Generic Management.

History.

JMAPI.

JDMK.

JMX.

The Specification and Compliance.

The Reference Implementation.

JMX Overview.

JMX-Managed Resources.

Mbeans.

JMX Agents.

JMX Adapters.

Adapter Tools.

Quick Tour of JMX.

todd, the Time of Day Daemon.

todd Management.

toddÕs Mbeans.

Incorporating an MbeanServer.

Monitoring todd.

Browser Control.

Summary.

Notes.

Part II. JMX Details.

3. All about Mbeans.

MBean Fundamentals.

The Management Interface.

The Introspection Algorithm.

MBean Construction.

Standard Mbeans.

Dynamic Mbeans.

Active Mbeans.

Open Mbeans.

Design Guidelines.

Summary.

4. Model Mbeans.

Introduction.

The Simplest Model MBean Example.

The ModelMBean Interface.

DynamicMBean.

PersistentMBean.

ModelMBeanNotificationBroadcaster.

Managed Resources.

ModelMBeanInfo.

Descriptors.

Model MBean Descriptors.

Attribute Descriptors.

Constructor Descriptors.

Operation Descriptors.

Notification Descriptors.

Behavior of the Model Mbean.

Caching.

Values and Validation.

Delegation.

Persistence.

Logging.

Miscellaneous Descriptors.

XML Service: Priming ModelMBeanInfo from XML Files.

Using Model Mbeans.

Creating Static Model Mbeans.

Creating Dynamic Model Mbeans.

Adding Custom Descriptors.

Overriding the RequiredModelMBean Class.

Common Mistakes with Model Mbeans.

Caveats.

Transactionality.

Remoteness.

Summary.

XML File Example.

Notes.

5. The MbeanServer.

The MBeanServerFactory Class.

Object Naming.

Object Name Domains.

Object Name Key Properties.

The ObjectName Class.

The ObjectInstance Class.

The MBeanServer Interface.

MBean Lifecycle Methods.

MBean Access Methods.

MBeanServer Methods.

The MBeanServerDelegate Mbean.

Finding Mbeans.

Query Expressions.

Query Scope and Pattern Matching.

MBeanServer Query Methods.

Notifications.

Summary.

6. Monitors and Monitoring.

The JMX Monitor Service.

The Monitoring Package Structure.

The Monitor Mbean.

MonitorNotification.

Concrete Monitors.

Monitoring ApacheÕs Status.

Canonical Usage Pattern.

StringMonitor.

CounterMonitor.

GaugeMonitor.

Summary.

7. JMX Agent Services.

Timer Service.

The Notification Queue.

Timer Notifications.

The Timer Class.

Dynamic MBean Loading Service.

The MLET Tag.

MLet Examples.

The MLet API.

Relation Service.

A Simple Example: The SessionPool Relation.

The RelationService Class.

JMX Connectors.

Connector Mbean.

Connector Client Proxy.

Summary.

Securing JMX.

JMX Security Exposures.

Permission-Based Security Fundamentals.

Permissions.

SecurityManager.

Policy.

JMX Permissions.

MbeanServerPermission.

MbeanTrustPermission.

MbeanPermission.

Using JMX Security.

A Simple Process Management Application (SPMA).

Running with Security Enabled.

Policy Configuration.

Summary.

9. Designing with JMX.

MBeanServer Deployment Patterns.

Daemon.

Component.

Driver.

Instrumentation Patterns.

Applications as Mbeans.

MBeans on Behalf of Applications.

Publish-Only Mbeans.

Facades for Distributed Applications.

MBean Registration and Lifecycle.

Registration by Application.

Registration by Third Party.

Registration by Management Adapter.

Registration by MBeanServer Bootstrap.

Best Practices.

MBean Granularity.

Application Self-Management.

Resource Schema.

Notifications and Logging.

Federation Options.

Summary.

Part III. Application of JMX.

10. J2EE and JMX.

Java 2 Enterprise Edition.

J2EE Management.

Management Tool Access: The MEJB.

J2EE Management Models.

The Base Managed-Object Model.

The Management Domain Model.

The J2EE Application Server Model.

J2EE Application Component Models.

J2EE Server Runtime Components.

Standard Management Functions.

State Management.

Event Generation.

Performance Monitoring.

Stats Interface Details.

Application-Specific Extensions.

Areas Missing from J2EE Management.

The Vision.

Sample JSR 77 Code.

Summary.

Notes.

11. Web Services and JMX.

Web Services Overview.

Service-Oriented Architecture.

Web Service Stack.

Web Service Registry Management.

Registry Owner.

Registry User.

Web Service Execution Environment Management.

Execution Environment Owner.

Execution Environment User.

Web Service Management.

Web Service Owner.

Web Service User.

Summary.

Code Listings.

UDDIRegistryClientManagerMBean Implementation.

WebServiceRuntimeManagerMBean Implementation.

WebServiceManagerMBean Implementation.

StockQuote Service WSDL Document.

Notes.

Appendix. JMX in Products.

JMX Agent Implementations.

JMX 1.0 Reference Implementation from Sun Microsystems.

JDMK 4.2 from Sun Microsystems.

TMX4J 1.0 from Tivoli Systems.

AdventNet Agent Toolkit Java/JMX Edition.

AdventNet ManageEngine.

MX4J.

JMX Managers.

Tivoli Web Component Manager.

Dirig Software.

AdventNet Middleware Manager.

AdventNet Web NMS.

Vigor Soft hawkEye.

JMX-Enabled Products.

IBM WebSphere 5.0.

IBM Web Services Tool Kit 3.1.

IBM WebSphere Voice Server.

IBM WebSphere Business Components Composer.

BEA Systems WebLogic Server 7.0.

IONA iPortal.

IONA Technologies PLC: Orbix E2A XML Bus Edition 5.3.

Hewlett-Packard OpenView.

Hewlett-Packard Core Services Framework.

Jboss.

Sonic Software SonicXQ.

Pramati Server from Pramati Technologies.

Sybase EAServer 4.0.

Sun Microsystems: Sun ONE Application Server.

Sun Microsystems: Sun ONE Portal Server.

Compiere Open Source ERP & CRM.

Notes.

Index. 0672324083T05022003

Read More Show Less

Preface

Introduction

Welcome! You have just opened your key to the secret art of management. This book is your comprehensive guide to the development of manageable application software using the Java Management Extensions (JMX). Now that Java has made the leap from cool to critical, every developer who has deployed a mission-critical application knows it is not enough just to write great code; to be truly useful, critical applications must be manageable as well. With the publishing of the JMX specification and the availability of multiple JMX implementations, Java programmers have a standard mechanism with which to instrument and manage their software products. This book will provide you with the information necessary to leverage JMX to create a new generation of better-instrumented, more manageable, and therefore more reliable mission-critical Java applications.

At the moment the two biggest growth areas for Java are enterprise and embedded systems. Tens of thousands of IT developers are now or soon will be using J2EE technologies to create mission-critical business systems. The major J2EE vendors, including IBM WebSphere and BEA WebLogic application servers, are using JMX to provide their own management, as well as to enable yours. The J2EE 1.4 standard is being extended to include management interfaces using JMX as defined by JSR (Java Specification Request) 77. At the other end of the spectrum, thousands more developers will be using Java to create embedded applications, from set-top boxes to remote pumping-station monitors.

It is essential that these applications, which run unattended on "invisible computers" for the most part, be as self-monitoring and self-managing as possible. JMX provides a substrate upon which to construct such self-monitoring/managing applications, and a copy of this book will substantially reduce your JMX learning curve.

JMX is also being accepted by the telephony industry as a management infrastructure for Java for the Advanced Intelligent Network (JAIN). As these specifications for the use of Java in telephony service environments emerge, whole new industries will need to become familiar with JMX. The probability that you will encounter JMX in one form or another, as part of your own designs or as the instrumentation mechanism for components of your infrastructure, is very high. This book will give you the foundation and technical details you need to make effective use of JMX wherever you find it.

Although it is well known that JMX is continuing to evolve, its basic architecture and interfaces will remain consistent. There is more to using JMX than understanding the architecture and interfaces; you also need to understand how it connects to management systems, the role it plays in the management industry, appropriate use of the technology, and management design patterns. In short, you need to understand how to create a manageable system.

This book has been written in a comprehensive manner by experts in that space. It also will give you an in-depth understanding of the application of JMX in hot technologies: J2EE and Web services. You will find this book to be useful long after new versions of JMX become available because the concepts introduced here are classic applications of management concepts and technologies to the Java family. This book will do more than help you write MBeans; it will help guide you build manageable systems.

This Book's Intended Audience

Our primary goal in writing this book is to explain Java-based management, manageability (i.e., enabling resources to be managed), and JMX in detail, and to make it easy to understand.

Architects and developers involved in the design and implementation of mission-critical Java applications are the primary audience for this book. They understand that their biggest challenges come well after the first successful installation of a new piece of software, when their client's business becomes critically dependent on that software. Then it is essential that administrators be able to monitor and manage the application day and night to keep the business in business. Until recently, each Java-based product had to develop its own ad hoc management solution. That changed with publication of the Java Management Extensions Instrumentation and Agent Specification, v1.0.

This book has been written especially for Java developers who find themselves in a situation where they must enable their application to be managed by an "outside" management system. Other Java developers and architects who will find this book useful include

  • Those who are going to help create a new administrative or management system for their Java application
  • Those who need to integrate their application into an existing JMX-based administrative or management system
  • Those who want to develop some management functions to interact with an application that supports JMX
  • Curious folks who just like to know what all the Java acronyms stand for

This book assumes that you do not have a background in systems or applications management and provides a comprehensive overview of the history of the management industry and the forces that combined to make JMX the ubiquitous management technology for Java resources across the Java community. Java resources deployed in the micro, standard, and enterprise editions of the JDK can all use JMX.

The authors have extensive firsthand experience with JMX from nearly every angle. Heather Kreger was an original member of the JMX Expert Group and personally contributed the specification, reference implementation (RI), and Technology Compatibility Kit (TCK) for model MBeans. She is now involved in Web services and applying management to this emerging space. Ward Harold is a member of the current JMX Expert Group (JSR 160), the lead architect for Tivoli's implementation of JMX and TMX4J, as well as Tivoli's Web Component Manager product, which uses JMX to manage resources. Leigh Williamson was a member of JSR 77 ("J2EE Management") and the architect for WebSphere's JMX support and JSR 77 support. This book represents our experience with JMX from all these projects: We bring you a unique insider perspective on the intent, implementation, application, and even pitfalls of JMX. All of this JMX experience is in the context of our extensive experience in all aspects of management systems and middleware.

This book will be valuable for developers of applications that should be managed, developers of middleware, and developers of management systems. We hope that you will find it useful not only as an introduction to JMX, but also as a frequent desktop reference as you connect your application to an existing management system or start to develop your own management application.

What You Need to Know before Reading This Book

This book assumes that you are familiar with developing applications using Java. We do not assume that you have experience with management systems. As such, the first chapter introduces management concepts, disciplines, and architectures. If you are familiar with management systems, then you may skip this chapter and start with Chapter 2 (Introduction to JMX).

Chapter 10 (J2EE and JMX) explains JSR 77 ("J2EE Management") in depth, as well as how it relates to JMX. This chapter assumes that you have a high-level understanding of the components of the J2EE specification and its realization in J2EE application servers.

Chapter 11 (Web Services and JMX) explains how JMX can be used to develop manageable Web service applications. It will be helpful to have a general understanding of what a Web service is, and familiarity with common Web service architectures.

What You Will Learn from Reading This Book

This book will provide you with the necessary information, insight, and examples for using JMX to build manageable mission-critical applications or provide a standard management interface to homegrown and third-party management applications.

It is sometimes as important to understand the context of Java technologies as it is to understand the technology itself. This is the case with JMX. Therefore, this book gives you almost two chapters (1 and 2) detailing the history of management systems, management architectures, applications, and technologies. In these chapters we also explain the forces that combined to make JMX so important for the Java community. This book gives you the background you need to understand and enter into conversations in the management industry.

Specifically, you will learn to develop standard and dynamic MBeans to represent JMX manageable resources in their applications. You will understand how and when to use the model MBean to rapidly develop extensible instrumentation and how to represent interdependent management components using the JMX relation service. Because instrumentation inevitably requires monitoring, this book discusses the use of JMX's various monitors and its notification model in detail. In addition, this book provides working sample code to illustrate the application of JMX technology in various settings, including J2EE and Web services.

Software Needed to Complete the Examples

All of the examples in this book, along with extras not in the book, can be downloaded from Addison-Wesley's Web site for this book: http://www.awprofessional.com/titles/0672324083. At a minimum, you will need to have a J2SE JDK and a JMX implementation installed on your computer to compile and run the samples shown throughout this book. These samples have been tested with the TMX4J. Some have also been tested with MX4J implementations. TMX4J is 100 percent Java code and should run on any platform, but it has been tested on a Windows operating system. TMX4J can be downloaded for free from the IBM alphaWorks Web site at http://alphaworks.ibm.com.

The examples in Chapter 10 demonstrate solutions based on J2EE application server products such as WebSphere Application Server. The J2EE servers that support JMX and JSR 77 are listed in the appendix. Complete product information for WebSphere Application Server may be found on the Web at http://www.ibm.com/products/websphere.

To run the examples in Chapter 11, you will need a Web services runtime including a Web server, servlet engine, SOAP engine, and JMX implementation. The samples in this chapter were tested with the IBM Web Services Tool Kit, which is available for free from the IBM alphaWorks Web site at http://alphaworks.ibm.com.

How This Book Is Organized

We have arranged the content of this book into three broad sections. Part I introduces management and JMX. Part II provides detailed and comprehensive coverage of the JMX architecture, APIs, programming techniques, and pitfalls. We even provide an entire chapter on design and implementation suggestions, along with our favorite pitfalls. Part III lays out the application of JMX in two fast-growing fields: J2EE and Web services.

We recognize that each reader will be interested in different portions of the book, and not everyone will need to read every chapter. Readers who are already familiar with management systems may skip Chapter 1 (Management Concepts), which introduces management concepts, disciplines, and architectures. We encourage everyone to read at least Chapter 2 (Introduction to JMX). You should feel free to read those chapters that most interest you or are most immediate to your needs. If you have a general understanding of JMX, then the rest of the chapters of the book can stand alone, so it is not necessary to read the book straight through.

The following is a quick summary of the contents of each of the three sections of the book:

Part I: JMX Introduction. The first part of the book, Chapters 1 and 2, introduces you to the management world and JMX. JMX is a management technology, and effective use of it requires some fundamental understanding of the aspects of management and JMX's role in each. Chapter 1 (Management Concepts) describes the basic concepts and vocabulary of system and applications management. It starts by highlighting the history of management technologies, and it explains management disciplines, applications, architectures, and information. Chapter 2 (Introduction to JMX) describes why and how JMX came about, and then introduces each of the fundamental elements of JMX, MBeans, MBeanServer, and notifications. We give you a hands-on tour of JMX, using a simple server and then instrumenting it for management using JMX to illustrate each of the elements. If you are new to management and JMX, we recommend that you read the chapters in this part first to provide common background material and terminology for the remainder of the book.

Part II: JMX Details. Part II is the meat of this book. This section gives you the comprehensive coverage of JMX along with practical examples and advice, including how to relate security to JMX. The management beans that you will need to be able to implement are introduced with extensive examples and advice in Chapter 3 (All about MBeans) and Chapter 4 (Model MBeans). Chapter 5 (The MBeanServer) describes the MBeanServer that is central to JMX's agent architecture and key to its flexibility. This chapter describes the interfaces and services that the MBeanServer provides: the MBean registry and object naming scheme, the generic MBean interface, the query mechanism, and the notification support. Chapter 6 (Monitors and Monitoring) and Chapter 7 (JMX Agent Services) will help you understand the standard services that JMX provides and how to use them. Chapter 8 (Securing JMX) covers a crucial topic that the JMX specification is silent on. This chapter describes the security exposures presented by the management domain and offers a transparent security layer based on the one designed for TMX4J. Finally, Part III closes with the pure gold of Chapter 9 (Designing with JMX). In this chapter, all the authors share their experiences with JMX and how these experiences can be used in real systems. Included are discussions on deployment models, instrumentation patterns, best practices, and pitfalls.

Part III: Application of JMX. Part III is where we see JMX positioned as a fundamental technology for new and fast-growing industries. Chapter 10 (J2EE and JMX) provides great detail, from one who was there, about how JMX's management of J2EE systems has been standardized with JSR 77. It includes examples of how JMX works in real-world application server products. The section ends with a look to the future in Chapter 11 (Web Services and JMX). This chapter gives a brief description of Web services and the management issues associated with them. It then illustrates how JMX can be used to make Web service-based applications manageable. It lays out how to manage the registry, the Web service execution environment, and the Web service itself.Appendix. The appendix provides a reference for implementers and users of JMX technology, including lists of JMX implementations, JMX-enabled management platforms, and JMX-instrumented products.

0672324083P12122002

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing 1 Customer Reviews
  • Anonymous

    Posted March 23, 2003

    Easy to understand

    Remember when java burst onto the scene on 1996, and you could write cool applets that showed animations on a web page? Well things have progressed vastly since then, and especially after the dotcom crash, being essential is far more important than being cool. The emphasis with java has shifted from towards backend, web server-type applications, when you have to interact with legacy databases and management tools. The problem with the latter is that if you are writing a java application that is to be controlled by some management level software, this latter item could be furnished by several companies. It is expensive to customise your code for each management package; but not to do so may severely restrict your sales. JMX, Java Management Extensions, arose to solve this puzzle. It is still fairly new, and not many java programmers may be familiar with it. If so, this new book [2003 vintage] will help educate you. The authors point out a simple analogy that may clarify. Shortly after java was introduced, there was a need to let java programs access data in databases made by various vendors. The solution was an industry standard API, called JDBC. Each database vendor wrote an implementation of this API, which was hence called a JDBC driver. This let java programmers program to that interface and ignore any lower level details. So if you can understand that, you can understand JMX. The difference is that here your java application will be controlled by some management software, whereas with JDBC, your java program would have been the controlling entity. The bulk of the book goes into the details of the JMX API. [Ok, it may not be literally an application programmable interface, but conceptually you can think of it that way.] The exposition is straightforward and logical. A nice resource for the aspiring JMX developer.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing 1 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)