You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by climbingrose <cl...@gmail.com> on 2007/07/10 04:08:30 UTC

Struts 2 performance

Hi all,

I've been developing Struts 2 webapp for nearly a year now and have a great
deal of experience with it. Personally, the architecture of Struts 2 is much
cleaner than its predecessor. However, recently I converted one of my Struts
2 pages into Servlet + JSP solution and it turns out that Struts 2
performance is much worse than Servlet + JSP. In Servlet + JSP solution, the
server CPU is barely over 3-4% while with Struts 2, it's around 70% most of
the time. The JSP page is around 300 lines of code. I don't have a chance to
do any profiling to find out where is the bottleneck but I suspect it might
be OGNL which hinders the performance. I think, we already have a pretty
good feature set so we can start thinking about optimising Struts 2. That
will probably speed up its adoption in the industry.

The other thing I want to comment on is the use of Dojo as Ajax theme. I
don't have much experience with Dojo apart from a few hours playing around
with it. However, even with the latest version (0.9), Dojo just seems to be
to heavy weight for most purposes. I mean if you only want a bloody calendar
in your webapp, you don't want to load up a 100kb of  javascript. Plus, it
might be my experience only, Dojo seems to have the tendency to hang my
browser everytime I open a Dojo-based app.

-- 
Regards,

Cuong Hoang

Re: Struts 2 performance

Posted by climbingrose <cl...@gmail.com>.
Well, I prefer using Javascript library like JQuery or Mootools for Ajax
rather than Dojo. With JQuery I only have 10kB after compressing with gzip.

On 7/11/07, Lionel <li...@art-informatique.com> wrote:
>
> climbingrose wrote:
> > Dojo just seems to be to heavy weight for most purposes. I mean if
> > you only want a bloody calendar in your webapp, you don't want to
> > load up a 100kb of  javascript. Plus, it might be my experience only,
> > Dojo seems to have the tendency to hang my browser everytime I open a
> > Dojo-based app.
>
> I've been using dojo for more than 1 year.
> I had huge performance concerns (but no hang).
> The only solution was to disable parseWidget and add widgets using
> dojo.widget.createWidget.
> Also use gzip compression on *.js.
> This way, every thing works pretty fine.
> If it's not possible with struts 2, stay far away from the ajax theme...
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>


-- 
Regards,

Cuong Hoang

Re: Struts 2 performance

Posted by Lionel <li...@art-informatique.com>.
climbingrose wrote:
> Dojo just seems to be to heavy weight for most purposes. I mean if
> you only want a bloody calendar in your webapp, you don't want to
> load up a 100kb of  javascript. Plus, it might be my experience only,
> Dojo seems to have the tendency to hang my browser everytime I open a
> Dojo-based app.

I've been using dojo for more than 1 year.
I had huge performance concerns (but no hang).
The only solution was to disable parseWidget and add widgets using 
dojo.widget.createWidget.
Also use gzip compression on *.js.
This way, every thing works pretty fine.
If it's not possible with struts 2, stay far away from the ajax theme...





---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Ted Husted <hu...@apache.org>.
On 7/9/07, Frank W. Zammetti <fz...@omnytex.com> wrote:
> In any case, my understanding is that the Ajax theme is being extracted
> out into a plugin specifically so that other libraries can be used in
> place of Dojo.  While I think Dojo will still get a great deal of usage
> and attention, I think giving that flexibility will be a welcome move.

Yes, moving Ajax support from themes to plugins is on the 2.1.x
roadmap. In fact a YUI plugin is already available for Struts 2.0.x

 * http://cwiki.apache.org/S2PLUGINS/yui-plugin.html

-Ted.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by "Frank W. Zammetti" <fz...@omnytex.com>.
climbingrose wrote:
> 
> The other thing I want to comment on is the use of Dojo as Ajax theme. I
> don't have much experience with Dojo apart from a few hours playing around
> with it. However, even with the latest version (0.9), Dojo just seems to be
> to heavy weight for most purposes. I mean if you only want a bloody 
> calendar
> in your webapp, you don't want to load up a 100kb of  javascript. 

This has been my experience with Dojo as well, to the point where we're 
now considering ripping Dojo out of a very highly complex project bit by 
bit (too much pain in doing it all at once).  Nothing has been decided 
yet because we still believe Dojo has a lot to offer that makes it not a 
clear-cut decision, but your description is, in my experience, fairly 
accurate.

 > Plus, it
> might be my experience only, Dojo seems to have the tendency to hang my
> browser everytime I open a Dojo-based app.

This, however, doesn't jive with my experience.  As I mentioned, I have 
one app using Dojo that is extremely complex, and I don't recall ever 
seeing it lock up the browser.  We *have* had issues with memory 
consumption, but I can't say for certain yet whether it's Dojo (suspect 
it is at this point), and it's possible we're doing something wrong to 
cause it and not Dojo intrinsically having a problem.  If your seeing 
lockups, it might be helpful to know that this isn't typical, based on 
my experience with it.

In any case, my understanding is that the Ajax theme is being extracted 
out into a plugin specifically so that other libraries can be used in 
place of Dojo.  While I think Dojo will still get a great deal of usage 
and attention, I think giving that flexibility will be a welcome move.

Frank

-- 
--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM/Yahoo: fzammetti
MSN: fzammetti@hotmail.com
Author of "Practical Ajax Projects With Java Technology"
  (2006, Apress, ISBN 1-59059-695-1)
and "JavaScript, DOM Scripting and Ajax Projects"
  (2007, Apress, ISBN 1-59059-816-4)
Java Web Parts - http://javawebparts.sourceforge.net
  Supplying the wheel, so you don't have to reinvent it!

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Ted Husted <hu...@apache.org>.
On 7/9/07, climbingrose <cl...@gmail.com> wrote:
>I don't have a chance to do any profiling to find out where is the bottleneck

Before trying any profiling, be sure to follow the tips at
<http://struts.apache.org/2.x/docs/performance-tuning.html>.

 -Ted.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by "David Durham, Jr." <da...@gmail.com>.
On 7/11/07, Ing. Andrea Vettori <ma...@andreavettori.com> wrote:
> Can anyone suggest how to "test" my site for performance analysis
> (best with a simple free product) ?
> I can show here the result if interested.

I haven't used it personally, but there's the Eclipse TPTP project
that works with the eclipse web tools platform via a seperately
downloaded plugin (tptp-wtp).

http://www.eclipse.org/tptp/

HTH,
Dave

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by "Ing. Andrea Vettori" <ma...@andreavettori.com>.
I'm using s2 2.0.8 on an e-commerce site. The site is very new so we  
have about 3000 sessions a day but I don't have performance  
problems... The pages are loading quickly. The most used pages are
- the products listing that gets data from a session bean and  
displays rows of information
- the product details that gets an xml from a session bean and  
displays it after transforming it with xslt.

Can anyone suggest how to "test" my site for performance analysis  
(best with a simple free product) ?
I can show here the result if interested.

I also think we should have a "test" application that minimizes  
memory/cpu utilization for non-struct components and some pre-defined  
tests so we can produce benchmarks we can compare...


--
Ing. Andrea Vettori
Consulente per l'Information Technology



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Ted Husted <hu...@apache.org>.
On 7/11/07, Guillaume Carré <gu...@gmail.com> wrote:
> Tapestry 4 did, there seems to be some performance improvement in this release:
> http://blog.opencomponentry.com/2007/06/26/tapestry-412-ognl-27-released/
>
> is it a simple JAR drop?

I don't know, I'll give it a try.

-Ted.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Guillaume Carré <gu...@gmail.com>.
2007/7/11, Musachy Barroso <mu...@gmail.com>:
> I think so far a couple of people have tried to decouple Struts 2 from OGNL,
> (so other libs like MVEL could be used), so far no patch has made it through
> :)

have you considered upgrading to OGNL 2.7?

Tapestry 4 did, there seems to be some performance improvement in this release:
http://blog.opencomponentry.com/2007/06/26/tapestry-412-ognl-27-released/

is it a simple JAR drop?
-- 
Guillaume Carré

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by "Ing. Andrea Vettori" <ma...@andreavettori.com>.
I think that the s2 app should have more than one version depending  
on the used template.

I think the test app should have

- listing rows from a database
- displaying row details

These should be the most used pattern used on many sites and it can  
be also a part of a CRUD application.

Add an input form and I think you have a good starting point to make  
some benchmarks.

I think the backend datastore should be in-memory and pre-loaded  
before making any measurement.


Il giorno 11/lug/07, alle ore 16:21, Leon Rosenberg ha scritto:

> hmm,
>
> if someone would specify a valid test-case or test-app, i'd volunteer
> to implement it in both s1 and s2 and measure the points where the
> performance is lost exactly.
>
> </2cents>
> Leon
>
> On 7/11/07, Musachy Barroso <mu...@gmail.com> wrote:
>> I think so far a couple of people have tried to decouple Struts 2  
>> from OGNL,
>> (so other libs like MVEL could be used), so far no patch has made  
>> it through
>> :)
>>
>> As for 2.1, the other day when Ted posted the numbers about the  
>> download
>> spike it made think that even with so many people downloading/ 
>> using S2, we
>> are not getting many contributions/contributors and development  
>> overall
>> seems very slow. I know that's the nature of OSS, but we could use  
>> some help
>> right now.
>>
>> regards
>> musachy
>>
>> On 7/11/07, Ted Husted <hu...@apache.org> wrote:
>> >
>> > On 7/11/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
>> > > Look here
>> > > https://issues.apache.org/struts/browse/WW-1673
>> > > and references there.
>> > > Maybe we can push those tickets to be fixed earlier,
>> > > since it is not clear when the mentioned version 2.1.x will be  
>> released.
>> > >
>> > > Does someone know how we can do that?
>> >
>> > I think the underlying problem is no one is sure how to proceed.  
>> There
>> > have been several suggestion as to replacing OGNL and/or  
>> FreeMarker,
>> > but no clear winner has emerged.
>> >
>> > *
>> > http://www.nabble.com/The-performance-issue-about-OGNL- 
>> tf3291137.html#a9154137
>> >
>> > *
>> > http://www.nabble.com/OGNL-performance-detrimental-to-Struts-2- 
>> tf2804655.html#a7825136
>> >
>> > *
>> > http://www.nabble.com/Abstracting-Ognl-from-XWork-and-Struts-2-- 
>> tf2355393.html#a6561815
>> >
>> > (and now)
>> >
>> > * http://www.nabble.com/Struts-2-performance- 
>> tf4053401.html#a11536097
>> >
>> > Technology aside, the key ingredient is one or more volunteers  
>> who are
>> > are ready, willing, and able to do the work.
>> >
>> > A good place to start would be summarize the prior threads and post
>> > the summary here and on the JIRA ticket.
>> >
>> > We also could use a benchmark test that people in the project could
>> > check out from SVN and run locally. We do have one contribution in
>> > that regard, but it needs to be ported from WW to S2.
>> >
>> > * https://issues.apache.org/struts/browse/WW-1560
>> >
>> > HTH, Ted.
>> >
>> >  
>> ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>> > For additional commands, e-mail: user-help@struts.apache.org
>> >
>> >
>>
>>
>> --
>> "Hey you! Would you help me to carry the stone?" Pink Floyd
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>

--
Ing. Andrea Vettori
Consulente per l'Information Technology



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Ted Husted <hu...@apache.org>.
On 7/11/07, Leon Rosenberg <ro...@googlemail.com> wrote:
> if someone would specify a valid test-case or test-app, i'd volunteer
> to implement it in both s1 and s2 and measure the points where the
> performance is lost exactly.

There's a WW application attached to this ticket that might be a
likely starting point.

 * https://issues.apache.org/struts/browse/WW-1560

-Ted.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Leon Rosenberg <ro...@googlemail.com>.
hmm,

if someone would specify a valid test-case or test-app, i'd volunteer
to implement it in both s1 and s2 and measure the points where the
performance is lost exactly.

</2cents>
Leon

On 7/11/07, Musachy Barroso <mu...@gmail.com> wrote:
> I think so far a couple of people have tried to decouple Struts 2 from OGNL,
> (so other libs like MVEL could be used), so far no patch has made it through
> :)
>
> As for 2.1, the other day when Ted posted the numbers about the download
> spike it made think that even with so many people downloading/using S2, we
> are not getting many contributions/contributors and development overall
> seems very slow. I know that's the nature of OSS, but we could use some help
> right now.
>
> regards
> musachy
>
> On 7/11/07, Ted Husted <hu...@apache.org> wrote:
> >
> > On 7/11/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
> > > Look here
> > > https://issues.apache.org/struts/browse/WW-1673
> > > and references there.
> > > Maybe we can push those tickets to be fixed earlier,
> > > since it is not clear when the mentioned version 2.1.x will be released.
> > >
> > > Does someone know how we can do that?
> >
> > I think the underlying problem is no one is sure how to proceed. There
> > have been several suggestion as to replacing OGNL and/or FreeMarker,
> > but no clear winner has emerged.
> >
> > *
> > http://www.nabble.com/The-performance-issue-about-OGNL-tf3291137.html#a9154137
> >
> > *
> > http://www.nabble.com/OGNL-performance-detrimental-to-Struts-2-tf2804655.html#a7825136
> >
> > *
> > http://www.nabble.com/Abstracting-Ognl-from-XWork-and-Struts-2--tf2355393.html#a6561815
> >
> > (and now)
> >
> > * http://www.nabble.com/Struts-2-performance-tf4053401.html#a11536097
> >
> > Technology aside, the key ingredient is one or more volunteers who are
> > are ready, willing, and able to do the work.
> >
> > A good place to start would be summarize the prior threads and post
> > the summary here and on the JIRA ticket.
> >
> > We also could use a benchmark test that people in the project could
> > check out from SVN and run locally. We do have one contribution in
> > that regard, but it needs to be ported from WW to S2.
> >
> > * https://issues.apache.org/struts/browse/WW-1560
> >
> > HTH, Ted.
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > For additional commands, e-mail: user-help@struts.apache.org
> >
> >
>
>
> --
> "Hey you! Would you help me to carry the stone?" Pink Floyd
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Musachy Barroso <mu...@gmail.com>.
I think so far a couple of people have tried to decouple Struts 2 from OGNL,
(so other libs like MVEL could be used), so far no patch has made it through
:)

As for 2.1, the other day when Ted posted the numbers about the download
spike it made think that even with so many people downloading/using S2, we
are not getting many contributions/contributors and development overall
seems very slow. I know that's the nature of OSS, but we could use some help
right now.

regards
musachy

On 7/11/07, Ted Husted <hu...@apache.org> wrote:
>
> On 7/11/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
> > Look here
> > https://issues.apache.org/struts/browse/WW-1673
> > and references there.
> > Maybe we can push those tickets to be fixed earlier,
> > since it is not clear when the mentioned version 2.1.x will be released.
> >
> > Does someone know how we can do that?
>
> I think the underlying problem is no one is sure how to proceed. There
> have been several suggestion as to replacing OGNL and/or FreeMarker,
> but no clear winner has emerged.
>
> *
> http://www.nabble.com/The-performance-issue-about-OGNL-tf3291137.html#a9154137
>
> *
> http://www.nabble.com/OGNL-performance-detrimental-to-Struts-2-tf2804655.html#a7825136
>
> *
> http://www.nabble.com/Abstracting-Ognl-from-XWork-and-Struts-2--tf2355393.html#a6561815
>
> (and now)
>
> * http://www.nabble.com/Struts-2-performance-tf4053401.html#a11536097
>
> Technology aside, the key ingredient is one or more volunteers who are
> are ready, willing, and able to do the work.
>
> A good place to start would be summarize the prior threads and post
> the summary here and on the JIRA ticket.
>
> We also could use a benchmark test that people in the project could
> check out from SVN and run locally. We do have one contribution in
> that regard, but it needs to be ported from WW to S2.
>
> * https://issues.apache.org/struts/browse/WW-1560
>
> HTH, Ted.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>


-- 
"Hey you! Would you help me to carry the stone?" Pink Floyd

Re: Struts 2 performance

Posted by Ted Husted <hu...@apache.org>.
On 7/11/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
> Look here
> https://issues.apache.org/struts/browse/WW-1673
> and references there.
> Maybe we can push those tickets to be fixed earlier,
> since it is not clear when the mentioned version 2.1.x will be released.
>
> Does someone know how we can do that?

I think the underlying problem is no one is sure how to proceed. There
have been several suggestion as to replacing OGNL and/or FreeMarker,
but no clear winner has emerged.

 * http://www.nabble.com/The-performance-issue-about-OGNL-tf3291137.html#a9154137

 * http://www.nabble.com/OGNL-performance-detrimental-to-Struts-2-tf2804655.html#a7825136

 * http://www.nabble.com/Abstracting-Ognl-from-XWork-and-Struts-2--tf2355393.html#a6561815

(and now)

 * http://www.nabble.com/Struts-2-performance-tf4053401.html#a11536097

Technology aside, the key ingredient is one or more volunteers who are
are ready, willing, and able to do the work.

A good place to start would be summarize the prior threads and post
the summary here and on the JIRA ticket.

We also could use a benchmark test that people in the project could
check out from SVN and run locally. We do have one contribution in
that regard, but it needs to be ported from WW to S2.

 * https://issues.apache.org/struts/browse/WW-1560

HTH, Ted.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Aram Mkhitaryan <ar...@googlemail.com>.
Hi there,

This is really-really a very big problem.
The tests that passed for struts1
cant pass for struts2 even partially (even after lots of optimizations).

Struts2 is slow enough to use it for the big and popular sites.

Look here
https://issues.apache.org/struts/browse/WW-1673
and references there.
Maybe we can push those tickets to be fixed earlier,
since it is not clear when the mentioned version 2.1.x will be released.

Does someone know how we can do that?

Best,
Aram
________________________________
Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: aram.mkhitaryan@googlemail.com

Re: Struts 2 performance

Posted by Don Brown <do...@gmail.com>.
No idea about the 2.1 release, but if you don't use tooltips, just
override the xhtml header template, the one with the dojo import.
That should remove the dojo import and fix your issue for now.

Don

On 7/11/07, Dale Newfield <Da...@newfield.org> wrote:
> Don Brown wrote:
> > Anyways, in 2.1 we pulled all Dojo-related code into its own plugin,
> > so it shouldn't affect the xhtml theme anymore.
>
> I'm looking forward to that :-)
>
> I recognize that with any open source project timelines are difficult to
> predict, but would you expect some version of 2.1 to be released in
> weeks or months?  If you were forced to guess, do you think there's a
> reasonable chance that it'll be available by, say, October?
>
> -Dale
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Dale Newfield <Da...@Newfield.org>.
Don Brown wrote:
> Anyways, in 2.1 we pulled all Dojo-related code into its own plugin,
> so it shouldn't affect the xhtml theme anymore.

I'm looking forward to that :-)

I recognize that with any open source project timelines are difficult to 
predict, but would you expect some version of 2.1 to be released in 
weeks or months?  If you were forced to guess, do you think there's a 
reasonable chance that it'll be available by, say, October?

-Dale

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Aram Mkhitaryan <ar...@googlemail.com>.
There are load test results,

for struts1, up to 200 concurrent users with 0.75 sec timeout, result: 2%
timeout
for struts2, up to 10 concurrent users with 5 sec timeout, result: 80%
timeout

------------------------>>>

the application is the same, for struts2 ognl language is used,
but is optimized (ognl is replaced with simple struts/jsp tags where
possible)

I think this is enough to consider struts2 slow.

Best,
Aram

Re: Struts 2 performance

Posted by Leon Rosenberg <ro...@googlemail.com>.
On 7/11/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
> The problem is not just in dojo's js files and stuff like that.
> Struts2 is too slow, >7-8x times than struts1

Any reproduceable measurements which can support this statement?
Leon

>
> Best,
> Aram
> ________________________________
> Aram Mkhitaryan
>
> 52, 25 Lvovyan, Yerevan 375000, Armenia
>
> Mobile: +374 91 518456
> E-mail: aram.mkhitaryan@googlemail.com
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Aram Mkhitaryan <ar...@googlemail.com>.
The problem is not just in dojo's js files and stuff like that.
Struts2 is too slow, >7-8x times than struts1

Best,
Aram
________________________________
Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: aram.mkhitaryan@googlemail.com

Re: Struts 2 performance

Posted by Don Brown <do...@gmail.com>.
Tooltips come to mind, and I think there is one other reason...maybe
it was the rich text editor.  Anyways, in 2.1 we pulled all
Dojo-related code into its own plugin, so it shouldn't affect the
xhtml theme anymore.

Don

On 7/11/07, Toni Lyytikäinen <to...@gmail.com> wrote:
> After playing around with Firebug a little I found out that in our project
> the most costly thing in the page loading process is loading the dojo
> .js-files. For some reason they are included in the xhtml theme too. If I
> substitute
>
> <s:head theme="xhtml" />
>
> with
>
> <link rel="stylesheet" href="/ikaros-webgui/struts/xhtml/styles.css"
> type="text/css"/>
>
> leaving out the dojo stuff, pages are loading really fast again. Is there
> any reason besides the client side validation that the dojo includes are
> needed for the xhtml theme?
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Toni Lyytikäinen <to...@gmail.com>.
After playing around with Firebug a little I found out that in our project
the most costly thing in the page loading process is loading the dojo
.js-files. For some reason they are included in the xhtml theme too. If I
substitute

<s:head theme="xhtml" />

with

<link rel="stylesheet" href="/ikaros-webgui/struts/xhtml/styles.css"
type="text/css"/>

leaving out the dojo stuff, pages are loading really fast again. Is there
any reason besides the client side validation that the dojo includes are
needed for the xhtml theme?

Re: Struts 2 performance

Posted by climbingrose <cl...@gmail.com>.
Obviously as a Struts 2 user I see the benefit of the framework. I actually
convinced my company to abandon Struts 1 and go forward with Struts 2.
However, I really think you need to consider carefully where you should use
the the framework. From my own experience, I tend to develop "public pages"
in JSP + Servlet because I want performance on these pages and I know that
they are hit heavily everyday. For example, in ecommerce apps, pages mostly
visited are the catalog ones. Considering the number of hits these pages
receive, if you can squeeze 5x performance improvement out of them, it'll
make a big different. However, for the administrative pages, you probably
can go with Struts 2 because they don't get hit heavily and users of these
pages tend to be more patient. So it all depends on your app's usage
patterns and your architecture. That's my 2 cents. Your experience might be
different though and please share it if you don't mind.

On 7/11/07, cilquirm <aa...@gmail.coSpeedm> wrote:
>
>
> I've found that static html pages are blazing fast, especially those that
> don't involve stylesheets, images, or javascript includes.  :-)
>
> Seriously, though, I don't think there's any disagreement that ognl ( or
> any
> runtime expression language ) adds a certain amount of overhead, but I've
> never seen any of my servers pinned that high, and I've been working with
> WW2/S2 for probably around 3 years now.
>
> At the end of the day, I can argue to my company that we'll get faster
> performance by switching to servlets and straight jsp, but I don't want to
> be the one debugging that when it all goes to pot. I'm all for the minor
> tradeoff on performance for the incredibly superior gains in productivity
> and general developer happiness that S2 affords me.
>
> my2c,
> -a
>
> P.S.  One thing you can do, if you're so inclined once you've tried out
> the
> other performance tips, is to give ognl 2.7 a go.  You can get it via the
> Tapestry libs download.  It's a straightforward replacement, just drop in
> ognl.jar and javassist.jar and start up.
>
> I've done it here and it hasn't really changed my perception of my webapp
> but YMMV
>
>
>
> climbingrose wrote:
> >
> > Hi all,
> >
> > I've been developing Struts 2 webapp for nearly a year now and have a
> > great
> > deal of experience with it. Personally, the architecture of Struts 2 is
> > much
> > cleaner than its predecessor. However, recently I converted one of my
> > Struts
> > 2 pages into Servlet + JSP solution and it turns out that Struts 2
> > performance is much worse than Servlet + JSP. In Servlet + JSP solution,
> > the
> > server CPU is barely over 3-4% while with Struts 2, it's around 70% most
> > of
> > the time. The JSP page is around 300 lines of code. I don't have a
> chance
> > to
> > do any profiling to find out where is the bottleneck but I suspect it
> > might
> > be OGNL which hinders the performance. I think, we already have a pretty
> > good feature set so we can start thinking about optimising Struts 2.
> That
> > will probably speed up its adoption in the industry.
> >
> >
> >
> > The other thing I want to comment on is the use of Dojo as Ajax theme. I
> > don't have much experience with Dojo apart from a few hours playing
> around
> > with it. However, even with the latest version (0.9), Dojo just seems to
> > be
> > to heavy weight for most purposes. I mean if you only want a bloody
> > calendar
> > in your webapp, you don't want to load up a 100kb of  javascript. Plus,
> it
> > might be my experience only, Dojo seems to have the tendency to hang my
> > browser everytime I open a Dojo-based app.
> >
> > --
> > Regards,
> >
> > Cuong Hoang
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Struts-2-performance-tf4053401.html#a11524619
> Sent from the Struts - User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>


-- 
Regards,

Cuong Hoang

Re: Struts 2 performance

Posted by cilquirm <aa...@gmail.com>.
I've found that static html pages are blazing fast, especially those that
don't involve stylesheets, images, or javascript includes.  :-)

Seriously, though, I don't think there's any disagreement that ognl ( or any
runtime expression language ) adds a certain amount of overhead, but I've
never seen any of my servers pinned that high, and I've been working with
WW2/S2 for probably around 3 years now. 

At the end of the day, I can argue to my company that we'll get faster
performance by switching to servlets and straight jsp, but I don't want to
be the one debugging that when it all goes to pot. I'm all for the minor
tradeoff on performance for the incredibly superior gains in productivity
and general developer happiness that S2 affords me.

my2c, 
-a

P.S.  One thing you can do, if you're so inclined once you've tried out the
other performance tips, is to give ognl 2.7 a go.  You can get it via the
Tapestry libs download.  It's a straightforward replacement, just drop in 
ognl.jar and javassist.jar and start up.  

I've done it here and it hasn't really changed my perception of my webapp
but YMMV



climbingrose wrote:
> 
> Hi all,
> 
> I've been developing Struts 2 webapp for nearly a year now and have a
> great
> deal of experience with it. Personally, the architecture of Struts 2 is
> much
> cleaner than its predecessor. However, recently I converted one of my
> Struts
> 2 pages into Servlet + JSP solution and it turns out that Struts 2
> performance is much worse than Servlet + JSP. In Servlet + JSP solution,
> the
> server CPU is barely over 3-4% while with Struts 2, it's around 70% most
> of
> the time. The JSP page is around 300 lines of code. I don't have a chance
> to
> do any profiling to find out where is the bottleneck but I suspect it
> might
> be OGNL which hinders the performance. I think, we already have a pretty
> good feature set so we can start thinking about optimising Struts 2. That
> will probably speed up its adoption in the industry.
> 
> 
> 
> The other thing I want to comment on is the use of Dojo as Ajax theme. I
> don't have much experience with Dojo apart from a few hours playing around
> with it. However, even with the latest version (0.9), Dojo just seems to
> be
> to heavy weight for most purposes. I mean if you only want a bloody
> calendar
> in your webapp, you don't want to load up a 100kb of  javascript. Plus, it
> might be my experience only, Dojo seems to have the tendency to hang my
> browser everytime I open a Dojo-based app.
> 
> -- 
> Regards,
> 
> Cuong Hoang
> 
> 

-- 
View this message in context: http://www.nabble.com/Struts-2-performance-tf4053401.html#a11524619
Sent from the Struts - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by cilquirm <aa...@gmail.com>.
for my sake, i hope it's still 1.5.

i'm not allowed to go near 1.6 because of some obscure bug in some oracle
driver somewhere.



Ted Husted wrote:
> 
> Are we targeting 1.6 now, or is the S2 target platform still 1.5?
> 
> -T.
> 
> On 7/12/07, James Holmes <ja...@jamesholmes.com> wrote:
>> Perfect! This is an excellent start.
>>
>> I think both should be compiled with 1.6.0. That will immediately remove
>> that
>> element of difference between the two.
>>
>> James
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Struts-2-performance-tf4053401.html#a11568292
Sent from the Struts - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


RE: Struts 2 performance

Posted by David Harland <dh...@ufi.com>.
You have either taken the server down that is running the showcase app
or someone's using the ognl feature to shut it down. 

I take it you will be doing a release once the fix has gone in?

Thanks.. 

-----Original Message-----
From: Musachy Barroso [mailto:musachy@gmail.com] 
Sent: 16 July 2007 14:19
To: Struts Users Mailing List
Subject: Re: Struts 2 performance

https://issues.apache.org/struts/browse/WW-2030

musachy

On 7/16/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
>
> look here
> http://struts.apache.org/2.0.8/docs/property.html
> http://struts.apache.org/2.0.8/docs/text.html
> http://struts.apache.org/2.0.8/docs/if.html
> and in pages of other tags
>
> there you can find a column "Evaluated"
> and everywhere it has value "true"
>
> I guess that means that values are being evaluated!
> It's terrible ...
> It's not only a bottleneck, but also a security risk!
>
> Maybe there is a configuration parameter to disable that evaluation?
>
> Does someone have ideas where to find such configuration possibility?
>
> Best,
> Aram
> ________________________________
> Aram Mkhitaryan
>
> 52, 25 Lvovyan, Yerevan 375000, Armenia
>
> Mobile: +374 91 518456
> E-mail: aram.mkhitaryan@googlemail.com
>



--
"Hey you! Would you help me to carry the stone?" Pink Floyd


- ------
ML {UFI}

______________________________________________________________________
Ufi Limited 
Registered in England No.  3980770 
Registered Office:  Dearing House, 1 Young Street, Sheffield, S1 4UP 

learndirect Solutions Ltd 
Registered in England No. 5081669 
Registered Office:  Dearing House, 1 Young Street, Sheffield, S1 4UP 

UFI Charitable Trust 
Registered in England No.  3658378 
Registered Charity No.  1081028 
Registered Office:  Dearing House, 1 Young Street, Sheffield, S1 4UP 

This email has been scanned by the MessageLabs Email Security System.

______________________________________________________________________

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Musachy Barroso <mu...@gmail.com>.
https://issues.apache.org/struts/browse/WW-2030

musachy

On 7/16/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
>
> look here
> http://struts.apache.org/2.0.8/docs/property.html
> http://struts.apache.org/2.0.8/docs/text.html
> http://struts.apache.org/2.0.8/docs/if.html
> and in pages of other tags
>
> there you can find a column "Evaluated"
> and everywhere it has value "true"
>
> I guess that means that values are being evaluated!
> It's terrible ...
> It's not only a bottleneck, but also a security risk!
>
> Maybe there is a configuration parameter to disable that evaluation?
>
> Does someone have ideas where to find such configuration possibility?
>
> Best,
> Aram
> ________________________________
> Aram Mkhitaryan
>
> 52, 25 Lvovyan, Yerevan 375000, Armenia
>
> Mobile: +374 91 518456
> E-mail: aram.mkhitaryan@googlemail.com
>



-- 
"Hey you! Would you help me to carry the stone?" Pink Floyd

Re: Struts 2 performance

Posted by Aram Mkhitaryan <ar...@googlemail.com>.
One more point for the test applications,

try do not use complicated pages with db calls and stuff like that
use simple pages where you have lots of ognl expressions (as there is ticket
in jira where it is noticed that profiler showed that the bottleneck is in
ognl expressions)

Best,
Aram
________________________________
Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: aram.mkhitaryan@googlemail.com

Re: Struts 2 performance

Posted by Aram Mkhitaryan <ar...@googlemail.com>.
look here
http://struts.apache.org/2.0.8/docs/property.html
http://struts.apache.org/2.0.8/docs/text.html
http://struts.apache.org/2.0.8/docs/if.html
and in pages of other tags

there you can find a column "Evaluated"
and everywhere it has value "true"

I guess that means that values are being evaluated!
It's terrible ...
It's not only a bottleneck, but also a security risk!

Maybe there is a configuration parameter to disable that evaluation?

Does someone have ideas where to find such configuration possibility?

Best,
Aram
________________________________
Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: aram.mkhitaryan@googlemail.com

Re: Struts 2 performance

Posted by Toni Lyytikäinen <to...@gmail.com>.
I tried this too, and I can confirm that it does actually shut down the
server. The return value of the method that the property tag references is
evaluated for some reason, which makes the application vulnerable to OGNL
injection attacks... this is a huge security problem.

On 7/16/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
>
> Maybe it's new just for me, but I found out one of the main reasons of the
> problem
>
> try to submit "%{@java.lang.System@exit(0)}" in the viewable property
> for example you submit a text, and it is displayed by s2's tags
>
> try and have fun ...
>
> this expression works and my server shuts down!
>
> the problem I mentioned is that when I say "print property" it executes it
> at first ...
> but it should not! I'm right, amn't I?
>
> why it executes the string value in my property?
> (it's not just a problem, it's a security risk, the users can hack s2
> sites)
> (at least who may read this message will know that he can hack s2 sites
> and
> the simplest way is given above)
>
> that's why even when you do not use ognl expressions, it still works and
> it
> costs ...
>
> Best,
> Aram
> ________________________________
> Aram Mkhitaryan
>
> 52, 25 Lvovyan, Yerevan 375000, Armenia
>
> Mobile: +374 91 518456
> E-mail: aram.mkhitaryan@googlemail.com
>

Re: Struts 2 performance

Posted by Aram Mkhitaryan <ar...@googlemail.com>.
Maybe it's new just for me, but I found out one of the main reasons of the
problem

try to submit "%{@java.lang.System@exit(0)}" in the viewable property
for example you submit a text, and it is displayed by s2's tags

try and have fun ...

this expression works and my server shuts down!

the problem I mentioned is that when I say "print property" it executes it
at first ...
but it should not! I'm right, amn't I?

why it executes the string value in my property?
(it's not just a problem, it's a security risk, the users can hack s2 sites)
(at least who may read this message will know that he can hack s2 sites and
the simplest way is given above)

that's why even when you do not use ognl expressions, it still works and it
costs ...

Best,
Aram
________________________________
Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: aram.mkhitaryan@googlemail.com

Re: Struts 2 performance

Posted by Jessek <jk...@gmail.com>.
Yep,  it should be relatively straightforward to do - there are of course
some internal classloading considerations to make because of the bytecode
enhancements...

I plan on either updating documentation directly on the OGNL opensymphony
site or creating via some other means today and will then make myself
available to whomever is planning on doing this for
webwork/struts2/xwork/etc..  It's the least I can do for all the help
Patrick has given me...

Sorry for not doing this sooner or replying in the thread earlier.  Yes the
OGNL enhancements really should remove OGNL as a bottleneck in your typical
request.  It's pure java code about 95% of the time. 

jesse


Ted Husted wrote:
> 
> As they say, the proof of the pudding is in the taste. The performance
> of Struts 2 is at least as good as WebWork 2, which powers a large
> number of excellent sites, including Atlassian Confluence and Jive
> Forums. Prior versions of Tapestry were also using OGNL, which seems
> to be one of the bottlenecks, and it too powered some excellent sites.
> Hopefully, James and other volunteers will be able to bring us up to
> date with OGNL 2.7, and maybe we will also see the "night and day"
> difference that Tapestry mentions.
> 
> -Ted.
> 

-- 
View this message in context: http://www.nabble.com/Struts-2-performance-tf4053401.html#a11594315
Sent from the Struts - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Ted Husted <hu...@apache.org>.
On 7/13/07, Aram Mkhitaryan <ar...@googlemail.com> wrote:
> Does someone know how to switch on the enhancement for ognl 2.7???

It's not a matter of throwing a switch. Some code would have to be
rewritten in XWork 2 and Struts 2, which some people (James Holmes)
are volunteering to do.

-Ted.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Aram Mkhitaryan <ar...@googlemail.com>.
there are some new results,

when setting the global theme to the simple one,
my S2 test application becomes 20 times faster,
but still it is 3 times slower then S1

> There should not be a noticable difference with OGNL yet. The performance
improvements in OGNL 2.7
> require expressions to be compiled before being executed. The current S2
code does not do this yet so
> it cannot realize the performance gains yet.
what does mean "compiled before being executed"?
S2 should do this?
Does someone know how to switch on the enhancement for ognl 2.7???

Best,
Aram
________________________________
Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: aram.mkhitaryan@googlemail.com

Re: Struts 2 performance

Posted by Musachy Barroso <mu...@gmail.com>.
Doesn't xwork cache the expressions compiled?

musachy

On 7/12/07, James Holmes <ja...@jamesholmes.com> wrote:
>
> Frank,
>
> There should not be a noticable difference with OGNL yet. The performance
> improvements in OGNL 2.7 require expressions to be compiled before being
> executed. The current S2 code does not do this yet so it cannot realize the
> performance gains yet.
>
>
>
>
> Sent via BlackBerry.
>
> -----Original Message-----
> From: "Frank W. Zammetti" <fz...@omnytex.com>
>
> Date: Thu, 12 Jul 2007 17:10:17
> To:Struts Users Mailing List <us...@struts.apache.org>
> Subject: Re: Struts 2 performance
>
>
> Well, here's exactly why I hate benchmarking: it's never consistent! :)
>
> This time, everything compiled with JDK 1.6 (it's what I have installed
> along side 1.4.2) and all used 5000 samples (updated test plan to always
> do 5000 samples)...
>
> S1:
> 685 average, 142.3/sec throughput, 20.89 KB/sec
>
> So, an improvement there, maybe because of the JDK, maybe not.
>
> S2 w/OGNL 2.6:
> 1054 average, 87.3/sec throughput, 12.87 KB/sec
>
> That's better than the last run, but for no apparent reason!
>
> S2 W/OGNL 2.7:
> 1073 average, 85.8/sec throughput, 12.65 KB/sec
>
> Wuh?!?  Ok, I think we can most likely dismiss the difference as within
> a statistical margin of difference, which means either (a) these tests
> are just flat-out flawed somehow, (b) the OGNL bump, at least as far as
> just a straight drop-in, makes no real difference, or (c) OGNL isn't
> being used to enough of an extent in this test to notice a difference
> (I'm frankly betting on that one).
>
> FYI, I've created JIRA ticket WW-2040... that way if others want to
> extend the apps, they can attach an updated version to the ticket so
> everyone can share.
>
> Frank
>
> cilquirm wrote:
> > Frank, would you care to give the same tests a shot with  ognl 2.7 and
> > javassist in the mix.
> >
> > Although none of this is purely scientific, at least evaluations on that
> > regard give us some level of subjective information.
> >
> > The ognl 2.7 and javassist jar are available via the tapestry-4.2-libs
> > download :
> >
> > http://tapestry.apache.org/download.html
> >
> >
> >
> >
> >
> > Frank W. Zammetti wrote:
> >> Dunno if this might help, but:
> >>
> >> http://www.omnytex.com/struts_benchmarking.zip
> >>
> >> In it you'll find two applications, one for S1 (1.3.8) and one for S2
> >> (2.0.8)... they are both (I think!) pretty much equivalent, and about
> as
> >> simplistic as you can get.  Also included is a JMeter test plan to run
> >> against them (just disable one or the other thread group, wouldn't want
> >> to test them both at the same time!).
> >>
> >> Just ran a quick-and-dirty comparison of the two using the test plan...
> >> I ran 100 users with no ramp-up... local Tomcat instance (6.0.13)...
> the
> >> one difference is that the S1 version was compiled with JDK 1.4.2, and
> >> the S2 version with 1.6.0, so there's at least one potentially big
> >> variance right up front... here's what I saw:
> >>
> >> S1 results:
> >> 4256 samples, 913 average, 108.6/sec throughput, 16.01 KB/sec
> >>
> >> S2 results:
> >> 4165 samples, 1974 average, 50.0/sec throughput, 7.38 KB/sec
> >>
> >> I'm not claiming this to be the perfect test, nor do I believe there's
> >> not some flaws in there (benchmarking is always a tough thing to get
> >> quite right, especially trying to do a comparison like this)... but,
> >> unless someone can point out some obvious mistakes I made, the numbers
> >> don't lie: S2 *looks*, *on the surface* at least, to be inherently
> twice
> >> as slow as S1.
> >>
> >> I'm not trying to make any sensational claims here, and again, I may
> >> have totally blown it in the first place (I did throw this together in
> >> about 30 minutes after all), but if we can use this as a basis going
> >> forward, maybe build it up as a more expansive, realistic and solid
> >> benchmarking suite, then it's all good in the end.
> >>
> >> Anyway, it's there, if anyone's interested.
> >>
> >> Frank
> >>
> >> --
> >> Frank W. Zammetti
> >> Founder and Chief Software Architect
> >> Omnytex Technologies
> >> http://www.omnytex.com
> >> AIM/Yahoo: fzammetti
> >> MSN: fzammetti@hotmail.com
> >> Author of "Practical Ajax Projects With Java Technology"
> >>   (2006, Apress, ISBN 1-59059-695-1)
> >> and "JavaScript, DOM Scripting and Ajax Projects"
> >>   (2007, Apress, ISBN 1-59059-816-4)
> >> Java Web Parts - http://javawebparts.sourceforge.net
> >>   Supplying the wheel, so you don't have to reinvent it!
> >>
> >> Ing. Andrea Vettori wrote:
> >>> Il giorno 12/lug/07, alle ore 16:31, Guillaume Carré ha scritto:
> >>>
> >>>> 2007/7/12, Ing. Andrea Vettori <ma...@andreavettori.com>:
> >>>>> Compared to nothing... they are pure numbers. They are simply just
> >>>>> good enought (to me).
> >>>>>
> >>>>> If we don't have this in mind we should use assember for everything
> :)
> >>>> what I meant was: maybe it could be a good idea to redevelop your
> >>>> screens with, say struts 1 for example, and compare the results
> >>> mmmm I can't do that... simply don't have the time... :)
> >>>
> >>>
> >>>>> In the high load test, after 10 seconds you have about 90 users (the
> >>>>> other 10 should have finished). Having a response time of 2,5
> seconds
> >>>>> for a db search and result display under such load seems very good
> to
> >>>>> me.
> >>>>>
> >>>>> Don't you ?
> >>>> it depends :-)
> >>>>
> >>>> "2.5s" doesn't say much to me, I would need to know how much time is
> >>>> consumed in your DB requests, how much time is consumed in your
> >>>> service layer, etc etc.
> >>>>
> >>>> Is it 90 users really active at the same time, meaning using 90
> >>>> threads on the server?if it is, do you have at least 90 connections
> in
> >>>> your pool?
> >>>> or did you put think times in your tests?
> >>>
> >>>
> >>> No think time...
> >>>
> >>> I have 250 threads but I have a limit of 50 connections on my pool.
> I'll
> >>> try to raise
> >>> the number of maximum connection to see if the MP3 list test gets
> better.
> >>>
> >>> However I think that struts alone is performing well for my app; don't
> >>> know if it's because
> >>> i'm using only few OGNL expressions on my jsp pages.
> >>>
> >>> --
> >>> Ing. Andrea Vettori
> >>> Consulente per l'Information Technology
> >>>
> >>>
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> >>> For additional commands, e-mail: user-help@struts.apache.org
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> --No virus found in this incoming message.
> >>> Checked by AVG Free Edition.Version: 7.5.476 / Virus Database:
> >>> 269.10.4/897 - Release Date: 7/11/2007 9:57 PM
> >>>
> >>>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> >> For additional commands, e-mail: user-help@struts.apache.org
> >>
> >>
> >>
> >
>
> --
> --
> Frank W. Zammetti
> Founder and Chief Software Architect
> Omnytex Technologies
> http://www.omnytex.com
> AIM/Yahoo: fzammetti
> MSN: fzammetti@hotmail.com
> Author of "Practical Ajax Projects With Java Technology"
>   (2006, Apress, ISBN 1-59059-695-1)
> and "JavaScript, DOM Scripting and Ajax Projects"
>   (2007, Apress, ISBN 1-59059-816-4)
> Java Web Parts - http://javawebparts.sourceforge.net
>   Supplying the wheel, so you don't have to reinvent it!
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>


-- 
"Hey you! Would you help me to carry the stone?" Pink Floyd

Re: Struts 2 performance

Posted by "Frank W. Zammetti" <fz...@omnytex.com>.
Ted Husted wrote:
> On 7/12/07, Frank W. Zammetti <fz...@omnytex.com> wrote:
>> (b) the OGNL bump, at least as far asjust a straight drop-in, makes no 
>> real difference
> 
> I don't think we really expected the "drop-in" to make a difference
> without making other adjustment to take advantage of the enhancements.

Yeah, that's the understanding I had from all the comments, just thought 
it was worth saying in case anyone did have that expectation.

> -T.

Frank

> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 
> 
> 
> 

-- 
--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM/Yahoo: fzammetti
MSN: fzammetti@hotmail.com
Author of "Practical Ajax Projects With Java Technology"
  (2006, Apress, ISBN 1-59059-695-1)
and "JavaScript, DOM Scripting and Ajax Projects"
  (2007, Apress, ISBN 1-59059-816-4)
Java Web Parts - http://javawebparts.sourceforge.net
  Supplying the wheel, so you don't have to reinvent it!

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Ted Husted <hu...@apache.org>.
On 7/12/07, Frank W. Zammetti <fz...@omnytex.com> wrote:
> (b) the OGNL bump, at least as far asjust a straight drop-in, makes no real difference

I don't think we really expected the "drop-in" to make a difference
without making other adjustment to take advantage of the enhancements.

-T.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


RE: Struts 2 performance

Posted by David Chisholm <dc...@onenetwork.com>.
We've only seen some initial high level benchmarks, and there isn't enough
information yet to assert what is the source of the performance differences.
This should be identified before trying things like a new version of OGNL.

David


-----Original Message-----
From: Don Brown [mailto:donald.brown@gmail.com] 
Sent: Thursday, July 12, 2007 6:39 PM
To: Struts Users Mailing List
Subject: Re: Struts 2 performance


I'm really happy to see this issue being addressed, but it is important to
remember, framework performance wasn't (isn't?) a primary goal for WebWork
2, and now Struts 2.  Specific decisions were made to favor developer
productivity and flexibility over performance such as a template
engine-based, theme-capable tag rendering and rich expression language usage
throughout.

Still, it is possible to do things like reimplement the tags using a pure
Java template engine, which gives 2-3x performance gains, but in the end,
you are left with very inflexible tags that are a pain to extend and
customize.  Of course, if you just use the simple theme, then this idea
might still be attractive.

Finally, it is worth repeating that in a typical web application, the
framework should be such a small part of processing, but if it is not, those
are the types of issues I'd like to really address.

Don

On 7/13/07, Frank W. Zammetti <fz...@omnytex.com> wrote:
> Well, here's exactly why I hate benchmarking: it's never consistent! 
> :)
>
> This time, everything compiled with JDK 1.6 (it's what I have 
> installed along side 1.4.2) and all used 5000 samples (updated test 
> plan to always do 5000 samples)...
>
> S1:
> 685 average, 142.3/sec throughput, 20.89 KB/sec
>
> So, an improvement there, maybe because of the JDK, maybe not.
>
> S2 w/OGNL 2.6:
> 1054 average, 87.3/sec throughput, 12.87 KB/sec
>
> That's better than the last run, but for no apparent reason!
>
> S2 W/OGNL 2.7:
> 1073 average, 85.8/sec throughput, 12.65 KB/sec
>
> Wuh?!?  Ok, I think we can most likely dismiss the difference as 
> within a statistical margin of difference, which means either (a) 
> these tests are just flat-out flawed somehow, (b) the OGNL bump, at 
> least as far as just a straight drop-in, makes no real difference, or 
> (c) OGNL isn't being used to enough of an extent in this test to 
> notice a difference (I'm frankly betting on that one).
>
> FYI, I've created JIRA ticket WW-2040... that way if others want to 
> extend the apps, they can attach an updated version to the ticket so 
> everyone can share.
>
> Frank
>
> cilquirm wrote:
> > Frank, would you care to give the same tests a shot with  ognl 2.7 
> > and javassist in the mix.
> >
> > Although none of this is purely scientific, at least evaluations on 
> > that regard give us some level of subjective information.
> >
> > The ognl 2.7 and javassist jar are available via the 
> > tapestry-4.2-libs download :
> >
> > http://tapestry.apache.org/download.html
> >
> >
> >
> >
> >
> > Frank W. Zammetti wrote:
> >> Dunno if this might help, but:
> >>
> >> http://www.omnytex.com/struts_benchmarking.zip
> >>
> >> In it you'll find two applications, one for S1 (1.3.8) and one for 
> >> S2 (2.0.8)... they are both (I think!) pretty much equivalent, and 
> >> about as simplistic as you can get.  Also included is a JMeter test 
> >> plan to run against them (just disable one or the other thread 
> >> group, wouldn't want to test them both at the same time!).
> >>
> >> Just ran a quick-and-dirty comparison of the two using the test 
> >> plan... I ran 100 users with no ramp-up... local Tomcat instance 
> >> (6.0.13)... the one difference is that the S1 version was compiled 
> >> with JDK 1.4.2, and the S2 version with 1.6.0, so there's at least 
> >> one potentially big variance right up front... here's what I saw:
> >>
> >> S1 results:
> >> 4256 samples, 913 average, 108.6/sec throughput, 16.01 KB/sec
> >>
> >> S2 results:
> >> 4165 samples, 1974 average, 50.0/sec throughput, 7.38 KB/sec
> >>
> >> I'm not claiming this to be the perfect test, nor do I believe 
> >> there's not some flaws in there (benchmarking is always a tough 
> >> thing to get quite right, especially trying to do a comparison like 
> >> this)... but, unless someone can point out some obvious mistakes I 
> >> made, the numbers don't lie: S2 *looks*, *on the surface* at least, 
> >> to be inherently twice as slow as S1.
> >>
> >> I'm not trying to make any sensational claims here, and again, I 
> >> may have totally blown it in the first place (I did throw this 
> >> together in about 30 minutes after all), but if we can use this as 
> >> a basis going forward, maybe build it up as a more expansive, 
> >> realistic and solid benchmarking suite, then it's all good in the 
> >> end.
> >>
> >> Anyway, it's there, if anyone's interested.
> >>
> >> Frank
> >>
> >> --
> >> Frank W. Zammetti
> >> Founder and Chief Software Architect
> >> Omnytex Technologies
> >> http://www.omnytex.com
> >> AIM/Yahoo: fzammetti
> >> MSN: fzammetti@hotmail.com
> >> Author of "Practical Ajax Projects With Java Technology"
> >>   (2006, Apress, ISBN 1-59059-695-1)
> >> and "JavaScript, DOM Scripting and Ajax Projects"
> >>   (2007, Apress, ISBN 1-59059-816-4)
> >> Java Web Parts - http://javawebparts.sourceforge.net
> >>   Supplying the wheel, so you don't have to reinvent it!
> >>
> >> Ing. Andrea Vettori wrote:
> >>> Il giorno 12/lug/07, alle ore 16:31, Guillaume Carré ha scritto:
> >>>
> >>>> 2007/7/12, Ing. Andrea Vettori <ma...@andreavettori.com>:
> >>>>> Compared to nothing... they are pure numbers. They are simply 
> >>>>> just good enought (to me).
> >>>>>
> >>>>> If we don't have this in mind we should use assember for 
> >>>>> everything :)
> >>>> what I meant was: maybe it could be a good idea to redevelop your 
> >>>> screens with, say struts 1 for example, and compare the results
> >>> mmmm I can't do that... simply don't have the time... :)
> >>>
> >>>
> >>>>> In the high load test, after 10 seconds you have about 90 users 
> >>>>> (the other 10 should have finished). Having a response time of 
> >>>>> 2,5 seconds for a db search and result display under such load 
> >>>>> seems very good to me.
> >>>>>
> >>>>> Don't you ?
> >>>> it depends :-)
> >>>>
> >>>> "2.5s" doesn't say much to me, I would need to know how much time 
> >>>> is consumed in your DB requests, how much time is consumed in 
> >>>> your service layer, etc etc.
> >>>>
> >>>> Is it 90 users really active at the same time, meaning using 90 
> >>>> threads on the server?if it is, do you have at least 90 
> >>>> connections in your pool? or did you put think times in your 
> >>>> tests?
> >>>
> >>>
> >>> No think time...
> >>>
> >>> I have 250 threads but I have a limit of 50 connections on my 
> >>> pool. I'll try to raise the number of maximum connection to see if 
> >>> the MP3 list test gets better.
> >>>
> >>> However I think that struts alone is performing well for my app; 
> >>> don't know if it's because i'm using only few OGNL expressions on 
> >>> my jsp pages.
> >>>
> >>> --
> >>> Ing. Andrea Vettori
> >>> Consulente per l'Information Technology
> >>>
> >>>
> >>>
> >>> ------------------------------------------------------------------
> >>> ---
> >>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> >>> For additional commands, e-mail: user-help@struts.apache.org
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> --No virus found in this incoming message.
> >>> Checked by AVG Free Edition.Version: 7.5.476 / Virus Database: 
> >>> 269.10.4/897 - Release Date: 7/11/2007 9:57 PM
> >>>
> >>>
> >>
> >> -------------------------------------------------------------------
> >> --
> >> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> >> For additional commands, e-mail: user-help@struts.apache.org
> >>
> >>
> >>
> >
>
> --
> --
> Frank W. Zammetti
> Founder and Chief Software Architect
> Omnytex Technologies
> http://www.omnytex.com
> AIM/Yahoo: fzammetti
> MSN: fzammetti@hotmail.com
> Author of "Practical Ajax Projects With Java Technology"
>   (2006, Apress, ISBN 1-59059-695-1)
> and "JavaScript, DOM Scripting and Ajax Projects"
>   (2007, Apress, ISBN 1-59059-816-4)
> Java Web Parts - http://javawebparts.sourceforge.net
>   Supplying the wheel, so you don't have to reinvent it!
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by Don Brown <do...@gmail.com>.
I'm really happy to see this issue being addressed, but it is
important to remember, framework performance wasn't (isn't?) a primary
goal for WebWork 2, and now Struts 2.  Specific decisions were made to
favor developer productivity and flexibility over performance such as
a template engine-based, theme-capable tag rendering and rich
expression language usage throughout.

Still, it is possible to do things like reimplement the tags using a
pure Java template engine, which gives 2-3x performance gains, but in
the end, you are left with very inflexible tags that are a pain to
extend and customize.  Of course, if you just use the simple theme,
then this idea might still be attractive.

Finally, it is worth repeating that in a typical web application, the
framework should be such a small part of processing, but if it is not,
those are the types of issues I'd like to really address.

Don

On 7/13/07, Frank W. Zammetti <fz...@omnytex.com> wrote:
> Well, here's exactly why I hate benchmarking: it's never consistent! :)
>
> This time, everything compiled with JDK 1.6 (it's what I have installed
> along side 1.4.2) and all used 5000 samples (updated test plan to always
> do 5000 samples)...
>
> S1:
> 685 average, 142.3/sec throughput, 20.89 KB/sec
>
> So, an improvement there, maybe because of the JDK, maybe not.
>
> S2 w/OGNL 2.6:
> 1054 average, 87.3/sec throughput, 12.87 KB/sec
>
> That's better than the last run, but for no apparent reason!
>
> S2 W/OGNL 2.7:
> 1073 average, 85.8/sec throughput, 12.65 KB/sec
>
> Wuh?!?  Ok, I think we can most likely dismiss the difference as within
> a statistical margin of difference, which means either (a) these tests
> are just flat-out flawed somehow, (b) the OGNL bump, at least as far as
> just a straight drop-in, makes no real difference, or (c) OGNL isn't
> being used to enough of an extent in this test to notice a difference
> (I'm frankly betting on that one).
>
> FYI, I've created JIRA ticket WW-2040... that way if others want to
> extend the apps, they can attach an updated version to the ticket so
> everyone can share.
>
> Frank
>
> cilquirm wrote:
> > Frank, would you care to give the same tests a shot with  ognl 2.7 and
> > javassist in the mix.
> >
> > Although none of this is purely scientific, at least evaluations on that
> > regard give us some level of subjective information.
> >
> > The ognl 2.7 and javassist jar are available via the tapestry-4.2-libs
> > download :
> >
> > http://tapestry.apache.org/download.html
> >
> >
> >
> >
> >
> > Frank W. Zammetti wrote:
> >> Dunno if this might help, but:
> >>
> >> http://www.omnytex.com/struts_benchmarking.zip
> >>
> >> In it you'll find two applications, one for S1 (1.3.8) and one for S2
> >> (2.0.8)... they are both (I think!) pretty much equivalent, and about as
> >> simplistic as you can get.  Also included is a JMeter test plan to run
> >> against them (just disable one or the other thread group, wouldn't want
> >> to test them both at the same time!).
> >>
> >> Just ran a quick-and-dirty comparison of the two using the test plan...
> >> I ran 100 users with no ramp-up... local Tomcat instance (6.0.13)... the
> >> one difference is that the S1 version was compiled with JDK 1.4.2, and
> >> the S2 version with 1.6.0, so there's at least one potentially big
> >> variance right up front... here's what I saw:
> >>
> >> S1 results:
> >> 4256 samples, 913 average, 108.6/sec throughput, 16.01 KB/sec
> >>
> >> S2 results:
> >> 4165 samples, 1974 average, 50.0/sec throughput, 7.38 KB/sec
> >>
> >> I'm not claiming this to be the perfect test, nor do I believe there's
> >> not some flaws in there (benchmarking is always a tough thing to get
> >> quite right, especially trying to do a comparison like this)... but,
> >> unless someone can point out some obvious mistakes I made, the numbers
> >> don't lie: S2 *looks*, *on the surface* at least, to be inherently twice
> >> as slow as S1.
> >>
> >> I'm not trying to make any sensational claims here, and again, I may
> >> have totally blown it in the first place (I did throw this together in
> >> about 30 minutes after all), but if we can use this as a basis going
> >> forward, maybe build it up as a more expansive, realistic and solid
> >> benchmarking suite, then it's all good in the end.
> >>
> >> Anyway, it's there, if anyone's interested.
> >>
> >> Frank
> >>
> >> --
> >> Frank W. Zammetti
> >> Founder and Chief Software Architect
> >> Omnytex Technologies
> >> http://www.omnytex.com
> >> AIM/Yahoo: fzammetti
> >> MSN: fzammetti@hotmail.com
> >> Author of "Practical Ajax Projects With Java Technology"
> >>   (2006, Apress, ISBN 1-59059-695-1)
> >> and "JavaScript, DOM Scripting and Ajax Projects"
> >>   (2007, Apress, ISBN 1-59059-816-4)
> >> Java Web Parts - http://javawebparts.sourceforge.net
> >>   Supplying the wheel, so you don't have to reinvent it!
> >>
> >> Ing. Andrea Vettori wrote:
> >>> Il giorno 12/lug/07, alle ore 16:31, Guillaume Carré ha scritto:
> >>>
> >>>> 2007/7/12, Ing. Andrea Vettori <ma...@andreavettori.com>:
> >>>>> Compared to nothing... they are pure numbers. They are simply just
> >>>>> good enought (to me).
> >>>>>
> >>>>> If we don't have this in mind we should use assember for everything :)
> >>>> what I meant was: maybe it could be a good idea to redevelop your
> >>>> screens with, say struts 1 for example, and compare the results
> >>> mmmm I can't do that... simply don't have the time... :)
> >>>
> >>>
> >>>>> In the high load test, after 10 seconds you have about 90 users (the
> >>>>> other 10 should have finished). Having a response time of 2,5 seconds
> >>>>> for a db search and result display under such load seems very good to
> >>>>> me.
> >>>>>
> >>>>> Don't you ?
> >>>> it depends :-)
> >>>>
> >>>> "2.5s" doesn't say much to me, I would need to know how much time is
> >>>> consumed in your DB requests, how much time is consumed in your
> >>>> service layer, etc etc.
> >>>>
> >>>> Is it 90 users really active at the same time, meaning using 90
> >>>> threads on the server?if it is, do you have at least 90 connections in
> >>>> your pool?
> >>>> or did you put think times in your tests?
> >>>
> >>>
> >>> No think time...
> >>>
> >>> I have 250 threads but I have a limit of 50 connections on my pool. I'll
> >>> try to raise
> >>> the number of maximum connection to see if the MP3 list test gets better.
> >>>
> >>> However I think that struts alone is performing well for my app; don't
> >>> know if it's because
> >>> i'm using only few OGNL expressions on my jsp pages.
> >>>
> >>> --
> >>> Ing. Andrea Vettori
> >>> Consulente per l'Information Technology
> >>>
> >>>
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> >>> For additional commands, e-mail: user-help@struts.apache.org
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> --No virus found in this incoming message.
> >>> Checked by AVG Free Edition.Version: 7.5.476 / Virus Database:
> >>> 269.10.4/897 - Release Date: 7/11/2007 9:57 PM
> >>>
> >>>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> >> For additional commands, e-mail: user-help@struts.apache.org
> >>
> >>
> >>
> >
>
> --
> --
> Frank W. Zammetti
> Founder and Chief Software Architect
> Omnytex Technologies
> http://www.omnytex.com
> AIM/Yahoo: fzammetti
> MSN: fzammetti@hotmail.com
> Author of "Practical Ajax Projects With Java Technology"
>   (2006, Apress, ISBN 1-59059-695-1)
> and "JavaScript, DOM Scripting and Ajax Projects"
>   (2007, Apress, ISBN 1-59059-816-4)
> Java Web Parts - http://javawebparts.sourceforge.net
>   Supplying the wheel, so you don't have to reinvent it!
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by "Frank W. Zammetti" <fz...@omnytex.com>.
I'm still betting OGNL isn't hit in any significant way in this test 
anyhow... in fact, is it used at all?  I'm not even certain... I assume 
this line does:

<s:property value="greeting" />

But maybe I'm wrong?  Like I said, even if it is, if *that* made any 
sort of real difference in the numbers, I'd be flat-out shocked.

Frank

James Holmes wrote:
> Frank,
> 
> There should not be a noticable difference with OGNL yet. The performance improvements in OGNL 2.7 require expressions to be compiled before being executed. The current S2 code does not do this yet so it cannot realize the performance gains yet. 
> 
> 
> 
> 
> Sent via BlackBerry.
> 
> -----Original Message-----
> From: "Frank W. Zammetti" <fz...@omnytex.com>
> 
> Date: Thu, 12 Jul 2007 17:10:17 
> To:Struts Users Mailing List <us...@struts.apache.org>
> Subject: Re: Struts 2 performance
> 
> 
> Well, here's exactly why I hate benchmarking: it's never consistent! :)
> 
> This time, everything compiled with JDK 1.6 (it's what I have installed 
> along side 1.4.2) and all used 5000 samples (updated test plan to always 
> do 5000 samples)...
> 
> S1:
> 685 average, 142.3/sec throughput, 20.89 KB/sec
> 
> So, an improvement there, maybe because of the JDK, maybe not.
> 
> S2 w/OGNL 2.6:
> 1054 average, 87.3/sec throughput, 12.87 KB/sec
> 
> That's better than the last run, but for no apparent reason!
> 
> S2 W/OGNL 2.7:
> 1073 average, 85.8/sec throughput, 12.65 KB/sec
> 
> Wuh?!?  Ok, I think we can most likely dismiss the difference as within 
> a statistical margin of difference, which means either (a) these tests 
> are just flat-out flawed somehow, (b) the OGNL bump, at least as far as 
> just a straight drop-in, makes no real difference, or (c) OGNL isn't 
> being used to enough of an extent in this test to notice a difference 
> (I'm frankly betting on that one).
> 
> FYI, I've created JIRA ticket WW-2040... that way if others want to 
> extend the apps, they can attach an updated version to the ticket so 
> everyone can share.
> 
> Frank
> 
> cilquirm wrote:
>> Frank, would you care to give the same tests a shot with  ognl 2.7 and
>> javassist in the mix.
>>
>> Although none of this is purely scientific, at least evaluations on that
>> regard give us some level of subjective information.
>>  
>> The ognl 2.7 and javassist jar are available via the tapestry-4.2-libs
>> download :
>>
>> http://tapestry.apache.org/download.html
>>
>>
>>
>>
>>
>> Frank W. Zammetti wrote:
>>> Dunno if this might help, but:
>>>
>>> http://www.omnytex.com/struts_benchmarking.zip
>>>
>>> In it you'll find two applications, one for S1 (1.3.8) and one for S2 
>>> (2.0.8)... they are both (I think!) pretty much equivalent, and about as 
>>> simplistic as you can get.  Also included is a JMeter test plan to run 
>>> against them (just disable one or the other thread group, wouldn't want 
>>> to test them both at the same time!).
>>>
>>> Just ran a quick-and-dirty comparison of the two using the test plan... 
>>> I ran 100 users with no ramp-up... local Tomcat instance (6.0.13)... the 
>>> one difference is that the S1 version was compiled with JDK 1.4.2, and 
>>> the S2 version with 1.6.0, so there's at least one potentially big 
>>> variance right up front... here's what I saw:
>>>
>>> S1 results:
>>> 4256 samples, 913 average, 108.6/sec throughput, 16.01 KB/sec
>>>
>>> S2 results:
>>> 4165 samples, 1974 average, 50.0/sec throughput, 7.38 KB/sec
>>>
>>> I'm not claiming this to be the perfect test, nor do I believe there's 
>>> not some flaws in there (benchmarking is always a tough thing to get 
>>> quite right, especially trying to do a comparison like this)... but, 
>>> unless someone can point out some obvious mistakes I made, the numbers 
>>> don't lie: S2 *looks*, *on the surface* at least, to be inherently twice 
>>> as slow as S1.
>>>
>>> I'm not trying to make any sensational claims here, and again, I may 
>>> have totally blown it in the first place (I did throw this together in 
>>> about 30 minutes after all), but if we can use this as a basis going 
>>> forward, maybe build it up as a more expansive, realistic and solid 
>>> benchmarking suite, then it's all good in the end.
>>>
>>> Anyway, it's there, if anyone's interested.
>>>
>>> Frank
>>>
>>> --
>>> Frank W. Zammetti
>>> Founder and Chief Software Architect
>>> Omnytex Technologies
>>> http://www.omnytex.com
>>> AIM/Yahoo: fzammetti
>>> MSN: fzammetti@hotmail.com
>>> Author of "Practical Ajax Projects With Java Technology"
>>>   (2006, Apress, ISBN 1-59059-695-1)
>>> and "JavaScript, DOM Scripting and Ajax Projects"
>>>   (2007, Apress, ISBN 1-59059-816-4)
>>> Java Web Parts - http://javawebparts.sourceforge.net
>>>   Supplying the wheel, so you don't have to reinvent it!
>>>
>>> Ing. Andrea Vettori wrote:
>>>> Il giorno 12/lug/07, alle ore 16:31, Guillaume Carré ha scritto:
>>>>
>>>>> 2007/7/12, Ing. Andrea Vettori <ma...@andreavettori.com>:
>>>>>> Compared to nothing... they are pure numbers. They are simply just
>>>>>> good enought (to me).
>>>>>>
>>>>>> If we don't have this in mind we should use assember for everything :)
>>>>> what I meant was: maybe it could be a good idea to redevelop your
>>>>> screens with, say struts 1 for example, and compare the results
>>>> mmmm I can't do that... simply don't have the time... :)
>>>>
>>>>
>>>>>> In the high load test, after 10 seconds you have about 90 users (the
>>>>>> other 10 should have finished). Having a response time of 2,5 seconds
>>>>>> for a db search and result display under such load seems very good to
>>>>>> me.
>>>>>>
>>>>>> Don't you ?
>>>>> it depends :-)
>>>>>
>>>>> "2.5s" doesn't say much to me, I would need to know how much time is
>>>>> consumed in your DB requests, how much time is consumed in your
>>>>> service layer, etc etc.
>>>>>
>>>>> Is it 90 users really active at the same time, meaning using 90
>>>>> threads on the server?if it is, do you have at least 90 connections in
>>>>> your pool?
>>>>> or did you put think times in your tests?
>>>>
>>>> No think time...
>>>>
>>>> I have 250 threads but I have a limit of 50 connections on my pool. I'll 
>>>> try to raise
>>>> the number of maximum connection to see if the MP3 list test gets better.
>>>>
>>>> However I think that struts alone is performing well for my app; don't 
>>>> know if it's because
>>>> i'm using only few OGNL expressions on my jsp pages.
>>>>
>>>> -- 
>>>> Ing. Andrea Vettori
>>>> Consulente per l'Information Technology
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: user-help@struts.apache.org
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --No virus found in this incoming message.
>>>> Checked by AVG Free Edition.Version: 7.5.476 / Virus Database: 
>>>> 269.10.4/897 - Release Date: 7/11/2007 9:57 PM
>>>>
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: user-help@struts.apache.org
>>>
>>>
>>>
> 
> 
> ------------------------------------------------------------------------
> 
> No virus found in this incoming message.
> Checked by AVG Free Edition. 
> Version: 7.5.476 / Virus Database: 269.10.4/898 - Release Date: 7/12/2007 4:08 PM

-- 
--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM/Yahoo: fzammetti
MSN: fzammetti@hotmail.com
Author of "Practical Ajax Projects With Java Technology"
  (2006, Apress, ISBN 1-59059-695-1)
and "JavaScript, DOM Scripting and Ajax Projects"
  (2007, Apress, ISBN 1-59059-816-4)
Java Web Parts - http://javawebparts.sourceforge.net
  Supplying the wheel, so you don't have to reinvent it!

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by James Holmes <ja...@jamesholmes.com>.
Frank,

There should not be a noticable difference with OGNL yet. The performance improvements in OGNL 2.7 require expressions to be compiled before being executed. The current S2 code does not do this yet so it cannot realize the performance gains yet. 




Sent via BlackBerry.

-----Original Message-----
From: "Frank W. Zammetti" <fz...@omnytex.com>

Date: Thu, 12 Jul 2007 17:10:17 
To:Struts Users Mailing List <us...@struts.apache.org>
Subject: Re: Struts 2 performance


Well, here's exactly why I hate benchmarking: it's never consistent! :)

This time, everything compiled with JDK 1.6 (it's what I have installed 
along side 1.4.2) and all used 5000 samples (updated test plan to always 
do 5000 samples)...

S1:
685 average, 142.3/sec throughput, 20.89 KB/sec

So, an improvement there, maybe because of the JDK, maybe not.

S2 w/OGNL 2.6:
1054 average, 87.3/sec throughput, 12.87 KB/sec

That's better than the last run, but for no apparent reason!

S2 W/OGNL 2.7:
1073 average, 85.8/sec throughput, 12.65 KB/sec

Wuh?!?  Ok, I think we can most likely dismiss the difference as within 
a statistical margin of difference, which means either (a) these tests 
are just flat-out flawed somehow, (b) the OGNL bump, at least as far as 
just a straight drop-in, makes no real difference, or (c) OGNL isn't 
being used to enough of an extent in this test to notice a difference 
(I'm frankly betting on that one).

FYI, I've created JIRA ticket WW-2040... that way if others want to 
extend the apps, they can attach an updated version to the ticket so 
everyone can share.

Frank

cilquirm wrote:
> Frank, would you care to give the same tests a shot with  ognl 2.7 and
> javassist in the mix.
> 
> Although none of this is purely scientific, at least evaluations on that
> regard give us some level of subjective information.
>  
> The ognl 2.7 and javassist jar are available via the tapestry-4.2-libs
> download :
> 
> http://tapestry.apache.org/download.html
> 
> 
> 
> 
> 
> Frank W. Zammetti wrote:
>> Dunno if this might help, but:
>>
>> http://www.omnytex.com/struts_benchmarking.zip
>>
>> In it you'll find two applications, one for S1 (1.3.8) and one for S2 
>> (2.0.8)... they are both (I think!) pretty much equivalent, and about as 
>> simplistic as you can get.  Also included is a JMeter test plan to run 
>> against them (just disable one or the other thread group, wouldn't want 
>> to test them both at the same time!).
>>
>> Just ran a quick-and-dirty comparison of the two using the test plan... 
>> I ran 100 users with no ramp-up... local Tomcat instance (6.0.13)... the 
>> one difference is that the S1 version was compiled with JDK 1.4.2, and 
>> the S2 version with 1.6.0, so there's at least one potentially big 
>> variance right up front... here's what I saw:
>>
>> S1 results:
>> 4256 samples, 913 average, 108.6/sec throughput, 16.01 KB/sec
>>
>> S2 results:
>> 4165 samples, 1974 average, 50.0/sec throughput, 7.38 KB/sec
>>
>> I'm not claiming this to be the perfect test, nor do I believe there's 
>> not some flaws in there (benchmarking is always a tough thing to get 
>> quite right, especially trying to do a comparison like this)... but, 
>> unless someone can point out some obvious mistakes I made, the numbers 
>> don't lie: S2 *looks*, *on the surface* at least, to be inherently twice 
>> as slow as S1.
>>
>> I'm not trying to make any sensational claims here, and again, I may 
>> have totally blown it in the first place (I did throw this together in 
>> about 30 minutes after all), but if we can use this as a basis going 
>> forward, maybe build it up as a more expansive, realistic and solid 
>> benchmarking suite, then it's all good in the end.
>>
>> Anyway, it's there, if anyone's interested.
>>
>> Frank
>>
>> --
>> Frank W. Zammetti
>> Founder and Chief Software Architect
>> Omnytex Technologies
>> http://www.omnytex.com
>> AIM/Yahoo: fzammetti
>> MSN: fzammetti@hotmail.com
>> Author of "Practical Ajax Projects With Java Technology"
>>   (2006, Apress, ISBN 1-59059-695-1)
>> and "JavaScript, DOM Scripting and Ajax Projects"
>>   (2007, Apress, ISBN 1-59059-816-4)
>> Java Web Parts - http://javawebparts.sourceforge.net
>>   Supplying the wheel, so you don't have to reinvent it!
>>
>> Ing. Andrea Vettori wrote:
>>> Il giorno 12/lug/07, alle ore 16:31, Guillaume Carré ha scritto:
>>>
>>>> 2007/7/12, Ing. Andrea Vettori <ma...@andreavettori.com>:
>>>>> Compared to nothing... they are pure numbers. They are simply just
>>>>> good enought (to me).
>>>>>
>>>>> If we don't have this in mind we should use assember for everything :)
>>>> what I meant was: maybe it could be a good idea to redevelop your
>>>> screens with, say struts 1 for example, and compare the results
>>> mmmm I can't do that... simply don't have the time... :)
>>>
>>>
>>>>> In the high load test, after 10 seconds you have about 90 users (the
>>>>> other 10 should have finished). Having a response time of 2,5 seconds
>>>>> for a db search and result display under such load seems very good to
>>>>> me.
>>>>>
>>>>> Don't you ?
>>>> it depends :-)
>>>>
>>>> "2.5s" doesn't say much to me, I would need to know how much time is
>>>> consumed in your DB requests, how much time is consumed in your
>>>> service layer, etc etc.
>>>>
>>>> Is it 90 users really active at the same time, meaning using 90
>>>> threads on the server?if it is, do you have at least 90 connections in
>>>> your pool?
>>>> or did you put think times in your tests?
>>>
>>>
>>> No think time...
>>>
>>> I have 250 threads but I have a limit of 50 connections on my pool. I'll 
>>> try to raise
>>> the number of maximum connection to see if the MP3 list test gets better.
>>>
>>> However I think that struts alone is performing well for my app; don't 
>>> know if it's because
>>> i'm using only few OGNL expressions on my jsp pages.
>>>
>>> -- 
>>> Ing. Andrea Vettori
>>> Consulente per l'Information Technology
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: user-help@struts.apache.org
>>>
>>>
>>>
>>>
>>>
>>> --No virus found in this incoming message.
>>> Checked by AVG Free Edition.Version: 7.5.476 / Virus Database: 
>>> 269.10.4/897 - Release Date: 7/11/2007 9:57 PM
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>> For additional commands, e-mail: user-help@struts.apache.org
>>
>>
>>
> 

-- 
--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM/Yahoo: fzammetti
MSN: fzammetti@hotmail.com
Author of "Practical Ajax Projects With Java Technology"
  (2006, Apress, ISBN 1-59059-695-1)
and "JavaScript, DOM Scripting and Ajax Projects"
  (2007, Apress, ISBN 1-59059-816-4)
Java Web Parts - http://javawebparts.sourceforge.net
  Supplying the wheel, so you don't have to reinvent it!

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by "Frank W. Zammetti" <fz...@omnytex.com>.
Well, here's exactly why I hate benchmarking: it's never consistent! :)

This time, everything compiled with JDK 1.6 (it's what I have installed 
along side 1.4.2) and all used 5000 samples (updated test plan to always 
do 5000 samples)...

S1:
685 average, 142.3/sec throughput, 20.89 KB/sec

So, an improvement there, maybe because of the JDK, maybe not.

S2 w/OGNL 2.6:
1054 average, 87.3/sec throughput, 12.87 KB/sec

That's better than the last run, but for no apparent reason!

S2 W/OGNL 2.7:
1073 average, 85.8/sec throughput, 12.65 KB/sec

Wuh?!?  Ok, I think we can most likely dismiss the difference as within 
a statistical margin of difference, which means either (a) these tests 
are just flat-out flawed somehow, (b) the OGNL bump, at least as far as 
just a straight drop-in, makes no real difference, or (c) OGNL isn't 
being used to enough of an extent in this test to notice a difference 
(I'm frankly betting on that one).

FYI, I've created JIRA ticket WW-2040... that way if others want to 
extend the apps, they can attach an updated version to the ticket so 
everyone can share.

Frank

cilquirm wrote:
> Frank, would you care to give the same tests a shot with  ognl 2.7 and
> javassist in the mix.
> 
> Although none of this is purely scientific, at least evaluations on that
> regard give us some level of subjective information.
>  
> The ognl 2.7 and javassist jar are available via the tapestry-4.2-libs
> download :
> 
> http://tapestry.apache.org/download.html
> 
> 
> 
> 
> 
> Frank W. Zammetti wrote:
>> Dunno if this might help, but:
>>
>> http://www.omnytex.com/struts_benchmarking.zip
>>
>> In it you'll find two applications, one for S1 (1.3.8) and one for S2 
>> (2.0.8)... they are both (I think!) pretty much equivalent, and about as 
>> simplistic as you can get.  Also included is a JMeter test plan to run 
>> against them (just disable one or the other thread group, wouldn't want 
>> to test them both at the same time!).
>>
>> Just ran a quick-and-dirty comparison of the two using the test plan... 
>> I ran 100 users with no ramp-up... local Tomcat instance (6.0.13)... the 
>> one difference is that the S1 version was compiled with JDK 1.4.2, and 
>> the S2 version with 1.6.0, so there's at least one potentially big 
>> variance right up front... here's what I saw:
>>
>> S1 results:
>> 4256 samples, 913 average, 108.6/sec throughput, 16.01 KB/sec
>>
>> S2 results:
>> 4165 samples, 1974 average, 50.0/sec throughput, 7.38 KB/sec
>>
>> I'm not claiming this to be the perfect test, nor do I believe there's 
>> not some flaws in there (benchmarking is always a tough thing to get 
>> quite right, especially trying to do a comparison like this)... but, 
>> unless someone can point out some obvious mistakes I made, the numbers 
>> don't lie: S2 *looks*, *on the surface* at least, to be inherently twice 
>> as slow as S1.
>>
>> I'm not trying to make any sensational claims here, and again, I may 
>> have totally blown it in the first place (I did throw this together in 
>> about 30 minutes after all), but if we can use this as a basis going 
>> forward, maybe build it up as a more expansive, realistic and solid 
>> benchmarking suite, then it's all good in the end.
>>
>> Anyway, it's there, if anyone's interested.
>>
>> Frank
>>
>> --
>> Frank W. Zammetti
>> Founder and Chief Software Architect
>> Omnytex Technologies
>> http://www.omnytex.com
>> AIM/Yahoo: fzammetti
>> MSN: fzammetti@hotmail.com
>> Author of "Practical Ajax Projects With Java Technology"
>>   (2006, Apress, ISBN 1-59059-695-1)
>> and "JavaScript, DOM Scripting and Ajax Projects"
>>   (2007, Apress, ISBN 1-59059-816-4)
>> Java Web Parts - http://javawebparts.sourceforge.net
>>   Supplying the wheel, so you don't have to reinvent it!
>>
>> Ing. Andrea Vettori wrote:
>>> Il giorno 12/lug/07, alle ore 16:31, Guillaume Carré ha scritto:
>>>
>>>> 2007/7/12, Ing. Andrea Vettori <ma...@andreavettori.com>:
>>>>> Compared to nothing... they are pure numbers. They are simply just
>>>>> good enought (to me).
>>>>>
>>>>> If we don't have this in mind we should use assember for everything :)
>>>> what I meant was: maybe it could be a good idea to redevelop your
>>>> screens with, say struts 1 for example, and compare the results
>>> mmmm I can't do that... simply don't have the time... :)
>>>
>>>
>>>>> In the high load test, after 10 seconds you have about 90 users (the
>>>>> other 10 should have finished). Having a response time of 2,5 seconds
>>>>> for a db search and result display under such load seems very good to
>>>>> me.
>>>>>
>>>>> Don't you ?
>>>> it depends :-)
>>>>
>>>> "2.5s" doesn't say much to me, I would need to know how much time is
>>>> consumed in your DB requests, how much time is consumed in your
>>>> service layer, etc etc.
>>>>
>>>> Is it 90 users really active at the same time, meaning using 90
>>>> threads on the server?if it is, do you have at least 90 connections in
>>>> your pool?
>>>> or did you put think times in your tests?
>>>
>>>
>>> No think time...
>>>
>>> I have 250 threads but I have a limit of 50 connections on my pool. I'll 
>>> try to raise
>>> the number of maximum connection to see if the MP3 list test gets better.
>>>
>>> However I think that struts alone is performing well for my app; don't 
>>> know if it's because
>>> i'm using only few OGNL expressions on my jsp pages.
>>>
>>> -- 
>>> Ing. Andrea Vettori
>>> Consulente per l'Information Technology
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: user-help@struts.apache.org
>>>
>>>
>>>
>>>
>>>
>>> --No virus found in this incoming message.
>>> Checked by AVG Free Edition.Version: 7.5.476 / Virus Database: 
>>> 269.10.4/897 - Release Date: 7/11/2007 9:57 PM
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>> For additional commands, e-mail: user-help@struts.apache.org
>>
>>
>>
> 

-- 
--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM/Yahoo: fzammetti
MSN: fzammetti@hotmail.com
Author of "Practical Ajax Projects With Java Technology"
  (2006, Apress, ISBN 1-59059-695-1)
and "JavaScript, DOM Scripting and Ajax Projects"
  (2007, Apress, ISBN 1-59059-816-4)
Java Web Parts - http://javawebparts.sourceforge.net
  Supplying the wheel, so you don't have to reinvent it!

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Struts 2 performance

Posted by cilquirm <aa...@gmail.com>.
Frank, would you care to give the same tests a shot with  ognl 2.7 and
javassist in the mix.

Although none of this is purely scientific, at least evaluations on that
regard give us some level of subjective information.
 
The ognl 2.7 and javassist jar are available via the tapestry-4.2-libs
download :

http://tapestry.apache.org/download.html





Frank W. Zammetti wrote:
> 
> Dunno if this might help, but:
> 
> http://www.omnytex.com/struts_benchmarking.zip
> 
> In it you'll find two applications, one for S1 (1.3.8) and one for S2 
> (2.0.8)... they are both (I think!) pretty much equivalent, and about as 
> simplistic as you can get.  Also included is a JMeter test plan to run 
> against them (just disable one or the other thread group, wouldn't want 
> to test them both at the same time!).
> 
> Just ran a quick-and-dirty comparison of the two using the test plan... 
> I ran 100 users with no ramp-up... local Tomcat instance (6.0.13)... the 
> one difference is that the S1 version was compiled with JDK 1.4.2, and 
> the S2 version with 1.6.0, so there's at least one potentially big 
> variance right up front... here's what I saw:
> 
> S1 results:
> 4256 samples, 913 average, 108.6/sec throughput, 16.01 KB/sec
> 
> S2 results:
> 4165 samples, 1974 average, 50.0/sec throughput, 7.38 KB/sec
> 
> I'm not claiming this to be the perfect test, nor do I believe there's 
> not some flaws in there (benchmarking is always a tough thing to get 
> quite right, especially trying to do a comparison like this)... but, 
> unless someone can point out some obvious mistakes I made, the numbers 
> don't lie: S2 *looks*, *on the surface* at least, to be inherently twice 
> as slow as S1.
> 
> I'm not trying to make any sensational claims here, and again, I may 
> have totally blown it in the first place (I did throw this together in 
> about 30 minutes after all), but if we can use this as a basis going 
> forward, maybe build it up as a more expansive, realistic and solid 
> benchmarking suite, then it's all good in the end.
> 
> Anyway, it's there, if anyone's interested.
> 
> Frank
> 
> --
> Frank W. Zammetti
> Founder and Chief Software Architect
> Omnytex Technologies
> http://www.omnytex.com
> AIM/Yahoo: fzammetti
> MSN: fzammetti@hotmail.com
> Author of "Practical Ajax Projects With Java Technology"
>   (2006, Apress, ISBN 1-59059-695-1)
> and "JavaScript, DOM Scripting and Ajax Projects"
>   (2007, Apress, ISBN 1-59059-816-4)
> Java Web Parts - http://javawebparts.sourceforge.net
>   Supplying the wheel, so you don't have to reinvent it!
> 
> Ing. Andrea Vettori wrote:
>> 
>> Il giorno 12/lug/07, alle ore 16:31, Guillaume Carré ha scritto:
>> 
>>> 2007/7/12, Ing. Andrea Vettori <ma...@andreavettori.com>:
>>>> Compared to nothing... they are pure numbers. They are simply just
>>>> good enought (to me).
>>>>
>>>> If we don't have this in mind we should use assember for everything :)
>>>
>>> what I meant was: maybe it could be a good idea to redevelop your
>>> screens with, say struts 1 for example, and compare the results
>> 
>> mmmm I can't do that... simply don't have the time... :)
>> 
>> 
>>>> In the high load test, after 10 seconds you have about 90 users (the
>>>> other 10 should have finished). Having a response time of 2,5 seconds
>>>> for a db search and result display under such load seems very good to
>>>> me.
>>>>
>>>> Don't you ?
>>>
>>> it depends :-)
>>>
>>> "2.5s" doesn't say much to me, I would need to know how much time is
>>> consumed in your DB requests, how much time is consumed in your
>>> service layer, etc etc.
>>>
>>> Is it 90 users really active at the same time, meaning using 90
>>> threads on the server?if it is, do you have at least 90 connections in
>>> your pool?
>>> or did you put think times in your tests?
>> 
>> 
>> 
>> No think time...
>> 
>> I have 250 threads but I have a limit of 50 connections on my pool. I'll 
>> try to raise
>> the number of maximum connection to see if the MP3 list test gets better.
>> 
>> However I think that struts alone is performing well for my app; don't 
>> know if it's because
>> i'm using only few OGNL expressions on my jsp pages.
>> 
>> -- 
>> Ing. Andrea Vettori
>> Consulente per l'Information Technology
>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>> For additional commands, e-mail: user-help@struts.apache.org
>> 
>> 
>> 
>> 
>> 
>> --No virus found in this incoming message.
>> Checked by AVG Free Edition.Version: 7.5.476 / Virus Database: 
>> 269.10.4/897 - Release Date: 7/11/2007 9:57 PM
>> 
>> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Struts-2-performance-tf4053401.html#a11568260
Sent from the Struts - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org