I've gotta clear up something in the last posting. One of the meanings of cavalier is "nonchalant"
. That is what I was trying to convey. I didn't mean to imply anyone was being rude. Basically, I think the whole topic of JSF performance is being ignored my the JSF community.
I grabbed the attachments from the original performance bug https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=3
and ran some JMeter tests against the "JSP only" and the JSF versions.
The pages are really simple, the JSP version outputs a page which is visually identical to the JSF page. The table in question had 10 columns and 50 - 200 rows. Not a huge amount of data. I used MyFaces 1.1.3 as the JSF implementation and ran the test in JBoss 4.0.4 GA running on JDK 1.4.2.
Here's the results:
This data confirms the discussion in the sun forum. The JSF version started out nearly three times slower than the JSP page. The relative performance of the JSF version degraded to nearly four times slower as table rows were added.
So if you are thinking about adopting JSF you should be aware of the performance hit and make sure that you can architect around the problem or get the performance benchmarks adjusted. Perceived performance is important in real life projects so it's more than a theoretical problem.
I'd also like to know if anybody has ideas or code samples that make JSF perform better?
[ July 08, 2006: Message edited by: John Aronson ]