During the development of Nuxeo Platform 5.5 (on the 5.4.3-SNAPSHOT branch) Nuxeo has moved the application to a fully POJO (Plain Old Java Objects, if you wonder what it means) based distribution. This decision was motivated by our desire to abandon the RMI exposition primarily because RMI/EJBs introduces complexity along with poor performance, plus we prefer the REST exposition of our API.

Now that this modification has been completed, we were curious about what this new 5.4.3-SNAPSHOT distribution without EJB would bring us in terms of performance against our old distribution with EJBs.

Here is the result:

Test A Test B Comparison result
Nuxeo 5.4.3-SNAPSHOT on JBoss Nuxeo 5.4.2 on JBoss (EJBs enabled) 2 to 4 times faster than B
Nuxeo 5.4.3-SNAPSHOT on Tomcat Nuxeo 5.4.3-SNAPSHOT on JBoss 1.1 to 1.5 times faster than B
Nuxeo 5.4.3-SNAPSHOT on Tomcat Nuxeo 5.4.2 (EJBs enabled) on JBoss 1.5 to 2.5 times faster than B

Tests have been made on identical Hardware using the same set of data.
If you follow links above, you will see the full FunkLoad diff report between the 2 configurations.

We've already discussed how the Nuxeo distribution on JBoss 5 strongly decreases response time against JBoss 4, as well as pointing out the sluggish performance of the EJB containers on JBoss 5 and we further validate this as you can see we are closer to the tomcat distribution performance on JBoss 5 without EJB (second row into the table above).

This is only our initial findings and we haven't yet conducted further analysis or dug deeper to try to explain the reasons for why we are seeing these results, but, in the meantime, you can watch the jenkins job here.

In conclusion, we can say that the JBoss 5 tortoise hasn't yet caught up with the Tomcat hare, but it's close.