geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Berin Loritsch <>
Subject Re: Dynamic MBeans. Was: Kernel Architecture
Date Tue, 12 Aug 2003 15:39:44 GMT
Jens Schumann wrote:

>>MBean != interface, and we should never use them as such.  By following that
>>mantra, dynamic MBeans becomes a viable tool with few drawbacks.
> Well, this is true if you talk about the instrumentation level only. But if
> you trust in JMX agents for application management you are moving towards
> the MBean == interface analogy. In my opinion JMX offers a lot more than
> management, stuff you need to implement anyway: Dynamic Classloading,
> Notifications, Monitoring, Relations and Lifecycle of components.

My alarm bells go off every time I hear that an object should ever be considered
synonymous with a simple interface.

All of those other aspects: dynamic classloading, notifications, monitoring,
etc. can be addressed by other means--many times more effectively.

I get nervous when I here something slices, dices, makes julian fries, and
will not break (oops! it broke).  That combination hooka and coffie maker
(get the movie reference now?) might better be served with different mechanisms.

For example, in the world of audio and home entertainment systems, you have
two camps:

1) The all in one jobbies--usually less expensive
2) Component systems--usually more expensive

The thing is that there are certain compromises in the all-in-one box that
you have no control over.  Usually the manufacturers of these boxes can only
spend money on one part of it, and they skimp on the rest.  So it may have
a good tape player, but the CD player sucks (or vice versa).

With the component systems, you can get exactly what you want for the job
at hand.  If you don't want a tape player, you don't have to buy one.  If
you really care about your CD player, you can spend money on a good one.
In other words, if something isn't up to snuff you have the ability to swap
it out at any time for a better component.  You aren't stuck with what the
initial manufacturer decided was best for you.

> In the end it all boils down to whether a system is JMX enabled or JMX
> based. Interestingly most projects I have seen moved to JMX enabled at some
> stage, since too much stuff was maintained in parallel. However the
> transition from one to the other model is something you should avoid (just
> take a look at tomcat 5).


Seriously though, I would much prefer to have JMX enabled than JMX based,
as we can have more fine tuned control where we need it.  The JMX dynamic
classloading might be something causing problems instead of solving them.
If that happens, what is your recourse?


"They that give up essential liberty to obtain a little temporary safety
  deserve neither liberty nor safety."
                 - Benjamin Franklin

View raw message