Still, numbers like "46%" are hard to take out of context.

Really, the question is:  "How much time is spent in OGNL and is it
affecting performance/scalability?"

Not sure how to qualify this.  Seems to me that smarter transaction
management, better queries, and good caching will always be better
investments than getting rid of OGNL.  I'm very happy with the
tapestry-prop library for providing another option.

Were these tests on Tapestry 3 or 4?  We should be seeing a lot less
use of OGNL and reflection already in 4.0 than in 3.0.  For example,
in 3.0, Tapestry used reflection to move values from IBinding
instances to component parameter properties.  Ouch!  In 4.0, Tapestry
writes Java code (via Javassist) to do the same thing, and to better
optimizes when and if properties are read.

On 11/19/05, Patrick Casey <[EMAIL PROTECTED]> wrote:
>
>
>             Last week's discussion on whether or not OGNL was a dead project
> inspired me to actually dig up a profiler and spend a bit of time profiling
> one of my tapestry 3.0.3 apps under tomcat. I was curious to see where my
> CPU time was going when I ran the thing as it wasn't quite as "snappy" as
> I'd hoped.
>
>
>
>             To my surprise (as I assumed such calls so infrequent as
> efficiency doesn't matter), OGNL does, indeed, appear to be something of a
> significant performance boat anchor.
>
>
>
>             In my App:
>
>
>
>             35% of all CPU time spent on just two ognl functions:
> ognl.Ognl.getValue() ongl.Ognl.setValue()
>
>             45.7% of all CPU time was spent on one or another ognl function
>
>
>
>             And that's a database with heavy database access through
> Hibernate although without a whole lot of complex server-side application
> logic; it's mostly DB & presentation.
>
>
>
>             I don't know how this meshes up with Howard's own internal
> profiling that he references on his Blog post, but for my app, in my
> environment, I'd say OGNL is definitely a major culprit.
>
>
>
>             --- Pat
>
>
>
>             PS As always, your mileage may vary with any profiling.
> Different apps in different environments will burn CPU on different things,
> so I wouldn't necessarily try to use this as evidence for a global argument
> that "ognl is the suxor always and everywhere!".
>
>
>


--
Howard M. Lewis Ship
Independent J2EE / Open-Source Java Consultant
Creator, Jakarta Tapestry
Creator, Jakarta HiveMind

Professional Tapestry training, mentoring, support
and project work.  http://howardlewisship.com

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

Reply via email to