JBoss 7 was released yesterday to significantly more fanfare than the poorly timed release of JBoss AS 6, whose December 29th release date spurned rumours that the marketing team had been taken over by a bunch of Christmas hating miscreants who had no idea that the majority of their consumer base might be inerested in doing something other than downloading distribution binaries and playing around on port 8080 two days before the first of January.
But the marketing team didn’t make the same mistake twice, spacing some good room between the recent long weekend and yesterday's big announcement. And judging by the comments and quips generated by the twitiverse yesterday, it would appear that doing a big product release in the middle of a typical workweek isn’t such a bad idea.
Playing in the JBoss AS 7 Sandbox
Yes, JBoss proved that most Enterprise Java Professionals really aren’t busy enough at work these days, as everyone from Java Superstar Matt Raible (rhymes with cable), to the lowly editor of TheServerSide, were busy downloading, installing, and playing around with the newly released software instead of doing the work they're actually being paid to do.
On a side note, one of the most highly retweeted comments actually came from JSF-hater Matt Raible, mraible #Tomcat7 startup time: 69ms, #JBossAS7: 3127ms. Startup with ajax-login.war in webapps/deployments? Tomcat: 15985ms, JBoss: fails in 154ms. Which was followed up by this tweet: mraible Reason why #JBossAS7 fails to deploy Ajax Login? It doesn't like #Spring, which seems logical. http://bit.ly/n4gP82
Speed and AS 7: Not Just Lip-Service
But indeed, the big news surrounding this whole release is speed: speed, speed, speed. JBoss 7 is fast, super fast in fact, and the reason it’s super fast is because of the modular approach to development, a theme that has become more than a trend in the enterprise Java community.
Now we keep hearing this story over and over again. The GlassFish server is lightning fast because of their modular approach to development, and the Oracle JDeveloper team swears by OSGi. Says Duncan Mills, senior director of product management for Oracle's Application Development Tools, about the latest, lightning fast, JDeveloper release, “The big speed improvement we saw is really due to the OSGI framework that we have adopted for our plug-ins. Because we moved to that framework, it's actually reduced our startup time rather dramatically, by a factor of two to three, depending on what you have been previously noting.”
But here’s the thing: the JBoss team didn’t use OSGi. JBoss AS 7 does indeed support OSGi, and we will see a huge number of OSGi applications being deployed to it, there’s no doubt about that. In fact, the manner in which the JBoss application server was designed makes AS 7 a pretty hospitable place for OSGi applications. “Thanks to the similarity in the design, OSGi support is available out of the box, built as a layer above JBoss Modules and the Module Service Container (MSC).”
But apparently OSGi was a little too de rigueur for the JBoss 7 AS team. They instead chose their own JBoss modules, a precursor to what should be a JSR 294 (Java modules) compliant implementation. But as it stands now, this is simply a vendor specific module implementation.
But the bottom line is that the modular approach has worked, regardless of whether it was OSGi or a forward looking pre-cursor to Java 7 Modules. “AS 7 does classloading right. It uses JBoss Modules to provide true application isolation, hiding server implementation classes from the application and only loading the classes your application needs. Modules, packaged as collections of classes, are peers that remain isolated unless explicitly defined as a dependency of another module. Visibility rules have sensible defaults, yet can be customized.”
So, speed, ease of use, modularity and incremental deployment are the big features that the JBoss team is decrying with the latest release of their application sever. And from the community response so far, it seems like AS 7 is a winning pitch.