Scaling Enterprise Java on 64-bit Multi-Core X86-Based Servers
Subject:   Call-by-reference considered harmful
Date:   2006-11-06 15:37:32
From:   steve.loughran
This is an interesting article, but one thing caught my eye as something I fundamentally disagree with, namely using call-by-reference versus call-by-value.

Leaving JBoss in its default "unified classloader" mode may deliver performance, but it is a potential support/maintenance nightmare, as there is no longer any way to load duplicate JARs, even across. Furthermore, once you commit to it, the probability of your EAR even deploying on another system is minimal, let alone working. Because you can stick JARs like Log4J in one webapp, and have them used inside an EJB file that would normally be loaded in a different classloader.

It is not a simple "flip this switch for speed" option. Yes, it can deliver speed, if you are unlucky enough to have used EJB in the first place. But the price is serious. Furthermore, stick to spring and hibernate and you don't need the EJB stuff; everything runs in the webapp and so you don't get any speedup.