struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From François Rouxel <>
Subject Re : Performance issue
Date Tue, 06 Jan 2009 18:51:25 GMT
Is is the same model behind the MVC?


 ____________________________________________ ____________________________________________

----- Message d'origine ----
De : Pierre Thibaudeau <>
À : Struts Users Mailing List <>
Envoyé le : Mardi, 6 Janvier 2009, 13h09mn 39s
Objet : Re: Performance issue

From the comparison I made on my own system, S2 is overall about 30 to
60 times slower than S1.  This is based on comparing a number of pages
(repeatedly, testing with JMeter, etc.);  the pages being compared
are, admittedly not 100% identical, but abstracting from the specific
differences, the performance of S2 is still more than one order of
magnitude behind what I had come to expect from S1.

I don't think I would ever want to go back to S1, given S2's
advantages.  But now that we are nearing production, S2's performance
is giving me headaches!

2008/12/13 yorlick kilroy wrote:
> The bottleneck is OGNL.
> I replaced the struts2 tags with JSTL Core
> This made loading my jsps almost 20 times faster!!!
> I mainly did this replacing in jsps that produce lots of output. I
> still use struts2 tags in jsps where I process forms and other small
> jsps.

I am following your lead and reverting to <c:tags>, and even removing
them altogether when the tag merely produces an HTML element such as
<input>---I never use anything but the simple theme, as I rely
entirely on CSS and not on tables.

Two tags however seem very difficult to avoid:  <s:url> and <s:text>.

My application is entirely i18lized, so I rely heavily on those
resources. Since I use Spring, however, I am very tempted to use
Spring's resources feature and therefore Spring's tags to deal with
it;  I have no idea how fast they are, but it can't be worse than
S2s... (Unfortunately, Spring's resources are not customized to S2's
model-driven actions...) That would probably involve an unpleasant
amount of refactorization, but if it's worth it, I'll do it! Any
comment on this?

That's a tough one.  I may have to write my own OGNL-less version of
that tag...  Suggestions for a simpler alternative?

All in all, it seems to me that this performance issue could easily be
the death of S2 (which would be a real shame).  Two alternatives
present themselves:
* Making a version of S2 that doesn't necessarily rely on OGNL.
* Making OGNL ten times faster.

To unsubscribe, e-mail:
For additional commands, e-mail:


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message