Wednesday, February 17, 2010

JBoss AS 6.0.0.M2 released

JBoss AS 6.0.0.M2 has been released yesterday. This is the second milestone release of the JBoss AS-6 series. You can download it from here.

Brian's blog contains details about what this new release contains. From the EJB3.1 point of view, this release contains the initial EJB3.1 support. See this wiki for more details.

Other than the new features that have been added to 6.0.0.M2, you will also notice that this new version boots faster than the earlier 5.x and 6.0.0.M1 versions. There have been numerous (valid) complaints about slow boot time with AS-5.x and 6.0.0.M1. Although there have been performance improvements after 5.1.0 release, they weren't too noticeable. However, in this version of AS, there have been numerous performance fixes within the JBoss Microcontainer (JBoss MC) project and various other places which ultimately has resulted in a better boot time for JBoss AS. For those who believe in numbers, here's the boot time comparison on my local system:

JBoss AS-5.1.0 "default" server config:


21:02:56,538 INFO [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221053)] Started in 42s:792ms


JBoss AS 6.0.0.M1 "default" server config:


21:08:42,775 INFO [AbstractServer] JBossAS [6.0.0.M1 (build: SVNTag=JBoss_6_0_0_M1 date=200911281333)] Started in 36s:156ms


JBoss AS 6.0.0.M2 "default" server config:


15:22:01,708 INFO [org.jboss.bootstrap.impl.base.server.AbstractServer] JBossAS [6.0.0.20100216-M2 (build: SVNTag=JBoss_6_0_0_20100216-M2 date=20100216)] Started in 22s:311ms


So a boot time improvement of 20 seconds from 5.1.0 and 14 seconds from 6.0.0.M1.

One important thing that users must be aware is that, JBoss AS 6.0.0.M2 has introduced the notion of lazy deployment of applications. While working on improving the boot time of AS, it was noticed that the admin-console (JBOSS_HOME/server/< servername>/deploy/admin-console.war) adds almost 25 to 30 seconds to the boot time of the AS. Obviously this isn't good. Furthermore, not many developers really use admin-console, atleast not very frequently while developing and testing their application. So deploying the admin-console (and any other such application) by default isn't of any value for such users. So it was decided that the notion of lazy deployments would be introduced.

To put it in simple terms - although the admin-console.war, jmx-console.war and jbossws-console.war will be shipped by default in the AS, they will no longer be *deployed* by default. The first access to any of these applications is going to deploy them. The complete set of details can be found in this forum thread. So in AS 6.0.0.M2, you will notice that these applications have now been moved to JBOSS_HOME/common/deploy folder. Note that, the admin-console is still a bit of heavy beast during deployment - you will see a slow response during admin-console deployment (so first access to this application is going to be slow). But this will no longer add to the boot time. There are plans to further improve the boot time of the AS in the next coming M3 release. So this is not the end of boot time performance improvements, but definitely a good start!

So, go download the newly released version and try it out! Let us know of any issues you run into in our AS user forum. And if you have run into any EJB3(.1) issues, or have any questions around it, then feel free to ping us on #jboss-ejb3 (irc.freenode.net) or even vist our EJB3 user forum