Costin Manolache wrote:
Hans Bergsten wrote:


evaluation all in one place. To make things even easier, these tag
handlers can _not_ be reused at all. Benchmarks with modern JVMs show
that the gain from reuse is not worth all the trouble. So, for new
tags we recommend using the SimpleTag API which takes care of the
problem by forbidding reuse.

Wow. I would be _very_ curious to see those benchmarks and the "modern"
JVM that was used.
All my tests ( including JDK1.4, IBM vms, GCJ ) show that reusing is well
worth the trouble - at least if you have 100s of requests per second
( it is not worht the trouble for very low loads ). But I'm happy to
hear that I'm wrong.

Costin
Hear, Hear!!

I saw a significant, measureable improvement in performance when I upgraded
our production systems to Jasper 2 with tag pooling from Jasper 1 without.
CPU load on the production server dropped around 30%, request latency was
reduced significantly, etc.  The app server handles 30k-100K requests per day.
This is on a Sun dual CPU E250, 768MB of Ram, that is run solely as an app server.
OS is Solaris 8, JVM is 1.3.1 using HotSpot server, and I have spent time tuning
the JVM stack and GC java startup args.

Tag pooling elminates significant amounts of GC.  That is where the real
benefit of tag pooling comes from.  With tag pooing the frequency and
length of GC's are reduced a great deal.

Glenn


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to