Search |
||
Dropping proposed features from the new JMX APIPosted by emcmanus on September 18, 2008 at 8:17 AM PDT
Yesterday I cleaned up the umbrella bug that lists the various things we are planning for version 2.0 of the JMX API, which is the version that should be included in Java SE 7. Here's a list of the things we were thinking of doing but are not now planning to. In some of these cases, we realized after discussion in the Expert Group that the proposed feature was either not practical or too hard to nail down. For example, support for persistence would be good. But what would it look like? Would we give you some way to take a snapshot of every MBean? How would that snapshot be represented? How would it be restored? Or would we have a way for an MBean to define its own persistence explicitly? Then what could we usefully define that an MBean can't already do today? In other cases, a reluctant engineering decision was taken because, though the feature would be useful, it would not be useful enough to justify the engineering work to specify it, implement it, and write spec conformance tests for it. Here's the list, with explanations:
None of these decisions is completely irreversible of course. But at this stage I think anyone with a very strong desire to see any of the departed features brought back would need to volunteer to do all the relevant engineering work! »
Related Topics >>
Open JDK Comments
Comments are listed in date ascending order (oldest first)
Submitted by gregorr on Fri, 2008-10-03 02:17.
Thanks for the quick heads-up, now I am happy again;) I agree that aggregation functions are rather custom and easily added according to own needs. However an expression language, or even a DSL for constructing an MBean-infrastructure sounds interesting... Also looking forward to the new Eventing-system, wow, JMX-EDA-magic:)
I always come back to JMX when I need a simple user interface for controlling various application functionality in a straight forward manner, very good for prototyping.
Submitted by gregorr on Thu, 2008-10-02 02:46.
Eamonn, I have followed the JMX 2.0 development for quite some time now. There were many interesting and inspiring articles about high-level JMX features, and also about federated MBeans, in your blog.
I am very disappointed that MBeanServer aggregation or federated MBeans are now cancelled, after all this time.
I had to write my own implementation back in 2005 and it worked quite good, but I thought there will be surely something better coming out in the next years - yet today there still isn't.
I cannot understand why after 3 years (you talked about this feature back then I believe) this feature gets canned for dubious reasons - "very hard to define": this is not true, and underestimates the intelligence of Sun's design team. Why is it then, that MBeanServers *could* be aggregated in the then proprietary Sun JDMK?? It seemed to work fine there, but did cost a bit. The documentation did not sound too complex, the concept of "mounting" MBeans seemed a bit UNIXish, but I think it was a good API.
In my custom implementation, I kept things simple but also included aggregation-methods like average(), min() or max() to perform some often needed calculation on typical MBean data on the master-node (collecting data from slave-nodes). If I can get the source from my former company, I can send it your way,-)
Anyway, best of luck with JM2.0-- it still looks good and if you leave annotations in at least, it will be a welcome upgrade.
Submitted by emcmanus on Thu, 2008-10-02 05:07.
Gregor, my apologies for not being clearer. Federation is still part of the JMX 2.0 API, and is now publicly available as I mentioned in my next blog entry. Aggregation is what's not, meaning for example we don't provide a predefined way for you to define an MBean with an attribute which is the sum of n attributes in n other MBeans, for example. For any particular case, it should be rather easy to code an MBean yourself that handles it. But a general feature would ideally have some sort of expression language that would allow you to express an attribute in the aggregation MBean as being an arbitrary function of an arbitrary number of other attributes in other MBeans, and that's what we're not doing for now.
I've updated the blog entry to make this clearer - thanks for drawing it to my attention!
Regards,
Éamonn
Submitted by wlouth on Fri, 2008-09-19 07:38.
Wonderful. I was beginning to think the JMX team was bent on doubling the size of the runtime on their own.
I am still surprised with some of the things that did get through especially as they seem to be an re-invention of JNDI again (federation, contexts, namespaces). I accept sometimes you must abandon or just plain ignore existing standards in search for innovation but was that what was delivered? I am afraid not. William
Submitted by jwenting on Fri, 2008-09-19 21:58.
In other words, the only useful additions and changes in Java 7 have been cancelled...
Submitted by sauvage on Sat, 2008-09-20 18:31.
Will it be possible for a JMX client to connect to a JMX server through firewall ?
I know there's a weird workaround described here http://blogs.sun.com/jmxetc/entry/connecting_through_firewall_using_jmx but I think it should be possible by default.
|
||
|
|