|
Monitoring :
The JMX specification allows using a monitoring service to monitor the observed attribute of one or more other MBeans at intervals specified by the granularity period. For
each observed MBean, the monitor derives a value from this observation, called the
derived gauge. This derived gauge is either the exact value of the observed attribute,
or optionally, the difference between two consecutive observed values of a numeric
attribute.
A specific notification type is sent by each of the monitoring services when the value
of the derived gauge satisfies one of a set of conditions. The conditions are specified
when the monitor is initialized, or dynamically through the monitor MBean's
management interface. Monitors can also send notifications when certain error cases
are encountered while monitoring an attribute value.
Timer Service:
The timer service triggers notifications at specific dates and times. It can also trigger
notifications repeatedly at a constant interval. The notifications are sent to all objects
registered to receive notifications emitted by the timer. The timer service is an
MBean that can be managed, allowing applications to set up a configurable
scheduler.
Conceptually, the Timer class manages a list of dated notifications that are sent
when their date and time arrives. Methods of this class are provided to add and
remove notifications from the list. In fact, the notification type is provided by the
user, along with the date and optionally a period and the number of repetitions. The
timer service always sends the notification instances of its specific TimerNotification class.
Relation Service:
As part of the agent specification, the Java Management Extensions (JMX)
specification also defines a model for relations between MBeans. A relation is a user
defined, n-ary association between MBeans in named roles. The JMX specification
defines the classes that are used to construct an object representing a relation. It also
defines the relation service that centralizes all operations on relations in an agent.
All relations are defined by a relation type that provides information about the roles
it contains, such as their multiplicity, and the class name of MBeans that satisfy the
role. Through the relation service, users create new types and then create, update, or
remove relations that satisfy these types. The relation service also performs queries
among all relations to find related MBeans.
The relation service maintains the consistency of relations, checking all operations
and all MBean deregistrations to ensure that a relation always conforms to its
relation type. If a relation is no longer valid, it is removed from the relation service,
though its member MBeans continue to exist otherwise.
Conclusion
Most application servers in the market today either implement the JMX specification or have them on their agenda. However the specification has not been in popular use. It might take some time for the developer community to embrace JMX and use them for real time applications. This article should have introduced the reader to the basic concept of JMX and the important aspects of it. For more information please refer to the JMX 1.2 Specification found on the Java site and the accompanying reference implementation.
References:
The JMX Specification
Benoy Jose is a web developer with over six years of experience in J2EE and Microsoft technologies. He is a Sun Cetified programmer and enjoys writing technical and non-technical articles for various magazines.
New on the Java Boutique:
New Review:
Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling
API boasts simplicity, ease-of-integration, a well-rounded feature
set, and it's free!
New Applet:
Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA
sequences into three useful formats.
Elsewhere on internet.com:
WebDeveloper Java
Lots of Java information on webdeveloper.com
WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.
ScriptSearch Java
Hundreds of free Java code files to download.
jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.
|