Re: Struts 2 performance

2009-08-03 Thread Xyzr

Did you try  http://en.wikipedia.org/wiki/VisualVM Java VisualVM ? How does
it compare to JRockit profiler?

Musachy Barroso wrote:
 
 I would suggest you to use the profiler that comes with
 JRockit:
 
 http://www.oracle.com/technology/products/jrockit/index.html
 

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


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



Re: Struts 2 performance

2009-08-03 Thread Musachy Barroso
sort of like a Lamborghini vs smart car :)

On Mon, Aug 3, 2009 at 6:43 PM, Xyzrxyyzz...@gmail.com wrote:

 Did you try  http://en.wikipedia.org/wiki/VisualVM Java VisualVM ? How does
 it compare to JRockit profiler?

 Musachy Barroso wrote:

 I would suggest you to use the profiler that comes with
 JRockit:

 http://www.oracle.com/technology/products/jrockit/index.html


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


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





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

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



Re: Struts 2 performance

2009-07-30 Thread Dale Newfield

Musachy Barroso wrote:

Just to save you some time (because I just spend sometime myself on
this), I would suggest you to use the profiler that comes with
JRockit:

http://www.oracle.com/technology/products/jrockit/index.html


You will have to run your application with the JRockit jre to use it.
It is free, and by far the best profiler I have ever used.


I do all my development on a mac (not a platform for which this is 
available).  I do have an old PC with *maybe* 1GB of memory that's dog 
slow already...do you think it's worth the hair I'll have to pull out in 
order to run my app in this and test it out?


-Dale

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



Re: Struts 2 performance

2009-07-30 Thread Musachy Barroso
If you have a commercial profiler that works on Mac, it could be good
enough. But after I have been using it for a few days I was like
whoaa this thing has improved a lot. It has a feature for profiling
lock contention which is very sweet.

musachy

On Wed, Jul 29, 2009 at 11:38 PM, Dale Newfieldd...@newfield.org wrote:
 Musachy Barroso wrote:

 Just to save you some time (because I just spend sometime myself on
 this), I would suggest you to use the profiler that comes with
 JRockit:

 http://www.oracle.com/technology/products/jrockit/index.html


 You will have to run your application with the JRockit jre to use it.
 It is free, and by far the best profiler I have ever used.

 I do all my development on a mac (not a platform for which this is
 available).  I do have an old PC with *maybe* 1GB of memory that's dog slow
 already...do you think it's worth the hair I'll have to pull out in order to
 run my app in this and test it out?

 -Dale

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





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

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



RE: Struts 2 performance

2009-07-30 Thread Martin Gainty

detect lock contention on threads or connections?
lock on something else?
?
Martin Gainty 
__ 
Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
 
Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger 
sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung 
oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem 
Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. 
Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung 
fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le 
destinataire prévu, nous te demandons avec bonté que pour satisfaire informez 
l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est 
interdite. Ce message sert à l'information seulement et n'aura pas n'importe 
quel effet légalement obligatoire. Étant donné que les email peuvent facilement 
être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité 
pour le contenu fourni.




 Date: Thu, 30 Jul 2009 08:40:30 -0700
 Subject: Re: Struts 2 performance
 From: musa...@gmail.com
 To: user@struts.apache.org
 
 If you have a commercial profiler that works on Mac, it could be good
 enough. But after I have been using it for a few days I was like
 whoaa this thing has improved a lot. It has a feature for profiling
 lock contention which is very sweet.
 
 musachy
 
 On Wed, Jul 29, 2009 at 11:38 PM, Dale Newfieldd...@newfield.org wrote:
  Musachy Barroso wrote:
 
  Just to save you some time (because I just spend sometime myself on
  this), I would suggest you to use the profiler that comes with
  JRockit:
 
  http://www.oracle.com/technology/products/jrockit/index.html
 
 
  You will have to run your application with the JRockit jre to use it.
  It is free, and by far the best profiler I have ever used.
 
  I do all my development on a mac (not a platform for which this is
  available).  I do have an old PC with *maybe* 1GB of memory that's dog slow
  already...do you think it's worth the hair I'll have to pull out in order to
  run my app in this and test it out?
 
  -Dale
 
  -
  To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
  For additional commands, e-mail: user-h...@struts.apache.org
 
 
 
 
 
 -- 
 Hey you! Would you help me to carry the stone? Pink Floyd
 
 -
 To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
 For additional commands, e-mail: user-h...@struts.apache.org
 

_
NEW mobile Hotmail. Optimized for YOUR phone.  Click here.
http://windowslive.com/Mobile?ocid=TXT_TAGLM_WL_CS_MB_new_hotmail_072009

Re: Struts 2 performance

2009-07-29 Thread Musachy Barroso
Yes, and not. It is a good idea to remove any interceptor that you
don't need, like i18n for example, or the double params if you are not
using it. Before making any assumptions I would suggest you to profile
your application, and see what is consuming the mos memory and time.
Just to save you some time (because I just spend sometime myself on
this), I would suggest you to use the profiler that comes with
JRockit:

http://www.oracle.com/technology/products/jrockit/index.html


You will have to run your application with the JRockit jre to use it.
It is free, and by far the best profiler I have ever used. With that
in hand you can come back with some data, and then we can probably
make some suggestions.

Check this also:

http://struts.apache.org/2.x/docs/performance-tuning.html

musachy

On Wed, Jul 29, 2009 at 9:33 PM, Say Jonwsay...@gmail.com wrote:
 Hi guys,
 I have been using Struts 2 for a while for some of my web apps. Performance
 is OK. I'm getting less than 400ms when I use the timerinterceptor for a
 regular retrieve operation. I'm just wondering, with the interceptor
 architecture it seems that there are many layers to go thru' when S2 is
 used. More so when we use the param, prepare, param pattern where the param
 interceptor is actually applied twice. Is this bad for memory consumption
 and execution speed?

 I'm also facing a problem when I deploy my S2 / Spring / Hibernate
 applications. Its sad that I almost have to get a min. of 512mb VPS for a
 fairly small - mid scale ecommerce application when my competitors in the
 market can deploy a PHP ecommerce application on a regular shared hosting
 which is much cheaper. Any similar experiences? Its really bad when we are
 talking about Java S2 + Spring + Hibernate hosting because the memory
 consumption is huge!

 All comments are welcomed!

 Regards.
 W.SayJon

 Email Disclaimer:
 The information contained in or attached to this email is confidential and
 solely for the use of the individual or entity to whom it is addressed.
 If you are not the intended recipient, please notify the sender immediately
 and delete any copies of this email.
 Any unauthorised disclosure, copying, distribution or any action taken in
 reliance on the contents of this information is strictly prohibited and may
 be unlawful.




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

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



RE: Struts 2 Performance

2009-01-24 Thread Matthew Seaborn
We are currently running on 2.0.11, have there been any performance 
improvements  in subsequent releases?

From: Matthew Seaborn
Sent: 24 January 2009 13:39
To: Struts Users Mailing List
Subject: Struts 2 Performance

What's the latest news on the Struts 2 rendering performance issues?  A browse 
through the issue log suggests that despite a number of releases it still 
hasn't been resolved.

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

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

The proposed solution appears to be an upgrade to OGNL 2.7 but this doesn't 
appear to be planned until 
v2.5.xhttps://issues.apache.org/struts/browse/WW-2128?focusedCommentId=44204#action_44204.


Matthew Seaborn
Software Architect
t+44(0) 208 484 0729
m  +44(0) 7949 465 142
e   matthew.seab...@performgroup.commailto:%3cyourname...@performgroup.com


[cid:image001.jpg@01C97E2A.080A2AA0]http://www.performgroup.com/
Sussex House
Plane Tree Crescent
London, TW13 7HE
United Kingdom
www.performgroup.comhttp://www.performgroup.com/



 [cid:image002.gif@01C97E2A.080A2AA0] http://www.omnisport.tv/ 
[cid:image003.gif@01C97E2A.080A2AA0] http://www.watchandbet.tv/






CONFIDENTIALITY - This email and any files transmitted with it, are 
confidential, may be legally privileged and are intended solely for the use of 
the individual or entity to whom they are addressed. If this has come to you in 
error, you must not copy, distribute, disclose or use any of the information it 
contains. Please notify the sender immediately and delete them from your system.

SECURITY - Please be aware that communication by email, by its very nature, is 
not 100% secure and by communicating with Perform Group by email you consent to 
us monitoring and reading any such correspondence.

VIRUSES - Although this email message has been scanned for the presence of 
computer viruses, the sender accepts no liability for any damage sustained as a 
result of a computer virus and it is the recipient’s responsibility to ensure 
that email is virus free.

AUTHORITY - Any views or opinions expressed in this email are solely those of 
the sender and do not necessarily represent those of Perform Group.

COPYRIGHT - Copyright of this email and any attachments belongs to Perform 
Group, Companies House Registration number 6324278.

Re: Struts 2 Performance

2008-06-09 Thread Richard Sayre
Thank you for the dojo info.  I did a custom build for dojo using
http://cwiki.apache.org/confluence/display/S2WIKI/Creating+a+custom+Dojo+profile+for+Struts+2.0.x
and it reduced alot of requests

I would like to turn off the page scan that dojo does and add the
bootstrap code for the widgits my self.  I'm not sure what to search
for to find information on this.  Can you point me to any articles or
documentation?

Thank you,

Rich


On Fri, May 30, 2008 at 5:05 PM, Laurie Harper [EMAIL PROTECTED] wrote:
 Richard Sayre wrote:

 Hi,

 I have a few questions regarding performance in Struts 2.

 First of all we are using 2.0.9.  I am trying to get the source to fix
 the following memory leaks :
 https://issues.apache.org/struts/browse/WW-2167 but I can't find the
 2.0.9 build.  Can anyone point me to the source for that build?

 http://svn.apache.org/repos/asf/struts/struts2/tags/STRUTS_2_0_9/

 We have several Struts 2 applications hosted on a Tomcat server.  We
 have a copy of our Struts libraries in each of the applications
 WEB-INF folder.  Is there a better way to have this set up to save
 memory?  I know this is more of a tomcat question but I figured some
 one here might have some suggestions.

 As Giovanni said, you can put the struts jars (and dependencies) into a
 shared lib folder. You don't need to introduce Tomcat instancing to do this,
 though. I should also point out that this isn't a tested configuration, so
 you will want to test thoroughly.

 Also, when I run Firebug to check the loading time of my page it seems
 that alot of time is spent downloading Dojo scripts.  I am only using
 the Ajax and the Tabbed Panel provided by dojo, nothing else.  Is
 there a way to configure dojo to only use what is nessessary?  I did
 see a post on this list a while ago that involved extracting the files
 and rewriting the dojo require file,  is this still the best way to
 increase dojo performance?

 Yes; you can improve the Dojo multiple-http-requests issue by creating a
 custom Dojo build, which will bundle everything you use into dojo.js. You
 will then see only one request (for dojo.js) in place of the multiple
 requests you have now. See the Dojo documentation for how to create a custom
 profile/build, or see below.

 I was also getting a script is busy - cancel or continue in IE and
 Firefox.  This was on a page that has a alot of HTML divs.  I finally
 narrowed it down to some dojo that was running that seemed to be
 looping through every element on the page after it loaded.  Does
 anyone have any insight into this behavior?  Why is it needed?

 By default, Dojo scans the entire page looking for widgets to instantiate
 (i.e. looking for tags with a dojoType attribute). For pages with a lot of
 markup, that can be quite costly. There's a Dojo configuration switch to
 turn that off, but then you need to add code to bootstrap the widgets.

 Does the latest version 2.0.11.1 use a different version of dojo?
 Does it perform better?  Would there be alot of code changes to change
 from 0.4 to the version that the current build uses?

 2.0.11.1 doesn't offer much improvement, but 2.1.2 (beta) does. 2.1.2 comes
 with a custom Dojo build pre-baked and with widget scanning turned off (it
 also handles the widget bootstrapping for you). It's certainly more work to
 upgrade to 2.1.2 than 2.0.11.1 but, given your concerns, it is probably
 worth it.

 L.


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



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



Re: Struts 2 Performance

2008-06-09 Thread Dave Newton
Doesn't s:head... have a parseContent attribute?

Either way, you may just be able to replicate the s:head... generated code 
with your own.

Dave

--- On Mon, 6/9/08, Richard Sayre [EMAIL PROTECTED] wrote:

 From: Richard Sayre [EMAIL PROTECTED]
 Subject: Re: Struts 2 Performance
 To: Struts Users Mailing List user@struts.apache.org
 Date: Monday, June 9, 2008, 10:53 AM
 Thank you for the dojo info.  I did a custom build for dojo
 using
 http://cwiki.apache.org/confluence/display/S2WIKI/Creating+a+custom+Dojo+profile+for+Struts+2.0.x
 and it reduced alot of requests
 
 I would like to turn off the page scan that dojo does and
 add the
 bootstrap code for the widgits my self.  I'm not sure
 what to search
 for to find information on this.  Can you point me to any
 articles or
 documentation?
 
 Thank you,
 
 Rich
 
 
 On Fri, May 30, 2008 at 5:05 PM, Laurie Harper
 [EMAIL PROTECTED] wrote:
  Richard Sayre wrote:
 
  Hi,
 
  I have a few questions regarding performance in
 Struts 2.
 
  First of all we are using 2.0.9.  I am trying to
 get the source to fix
  the following memory leaks :
  https://issues.apache.org/struts/browse/WW-2167
 but I can't find the
  2.0.9 build.  Can anyone point me to the source
 for that build?
 
 
 http://svn.apache.org/repos/asf/struts/struts2/tags/STRUTS_2_0_9/
 
  We have several Struts 2 applications hosted on a
 Tomcat server.  We
  have a copy of our Struts libraries in each of the
 applications
  WEB-INF folder.  Is there a better way to have
 this set up to save
  memory?  I know this is more of a tomcat question
 but I figured some
  one here might have some suggestions.
 
  As Giovanni said, you can put the struts jars (and
 dependencies) into a
  shared lib folder. You don't need to introduce
 Tomcat instancing to do this,
  though. I should also point out that this isn't a
 tested configuration, so
  you will want to test thoroughly.
 
  Also, when I run Firebug to check the loading time
 of my page it seems
  that alot of time is spent downloading Dojo
 scripts.  I am only using
  the Ajax and the Tabbed Panel provided by dojo,
 nothing else.  Is
  there a way to configure dojo to only use what is
 nessessary?  I did
  see a post on this list a while ago that involved
 extracting the files
  and rewriting the dojo require file,  is this
 still the best way to
  increase dojo performance?
 
  Yes; you can improve the Dojo multiple-http-requests
 issue by creating a
  custom Dojo build, which will bundle everything you
 use into dojo.js. You
  will then see only one request (for dojo.js) in place
 of the multiple
  requests you have now. See the Dojo documentation for
 how to create a custom
  profile/build, or see below.
 
  I was also getting a script is busy - cancel
 or continue in IE and
  Firefox.  This was on a page that has a alot of
 HTML divs.  I finally
  narrowed it down to some dojo that was running
 that seemed to be
  looping through every element on the page after it
 loaded.  Does
  anyone have any insight into this behavior?  Why
 is it needed?
 
  By default, Dojo scans the entire page looking for
 widgets to instantiate
  (i.e. looking for tags with a dojoType attribute). For
 pages with a lot of
  markup, that can be quite costly. There's a Dojo
 configuration switch to
  turn that off, but then you need to add code to
 bootstrap the widgets.
 
  Does the latest version 2.0.11.1 use a different
 version of dojo?
  Does it perform better?  Would there be alot of
 code changes to change
  from 0.4 to the version that the current build
 uses?
 
  2.0.11.1 doesn't offer much improvement, but 2.1.2
 (beta) does. 2.1.2 comes
  with a custom Dojo build pre-baked and with widget
 scanning turned off (it
  also handles the widget bootstrapping for you).
 It's certainly more work to
  upgrade to 2.1.2 than 2.0.11.1 but, given your
 concerns, it is probably
  worth it.
 
  L.
 
 
 
 -
  To unsubscribe, e-mail:
 [EMAIL PROTECTED]
  For additional commands, e-mail:
 [EMAIL PROTECTED]
 
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail:
 [EMAIL PROTECTED]

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



Re: Struts 2 Performance

2008-06-09 Thread Richard Sayre
After some searching I found:

http://lazutkin.com/blog/2007/feb/1/improving-performance/

Under ' Optimizing widget initialization' there is an explantion on
what to set (parseWidgets) and how to create them in code.

I realized I am using version 2.0.8 and me IDE says that parseContent
is not a valid attribute for the s:head.

What release was that attribure introduced?

Thank you,

Rich



On Mon, Jun 9, 2008 at 11:49 AM, Dave Newton [EMAIL PROTECTED] wrote:
 Doesn't s:head... have a parseContent attribute?

 Either way, you may just be able to replicate the s:head... generated code 
 with your own.

 Dave

 --- On Mon, 6/9/08, Richard Sayre [EMAIL PROTECTED] wrote:

 From: Richard Sayre [EMAIL PROTECTED]
 Subject: Re: Struts 2 Performance
 To: Struts Users Mailing List user@struts.apache.org
 Date: Monday, June 9, 2008, 10:53 AM
 Thank you for the dojo info.  I did a custom build for dojo
 using
 http://cwiki.apache.org/confluence/display/S2WIKI/Creating+a+custom+Dojo+profile+for+Struts+2.0.x
 and it reduced alot of requests

 I would like to turn off the page scan that dojo does and
 add the
 bootstrap code for the widgits my self.  I'm not sure
 what to search
 for to find information on this.  Can you point me to any
 articles or
 documentation?

 Thank you,

 Rich


 On Fri, May 30, 2008 at 5:05 PM, Laurie Harper
 [EMAIL PROTECTED] wrote:
  Richard Sayre wrote:
 
  Hi,
 
  I have a few questions regarding performance in
 Struts 2.
 
  First of all we are using 2.0.9.  I am trying to
 get the source to fix
  the following memory leaks :
  https://issues.apache.org/struts/browse/WW-2167
 but I can't find the
  2.0.9 build.  Can anyone point me to the source
 for that build?
 
 
 http://svn.apache.org/repos/asf/struts/struts2/tags/STRUTS_2_0_9/
 
  We have several Struts 2 applications hosted on a
 Tomcat server.  We
  have a copy of our Struts libraries in each of the
 applications
  WEB-INF folder.  Is there a better way to have
 this set up to save
  memory?  I know this is more of a tomcat question
 but I figured some
  one here might have some suggestions.
 
  As Giovanni said, you can put the struts jars (and
 dependencies) into a
  shared lib folder. You don't need to introduce
 Tomcat instancing to do this,
  though. I should also point out that this isn't a
 tested configuration, so
  you will want to test thoroughly.
 
  Also, when I run Firebug to check the loading time
 of my page it seems
  that alot of time is spent downloading Dojo
 scripts.  I am only using
  the Ajax and the Tabbed Panel provided by dojo,
 nothing else.  Is
  there a way to configure dojo to only use what is
 nessessary?  I did
  see a post on this list a while ago that involved
 extracting the files
  and rewriting the dojo require file,  is this
 still the best way to
  increase dojo performance?
 
  Yes; you can improve the Dojo multiple-http-requests
 issue by creating a
  custom Dojo build, which will bundle everything you
 use into dojo.js. You
  will then see only one request (for dojo.js) in place
 of the multiple
  requests you have now. See the Dojo documentation for
 how to create a custom
  profile/build, or see below.
 
  I was also getting a script is busy - cancel
 or continue in IE and
  Firefox.  This was on a page that has a alot of
 HTML divs.  I finally
  narrowed it down to some dojo that was running
 that seemed to be
  looping through every element on the page after it
 loaded.  Does
  anyone have any insight into this behavior?  Why
 is it needed?
 
  By default, Dojo scans the entire page looking for
 widgets to instantiate
  (i.e. looking for tags with a dojoType attribute). For
 pages with a lot of
  markup, that can be quite costly. There's a Dojo
 configuration switch to
  turn that off, but then you need to add code to
 bootstrap the widgets.
 
  Does the latest version 2.0.11.1 use a different
 version of dojo?
  Does it perform better?  Would there be alot of
 code changes to change
  from 0.4 to the version that the current build
 uses?
 
  2.0.11.1 doesn't offer much improvement, but 2.1.2
 (beta) does. 2.1.2 comes
  with a custom Dojo build pre-baked and with widget
 scanning turned off (it
  also handles the widget bootstrapping for you).
 It's certainly more work to
  upgrade to 2.1.2 than 2.0.11.1 but, given your
 concerns, it is probably
  worth it.
 
  L.
 
 
 
 -
  To unsubscribe, e-mail:
 [EMAIL PROTECTED]
  For additional commands, e-mail:
 [EMAIL PROTECTED]
 
 

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

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



-
To unsubscribe, e-mail: [EMAIL PROTECTED

Re: Struts 2 Performance

2008-06-09 Thread Dave Newton
Oh; that might be S2.1--sorry!

Dave


--- On Mon, 6/9/08, Richard Sayre [EMAIL PROTECTED] wrote:

 From: Richard Sayre [EMAIL PROTECTED]
 Subject: Re: Struts 2 Performance
 To: Struts Users Mailing List user@struts.apache.org, [EMAIL PROTECTED]
 Date: Monday, June 9, 2008, 12:09 PM
 After some searching I found:
 
 http://lazutkin.com/blog/2007/feb/1/improving-performance/
 
 Under ' Optimizing widget initialization' there is
 an explantion on
 what to set (parseWidgets) and how to create them in code.
 
 I realized I am using version 2.0.8 and me IDE says that
 parseContent
 is not a valid attribute for the s:head.
 
 What release was that attribure introduced?
 
 Thank you,
 
 Rich
 
 
 
 On Mon, Jun 9, 2008 at 11:49 AM, Dave Newton
 [EMAIL PROTECTED] wrote:
  Doesn't s:head... have a parseContent
 attribute?
 
  Either way, you may just be able to replicate the
 s:head... generated code with your own.
 
  Dave
 
  --- On Mon, 6/9/08, Richard Sayre
 [EMAIL PROTECTED] wrote:
 
  From: Richard Sayre [EMAIL PROTECTED]
  Subject: Re: Struts 2 Performance
  To: Struts Users Mailing List
 user@struts.apache.org
  Date: Monday, June 9, 2008, 10:53 AM
  Thank you for the dojo info.  I did a custom build
 for dojo
  using
 
 http://cwiki.apache.org/confluence/display/S2WIKI/Creating+a+custom+Dojo+profile+for+Struts+2.0.x
  and it reduced alot of requests
 
  I would like to turn off the page scan that dojo
 does and
  add the
  bootstrap code for the widgits my self.  I'm
 not sure
  what to search
  for to find information on this.  Can you point me
 to any
  articles or
  documentation?
 
  Thank you,
 
  Rich
 
 
  On Fri, May 30, 2008 at 5:05 PM, Laurie Harper
  [EMAIL PROTECTED] wrote:
   Richard Sayre wrote:
  
   Hi,
  
   I have a few questions regarding
 performance in
  Struts 2.
  
   First of all we are using 2.0.9.  I am
 trying to
  get the source to fix
   the following memory leaks :
  
 https://issues.apache.org/struts/browse/WW-2167
  but I can't find the
   2.0.9 build.  Can anyone point me to the
 source
  for that build?
  
  
 
 http://svn.apache.org/repos/asf/struts/struts2/tags/STRUTS_2_0_9/
  
   We have several Struts 2 applications
 hosted on a
  Tomcat server.  We
   have a copy of our Struts libraries in
 each of the
  applications
   WEB-INF folder.  Is there a better way to
 have
  this set up to save
   memory?  I know this is more of a tomcat
 question
  but I figured some
   one here might have some suggestions.
  
   As Giovanni said, you can put the struts jars
 (and
  dependencies) into a
   shared lib folder. You don't need to
 introduce
  Tomcat instancing to do this,
   though. I should also point out that this
 isn't a
  tested configuration, so
   you will want to test thoroughly.
  
   Also, when I run Firebug to check the
 loading time
  of my page it seems
   that alot of time is spent downloading
 Dojo
  scripts.  I am only using
   the Ajax and the Tabbed Panel provided by
 dojo,
  nothing else.  Is
   there a way to configure dojo to only use
 what is
  nessessary?  I did
   see a post on this list a while ago that
 involved
  extracting the files
   and rewriting the dojo require file,  is
 this
  still the best way to
   increase dojo performance?
  
   Yes; you can improve the Dojo
 multiple-http-requests
  issue by creating a
   custom Dojo build, which will bundle
 everything you
  use into dojo.js. You
   will then see only one request (for dojo.js)
 in place
  of the multiple
   requests you have now. See the Dojo
 documentation for
  how to create a custom
   profile/build, or see below.
  
   I was also getting a script is busy
 - cancel
  or continue in IE and
   Firefox.  This was on a page that has a
 alot of
  HTML divs.  I finally
   narrowed it down to some dojo that was
 running
  that seemed to be
   looping through every element on the page
 after it
  loaded.  Does
   anyone have any insight into this
 behavior?  Why
  is it needed?
  
   By default, Dojo scans the entire page
 looking for
  widgets to instantiate
   (i.e. looking for tags with a dojoType
 attribute). For
  pages with a lot of
   markup, that can be quite costly. There's
 a Dojo
  configuration switch to
   turn that off, but then you need to add code
 to
  bootstrap the widgets.
  
   Does the latest version 2.0.11.1 use a
 different
  version of dojo?
   Does it perform better?  Would there be
 alot of
  code changes to change
   from 0.4 to the version that the current
 build
  uses?
  
   2.0.11.1 doesn't offer much improvement,
 but 2.1.2
  (beta) does. 2.1.2 comes
   with a custom Dojo build pre-baked and with
 widget
  scanning turned off (it
   also handles the widget bootstrapping for
 you).
  It's certainly more work to
   upgrade to 2.1.2 than 2.0.11.1 but, given
 your
  concerns, it is probably
   worth it.
  
   L.
  
  
  
 
 -
   To unsubscribe, e-mail:
  [EMAIL PROTECTED]
   For additional

Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-24 Thread Roberto Nunnari

I see it also includes Tiles 2.0.4.. that should also include
the fix for the contentType of the response not set bug present
in version 2.0.3


--
Robi


Ted Husted wrote:

For those of you following this thread, a test build for Struts 2.0.9
is available. Unless a problem is found, we expect to upgrade the
quality to a GA release by tomorrow evening, once the distribution has
had time to propagate through the mirroring network. Another quick-fix
to the OGNL expression issue is to replace a prior version of XWork2
with XWork 2.0.4.

* http://www.opensymphony.com/xwork/download.action

-- Forwarded message --
From: Ted Husted [EMAIL PROTECTED]
Date: Jul 23, 2007 4:31 PM
Subject: Re: Struts 2.0.9 release (was Re: S2 security fix release
planning (XWork 2.0.4 is out))
To: Struts Developers List [EMAIL PROTECTED]


The test build of Struts 2.0.9 is available.

   Release notes:

   * http://struts.apache.org/2.x/docs/release-notes-209.html

   Distribution:

   * http://people.apache.org/builds/struts/2.0.9/

   Maven 2 staging repository:

   * 
http://people.apache.org/builds/struts/2.0.9/m2-staging-repository/


We appreciate the time and effort everyone has put toward contributing
code and documentation, posting to the mailing lists, and logging
issues.

Once you have had a chance to review the test build, please respond
with a vote on its quality:

   [ ] Leave at test build
   [ ] Alpha
   [ ] Beta
   [ ] General Availability (GA)

Everyone who has tested the build is invited to vote. Votes by PMC
members are considered binding. A vote passes if there are at least
three binding +1s and more +1s than -1s.

 PLEASE NOTE 

In the interest of time, I would like to declare a quality grade on
Struts 2.0.9 AS SOON AS we have received three binding votes toward
one of the grades, and NOT WAIT the usual 72 hours!

If not voting GA, please also be specific as to your concerns, so that
we can address any issues immediately!

Remember, a vote can be amended at any time to upgrade or downgrade
the quality of the release based on future experience. If an initial
vote designates the build as Beta, the release will be submitted for
mirroring and announced to the user list. Once released as a public
beta, subsequent quality votes on a build may be held on the user
list.

As always, the act of voting carries certain obligations. A binding
vote not only states an opinion, but means that the voter is agreeing
to help do the work

-Ted.

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



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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-24 Thread Antonio Petrelli

2007/7/24, Roberto Nunnari [EMAIL PROTECTED]:


I see it also includes Tiles 2.0.4.. that should also include
the fix for the contentType of the response not set bug present
in version 2.0.3




Yep! Confirmed :-)

Antonio


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-23 Thread Ted Husted

For those of you following this thread, a test build for Struts 2.0.9
is available. Unless a problem is found, we expect to upgrade the
quality to a GA release by tomorrow evening, once the distribution has
had time to propagate through the mirroring network. Another quick-fix
to the OGNL expression issue is to replace a prior version of XWork2
with XWork 2.0.4.

* http://www.opensymphony.com/xwork/download.action

-- Forwarded message --
From: Ted Husted [EMAIL PROTECTED]
Date: Jul 23, 2007 4:31 PM
Subject: Re: Struts 2.0.9 release (was Re: S2 security fix release
planning (XWork 2.0.4 is out))
To: Struts Developers List [EMAIL PROTECTED]


The test build of Struts 2.0.9 is available.

   Release notes:

   * http://struts.apache.org/2.x/docs/release-notes-209.html

   Distribution:

   * http://people.apache.org/builds/struts/2.0.9/

   Maven 2 staging repository:

   * http://people.apache.org/builds/struts/2.0.9/m2-staging-repository/

We appreciate the time and effort everyone has put toward contributing
code and documentation, posting to the mailing lists, and logging
issues.

Once you have had a chance to review the test build, please respond
with a vote on its quality:

   [ ] Leave at test build
   [ ] Alpha
   [ ] Beta
   [ ] General Availability (GA)

Everyone who has tested the build is invited to vote. Votes by PMC
members are considered binding. A vote passes if there are at least
three binding +1s and more +1s than -1s.

 PLEASE NOTE 

In the interest of time, I would like to declare a quality grade on
Struts 2.0.9 AS SOON AS we have received three binding votes toward
one of the grades, and NOT WAIT the usual 72 hours!

If not voting GA, please also be specific as to your concerns, so that
we can address any issues immediately!

Remember, a vote can be amended at any time to upgrade or downgrade
the quality of the release based on future experience. If an initial
vote designates the build as Beta, the release will be submitted for
mirroring and announced to the user list. Once released as a public
beta, subsequent quality votes on a build may be held on the user
list.

As always, the act of voting carries certain obligations. A binding
vote not only states an opinion, but means that the voter is agreeing
to help do the work

-Ted.

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



Re: Struts 2 performance

2007-07-16 Thread Toni Lyytikäinen

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 [EMAIL PROTECTED] wrote:


Maybe it's new just for me, but I found out one of the main reasons of the
problem

try to submit [EMAIL PROTECTED]@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: [EMAIL PROTECTED]



RE: Struts 2 performance

2007-07-16 Thread Sullivan, David
Tried this in a webwork app which is internal and it has the same problem. Shut 
down the server. 


David Sullivan - [EMAIL PROTECTED]
Senior Java Developer
ITSA - Insolvency and Trustee Services Australia
(w) 6270 3436
(m) 0402 309 488

-Original Message-
From: Toni Lyytikäinen [mailto:[EMAIL PROTECTED] 
Sent: Monday, 16 July 2007 4:10 PM
To: Struts Users Mailing List
Subject: Re: Struts 2 performance

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 [EMAIL PROTECTED] wrote:

 Maybe it's new just for me, but I found out one of the main reasons of 
 the problem

 try to submit [EMAIL PROTECTED]@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: [EMAIL PROTECTED]


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



Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Don Brown

If your application is displaying user input without checking for
malicious code, you have a problem whether Struts 2 evaluations ognl
expressions or not.This is how the majority of Cross-Site
Scripting (XSS) [1] attacks work, tricking the user into visiting a
page that the attacker has placed JavaScript that steals their
cookies.

That said, the average Struts developer may not be aware of how OGNL
is being used here, so we should do something to better protect the
application.

I'm taking this discussion over to the dev@ list.

Don

[1] http://en.wikipedia.org/wiki/Cross-site_scripting

On 7/16/07, Aram Mkhitaryan [EMAIL PROTECTED] wrote:

Maybe it's new just for me, but I found out one of the main reasons of the
problem

try to submit [EMAIL PROTECTED]@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: [EMAIL PROTECTED]



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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Jeromy Evans
Is there a policy or person in the struts2, webwork or apache team with 
a PR role that's going to announce the vulnerability? 

I'm obliged to keep my clients informed and I'd rather point them to a 
factual article announced by the community than to a misinformed post 
that will undoubtedly soon appear on theserverside.com, slashdot or a 
vulnerability site.


Don Brown wrote:

If your application is displaying user input without checking for
malicious code, you have a problem whether Struts 2 evaluations ognl
expressions or not.This is how the majority of Cross-Site
Scripting (XSS) [1] attacks work, tricking the user into visiting a
page that the attacker has placed JavaScript that steals their
cookies.

That said, the average Struts developer may not be aware of how OGNL
is being used here, so we should do something to better protect the
application.

I'm taking this discussion over to the dev@ list.

Don

[1] http://en.wikipedia.org/wiki/Cross-site_scripting

On 7/16/07, Aram Mkhitaryan [EMAIL PROTECTED] wrote:
Maybe it's new just for me, but I found out one of the main reasons 
of the

problem

try to submit [EMAIL PROTECTED]@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: [EMAIL PROTECTED]



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







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



Re: Struts 2 performance

2007-07-16 Thread Aram Mkhitaryan

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: [EMAIL PROTECTED]


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Aram Mkhitaryan

Should someone create a ticket in jira?

I guess it is really a huge problem.

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Antonio Petrelli

2007/7/16, Aram Mkhitaryan [EMAIL PROTECTED]:


Should someone create a ticket in jira?




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

Antonio


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Ing. Andrea Vettori

It's already known and a patch already exists.

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


Don't know when a patched version will be released.


Il giorno 16/lug/07, alle ore 10:29, Aram Mkhitaryan ha scritto:


Should someone create a ticket in jira?

I guess it is really a huge problem.

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


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



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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Antonio Petrelli

2007/7/16, Ing. Andrea Vettori [EMAIL PROTECTED]:


It's already known and a patch already exists.




Well, in fact the patch does not prevent execution of OGNL commands, but
disallow entering possible malicious code, i.e. expression like %{xxx} is
illegal: instead it should be evaluated as the string %{xxx}.

Antonio


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Aram Mkhitaryan

Sorry guys for spamming, but it is not clear what the patch exactly
resolves.


disallow entering possible malicious code, i.e. expression like %{xxx} is
illegal: instead it should be evaluated as the string %{xxx}.

what means the first is illegal, but should be evaluated as the string
could you please bring an example with s:property tag?

Best,
Aram

P.S. do you have a guide about how to apply patches?

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Ing. Andrea Vettori
The patch works the only problem is if you need to accept %{xxx} as  
legal input from your users.


To apply the patch you need to download xwork sources, apply the  
patch (with the patch command or manually if you don't have it since  
there are few lines of code) and insert a couple of lines on  
struts.xml. Recompile xwork and

use that jar instead of the jar distributed with struts.


Il giorno 16/lug/07, alle ore 10:44, Aram Mkhitaryan ha scritto:


Sorry guys for spamming, but it is not clear what the patch exactly
resolves.

disallow entering possible malicious code, i.e. expression like % 
{xxx} is

illegal: instead it should be evaluated as the string %{xxx}.

what means the first is illegal, but should be evaluated as the string
could you please bring an example with s:property tag?

Best,
Aram

P.S. do you have a guide about how to apply patches?

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


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



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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Aram Mkhitaryan

Actually that patch is not a solution, definitely.

The solution could be:
disable evaluation by default,
add a hint to enable evaluation.

for example
old---s:property value=%{amount} /
solution--- s:property value=eval/%{amount} 

i suggest this solution since
s:property value=%{amount} /
and
s:property value=amount /
should output the same. am I wrong?
also because for the most of the cases just attribute values should be
printed and not evaluated the content
(note: the initial problem was the s2 performance)

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Antonio Petrelli

2007/7/16, Aram Mkhitaryan [EMAIL PROTECTED]:


i suggest this solution since
s:property value=%{amount} /
and
s:property value=amount /
should output the same. am I wrong?




Definitely yes, I suggest you to learn the basics of OGNL :-)
And anyway, in JSP pages OGNL is ok: it is when user's inputs are used as
OGNL expressions that is wrong!.

Antonio


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Aram Mkhitaryan

Thanks for the response,

so if I type in my text input %{..System.exit(0);} it will not shut my
server down,
but what will happen?
will I get errors or just the text will not be evaluated?

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Ing. Andrea Vettori
Take a look at the jira issue, it's something I suggested too. We  
should disable by default evaluation of expressions when they are an  
input from the user (i.e. parameters to an action) and enable by  
default expression when specified as parameters to tags.



Il giorno 16/lug/07, alle ore 11:29, Aram Mkhitaryan ha scritto:


Actually that patch is not a solution, definitely.

The solution could be:
disable evaluation by default,
add a hint to enable evaluation.

for example
old---s:property value=%{amount} /
solution--- s:property value=eval/%{amount} 

i suggest this solution since
s:property value=%{amount} /
and
s:property value=amount /
should output the same. am I wrong?
also because for the most of the cases just attribute values should be
printed and not evaluated the content
(note: the initial problem was the s2 performance)

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


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



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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Ing. Andrea Vettori

The parameter is removed so it's like your input an empty string.

Il giorno 16/lug/07, alle ore 11:36, Aram Mkhitaryan ha scritto:


Thanks for the response,

so if I type in my text input %{..System.exit(0);} it will not shut my
server down,
but what will happen?
will I get errors or just the text will not be evaluated?

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


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



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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Aram Mkhitaryan

So the patch disables only evaluation of user submitted text,
but if I write expression in tags, that will work fine as before?

If this is true,
I think this is a good solution.

Sorry that I'm asking the same again, but this is the fastest way to know
the truth
so currently (without patches),
s:property value=propName /  just prints the propName property,  but
s:property value=%{propName} / evaluates the expression in %{} and if
propName=amout, it prints the amout property?

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Ing. Andrea Vettori


Sorry that I'm asking the same again, but this is the fastest way  
to know

the truth
so currently (without patches),
s:property value=propName /  just prints the propName  
property,  but
s:property value=%{propName} / evaluates the expression in %{}  
and if

propName=amout, it prints the amout property?



No, s:property value=%{propName}”/ should be equivalent to  
s:property value=propName/.


I think You'll get the second behaviour with s:property value=%{% 
{propName}}/





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



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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Antonio Petrelli

2007/7/16, Ing. Andrea Vettori [EMAIL PROTECTED]:


 so currently (without patches),
 s:property value=propName /  just prints the propName
 property,  but
 s:property value=%{propName} / evaluates the expression in %{}
 and if
 propName=amout, it prints the amout property?


No, s:property value=%{propName}/ should be equivalent to
s:property value=propName/.





Mmm I think that I (me, myself) have to learn the basics of OGNL :-)

Sorry
Antonio


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Aram Mkhitaryan

I think we both have to find out,
even better, to test which form works and does what ...

Thanks,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Antonio Petrelli

2007/7/16, Ing. Andrea Vettori [EMAIL PROTECTED]:

No, s:property value=%{propName}/ should be equivalent to
s:property value=propName/.


If it is true, then if you have a field named password and the user
types password then it is evaluated as %{password}, so you have an
infinite loop.
Andrea, this could be the cause of your memory leak. Or maybe I missed
something :-)

Antonio

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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Don Brown

I'm glad to see so many people joining the discussion, but let's
please take this to the dev list.  There are a lot of Struts
committers and contributors that don't read this user list.  So
please, no more messages on this thread for this list.

Don

On 7/16/07, Don Brown [EMAIL PROTECTED] wrote:

If your application is displaying user input without checking for
malicious code, you have a problem whether Struts 2 evaluations ognl
expressions or not.This is how the majority of Cross-Site
Scripting (XSS) [1] attacks work, tricking the user into visiting a
page that the attacker has placed JavaScript that steals their
cookies.

That said, the average Struts developer may not be aware of how OGNL
is being used here, so we should do something to better protect the
application.

I'm taking this discussion over to the dev@ list.

Don

[1] http://en.wikipedia.org/wiki/Cross-site_scripting

On 7/16/07, Aram Mkhitaryan [EMAIL PROTECTED] wrote:
 Maybe it's new just for me, but I found out one of the main reasons of the
 problem

 try to submit [EMAIL PROTECTED]@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: [EMAIL PROTECTED]




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



Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Aram Mkhitaryan

Don, could you please send the subject to continue the discussion in?
Should we use [EMAIL PROTECTED]

Thanks,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Preventing OGNL evaluations of user input (was Re: Struts 2 performance)

2007-07-16 Thread Don Brown

I have replied in dev@ so please post over there.  Thanks,

Don

On 7/16/07, Aram Mkhitaryan [EMAIL PROTECTED] wrote:

Don, could you please send the subject to continue the discussion in?
Should we use [EMAIL PROTECTED]

Thanks,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]



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



Re: Struts 2 performance

2007-07-16 Thread Musachy Barroso

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

musachy

On 7/16/07, Aram Mkhitaryan [EMAIL PROTECTED] 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: [EMAIL PROTECTED]





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


Re: Struts 2 performance

2007-07-15 Thread Aram Mkhitaryan

Maybe it's new just for me, but I found out one of the main reasons of the
problem

try to submit [EMAIL PROTECTED]@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: [EMAIL PROTECTED]


Re: Struts 2 performance

2007-07-14 Thread Jessek

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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-13 Thread Ted Husted

On 7/13/07, Aram Mkhitaryan [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread Ted Husted

* http://struts.apache.org/helping.html

On 7/12/07, Don Brown [EMAIL PROTECTED] wrote:

Ted wrote up a good doc somewhere on the website, but the summary is
join the dev list, participate in discussions, file jira tickets with
patches that include unit tests.

Don


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



RE: Struts 2 performance

2007-07-12 Thread Al Sutton
Try using a some dummy beans for your MP3 test that return known data, that
way you can get a good idea of the impact your database has on the response
time. I suspect you'll find that your DB is causing a lot of the delay in
the short ramp up test.

-Original Message-
From: Ing. Andrea Vettori [mailto:[EMAIL PROTECTED] 
Sent: 12 July 2007 11:30
To: Struts Users Mailing List
Subject: Re: Struts 2 performance


I've done some measurements with jmeter on my e-commerce site built on 
struts2 and ejb3.

1 user (testing)
===
Home page, http://www.elettrotop.com/ElettroTop/Home.action
average response time : 63 msec


MP3s list, 
http://www.elettrotop.com//ElettroTop/RicercaArticoliAlbero.action?path=AUDP
ERMP3
average response time : 360 msec



100 users, ramp-up 200 seconds (average load)
 Home page,
http://www.elettrotop.com/ElettroTop/Home.action
average response time : 72 msec


MP3s list, 
http://www.elettrotop.com//ElettroTop/RicercaArticoliAlbero.action?path=AUDP
ERMP3
average response time : 378 msec



100 users, ramp-up 10 seconds (high-load) ==

Home page, http://www.elettrotop.com/ElettroTop/Home.action
average response time : 59 msec
throughput: 597 / minute


MP3s list, 
http://www.elettrotop.com//ElettroTop/RicercaArticoliAlbero.action?path=AUDP
ERMP3
average response time : 2,7 seconds
throughput: 261 / minute


The home page is moderately complex but it uses almost all cached data. The
MP3s list loads from the db about 270 product records and shows the 
first 10.
Most views component are produced using jsp custom tags so OGNL is used 
only on the back-end by struts itself and not by jsp pages.
The site is using the simple theme.


Any considerations on the numbers ?


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


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



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



Re: Struts 2 performance

2007-07-12 Thread Ing. Andrea Vettori

Yes i'm sure it's true.

So the struts related performance seems not too bad...

Il giorno 12/lug/07, alle ore 14:02, Al Sutton ha scritto:

Try using a some dummy beans for your MP3 test that return known  
data, that
way you can get a good idea of the impact your database has on the  
response
time. I suspect you'll find that your DB is causing a lot of the  
delay in

the short ramp up test.

-Original Message-
From: Ing. Andrea Vettori [mailto:[EMAIL PROTECTED]
Sent: 12 July 2007 11:30
To: Struts Users Mailing List
Subject: Re: Struts 2 performance


I've done some measurements with jmeter on my e-commerce site built on
struts2 and ejb3.

1 user (testing)
===
Home page, http://www.elettrotop.com/ElettroTop/Home.action
average response time : 63 msec


MP3s list,
http://www.elettrotop.com//ElettroTop/RicercaArticoliAlbero.action? 
path=AUDP

ERMP3
average response time : 360 msec



100 users, ramp-up 200 seconds (average load)
 Home page,
http://www.elettrotop.com/ElettroTop/Home.action
average response time : 72 msec


MP3s list,
http://www.elettrotop.com//ElettroTop/RicercaArticoliAlbero.action? 
path=AUDP

ERMP3
average response time : 378 msec



100 users, ramp-up 10 seconds (high-load)  
==


Home page, http://www.elettrotop.com/ElettroTop/Home.action
average response time : 59 msec
throughput: 597 / minute


MP3s list,
http://www.elettrotop.com//ElettroTop/RicercaArticoliAlbero.action? 
path=AUDP

ERMP3
average response time : 2,7 seconds
throughput: 261 / minute


The home page is moderately complex but it uses almost all cached  
data. The

MP3s list loads from the db about 270 product records and shows the
first 10.
Most views component are produced using jsp custom tags so OGNL is  
used

only on the back-end by struts itself and not by jsp pages.
The site is using the simple theme.


Any considerations on the numbers ?


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


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



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



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



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



Re: Struts 2 performance

2007-07-12 Thread Guillaume Carré

2007/7/12, Ing. Andrea Vettori [EMAIL PROTECTED]:

Yes i'm sure it's true.

So the struts related performance seems not too bad...


compared to what?
--
Guillaume Carré

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



Re: Struts 2 performance

2007-07-12 Thread Ing. Andrea Vettori



2007/7/12, Ing. Andrea Vettori [EMAIL PROTECTED]:

Yes i'm sure it's true.

So the struts related performance seems not too bad...


compared to what?



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 :)

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 ?


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



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



Re: Struts 2 performance

2007-07-12 Thread Ted Husted

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.

On 7/12/07, Ing. Andrea Vettori [EMAIL PROTECTED] wrote:

 2007/7/12, Ing. Andrea Vettori [EMAIL PROTECTED]:
 Yes i'm sure it's true.
 So the struts related performance seems not too bad...
 compared to what?

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 :)

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 ?


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



Re: Struts 2 performance

2007-07-12 Thread Guillaume Carré

2007/7/12, Ing. Andrea Vettori [EMAIL PROTECTED]:

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


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?
--
Guillaume Carré

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



Re: Struts 2 performance

2007-07-12 Thread Ing. Andrea Vettori


Il giorno 12/lug/07, alle ore 16:31, Guillaume Carré ha scritto:


2007/7/12, Ing. Andrea Vettori [EMAIL PROTECTED]:

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


 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread Frank W. Zammetti

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: [EMAIL PROTECTED]
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 [EMAIL PROTECTED]:

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


 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread James Holmes
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


On Thu Jul 12 15:22 , 'Frank W. Zammetti' [EMAIL PROTECTED] sent:

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: [EMAIL PROTECTED]
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 [EMAIL PROTECTED]:
 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
 
  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: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 
 
 
 --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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




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



Re: Struts 2 performance

2007-07-12 Thread Ted Husted

Are we targeting 1.6 now, or is the S2 target platform still 1.5?

-T.

On 7/12/07, James Holmes [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread James Holmes
My only point was that the S1 and S2 apps should be compiled using the same
version of Java. I didn't mean to imply any version that S2 should support. I
guess in a perfect world the test should be compiled with 1.5 since that is what
S2 supports.

James


On Thu Jul 12 15:34 , Ted Husted  sent:

Are we targeting 1.6 now, or is the S2 target platform still 1.5?

-T.

On 7/12/07, James Holmes [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread Frank W. Zammetti
The build scripts and full source are of course included, so by all 
means feel free to recompile and rerun... I'm getting into something 
else at the moment otherwise I'd do it right now because I'd be very 
interested in seeing if the results converge a bit (I wouldn't expect 
them to diverge, that's for sure!).


Frank

James Holmes wrote:

My only point was that the S1 and S2 apps should be compiled using the same
version of Java. I didn't mean to imply any version that S2 should support. I
guess in a perfect world the test should be compiled with 1.5 since that is what
S2 supports.

James


On Thu Jul 12 15:34 , Ted Husted  sent:


Are we targeting 1.6 now, or is the S2 target platform still 1.5?

-T.

On 7/12/07, James Holmes [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]







--
--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM/Yahoo: fzammetti
MSN: [EMAIL PROTECTED]
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread cilquirm

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: [EMAIL PROTECTED]
 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 [EMAIL PROTECTED]:
 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
 
  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: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 
 
 
 --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: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 

-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread cilquirm

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 [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 

-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread Frank W. Zammetti

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: [EMAIL PROTECTED]
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 [EMAIL PROTECTED]:

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

 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 

Re: Struts 2 performance

2007-07-12 Thread Ted Husted

On 7/12/07, Frank W. Zammetti [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Struts 2 performance

2007-07-12 Thread David Chisholm

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:[EMAIL PROTECTED] 
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 [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
  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

Re: Struts 2 performance

2007-07-12 Thread Don Brown

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 [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
 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 [EMAIL PROTECTED]:
 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 

Re: Struts 2 performance

2007-07-12 Thread Frank W. Zammetti

Ted Husted wrote:

On 7/12/07, Frank W. Zammetti [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]







--
--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM/Yahoo: fzammetti
MSN: [EMAIL PROTECTED]
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-12 Thread James Holmes
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 [EMAIL PROTECTED]

Date: Thu, 12 Jul 2007 17:10:17 
To:Struts Users Mailing List user@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: [EMAIL PROTECTED]
 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 [EMAIL PROTECTED]:
 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
  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

Re: Struts 2 performance

2007-07-12 Thread Frank W. Zammetti
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 [EMAIL PROTECTED]

Date: Thu, 12 Jul 2007 17:10:17 
To:Struts Users Mailing List user@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: [EMAIL PROTECTED]
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 [EMAIL PROTECTED]:

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

 I can't do that... simply don't have the time... :)



In the high load test, after 10 seconds you have about 90 users

Re: Struts 2 performance

2007-07-12 Thread Musachy Barroso

Doesn't xwork cache the expressions compiled?

musachy

On 7/12/07, James Holmes [EMAIL PROTECTED] 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 [EMAIL PROTECTED]

Date: Thu, 12 Jul 2007 17:10:17
To:Struts Users Mailing List user@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: [EMAIL PROTECTED]
 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 [EMAIL PROTECTED]:
 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
  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

Re: Struts 2 performance

2007-07-12 Thread Aram Mkhitaryan

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: [EMAIL PROTECTED]


Re: Struts 2 performance

2007-07-12 Thread Aram Mkhitaryan

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: [EMAIL PROTECTED]


Re: Struts 2 performance

2007-07-11 Thread Toni Lyytikäinen

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

2007-07-11 Thread Don Brown

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 [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-11 Thread Aram Mkhitaryan

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: [EMAIL PROTECTED]


Re: Struts 2 performance

2007-07-11 Thread Aram Mkhitaryan

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: [EMAIL PROTECTED]


Re: Struts 2 performance

2007-07-11 Thread Leon Rosenberg

On 7/11/07, Aram Mkhitaryan [EMAIL PROTECTED] 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: [EMAIL PROTECTED]



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



Re: Struts 2 performance

2007-07-11 Thread Aram Mkhitaryan

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

2007-07-11 Thread Dale Newfield

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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-11 Thread Don Brown

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 [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




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



Re: Struts 2 performance

2007-07-11 Thread Ted Husted

On 7/11/07, Aram Mkhitaryan [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-11 Thread Musachy Barroso

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 [EMAIL PROTECTED] wrote:


On 7/11/07, Aram Mkhitaryan [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





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


Re: Struts 2 performance

2007-07-11 Thread Ing. Andrea Vettori
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-11 Thread Guillaume Carré

2007/7/11, Musachy Barroso [EMAIL PROTECTED]:

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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-11 Thread James Holmes
It's not a simple JAR drop. The core XWork and Struts 2 libraries have to be
updated to compile expressions. This will take some work, but I believe it is
badly needed. I'm up for helping to do this work, but don't have much experience
with the OGNL code. I also don't have commit access to the XWork code.

What's the process for getting commit access to XWork for Struts committers?

James


On Wed Jul 11  9:39 , 'Guillaume Carré' [EMAIL PROTECTED] sent:

2007/7/11, Musachy Barroso [EMAIL PROTECTED]:
 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




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



Re: Struts 2 performance

2007-07-11 Thread Ted Husted

On 7/11/07, Guillaume Carré [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-11 Thread Leon Rosenberg

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 [EMAIL PROTECTED] 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 [EMAIL PROTECTED] wrote:

 On 7/11/07, Aram Mkhitaryan [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




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



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



Re: Struts 2 performance

2007-07-11 Thread Ing. Andrea Vettori
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 [EMAIL PROTECTED] 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 [EMAIL PROTECTED] wrote:

 On 7/11/07, Aram Mkhitaryan [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




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



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



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



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



Re: Struts 2 performance

2007-07-11 Thread Ted Husted

On 7/11/07, Leon Rosenberg [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-11 Thread Musachy Barroso

Struts tests pass with OGNL 2.7

musachy

On 7/11/07, James Holmes [EMAIL PROTECTED] wrote:


It's not a simple JAR drop. The core XWork and Struts 2 libraries have to
be
updated to compile expressions. This will take some work, but I believe it
is
badly needed. I'm up for helping to do this work, but don't have much
experience
with the OGNL code. I also don't have commit access to the XWork code.

What's the process for getting commit access to XWork for Struts
committers?

James


On Wed Jul 11  9:39 , 'Guillaume Carré' [EMAIL PROTECTED] sent:

2007/7/11, Musachy Barroso [EMAIL PROTECTED]:
 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




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





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


Re: Struts 2 performance

2007-07-11 Thread David Durham, Jr.

On 7/11/07, Ing. Andrea Vettori [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-11 Thread Martin Gilday
I have dropped 2.7 into a WW app which has been live for the past week
with zero (new) errors.  However, as has been stated, it needs to be
reworked to get the speed improvments.


- Original message -
From: Musachy Barroso [EMAIL PROTECTED]
To: Struts Users Mailing List user@struts.apache.org
Date: Wed, 11 Jul 2007 15:03:51 -0400
Subject: Re: Struts 2 performance

Struts tests pass with OGNL 2.7

musachy

On 7/11/07, James Holmes [EMAIL PROTECTED] wrote:

 It's not a simple JAR drop. The core XWork and Struts 2 libraries have to
 be
 updated to compile expressions. This will take some work, but I believe it
 is
 badly needed. I'm up for helping to do this work, but don't have much
 experience
 with the OGNL code. I also don't have commit access to the XWork code.

 What's the process for getting commit access to XWork for Struts
 committers?

 James


 On Wed Jul 11  9:39 , 'Guillaume Carré' [EMAIL PROTECTED] sent:

 2007/7/11, Musachy Barroso [EMAIL PROTECTED]:
  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: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 



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




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

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



Re: Struts 2 performance

2007-07-11 Thread Aram Mkhitaryan

If we need to test the Struts2's real performance we should not use database
calls and stuff like that.
The code should be as simple as possible, for example, as it was already
suggested,
we may use static data (a big enough list with beans that have at least 5
properties).
We may include some logical part, for example, exclude beans with odd
indexes to add a little functionality (we should notice that the bottleneck
is in frontend/jsp/ognl side not in backend/actions side).

There were a question about how to test and how to measure the performance
...
jmeter is a good choice.
You may start jmeter with at least, for example, 20 concurrent clients, and
set timeout to, for example, 1s.
The more tests pass the better the performance is.
Then you can decrease timeout and increase clients count.

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Struts 2 performance

2007-07-11 Thread Aram Mkhitaryan

BTW, the idea about participation in contributing to this part is good.
I would love to solve this performance problem.

Does someone know how we can become a contributor of struts2?

Is there a standard procedure, or we just can solve ourselves and send the
result code?

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]


Re: Struts 2 performance

2007-07-11 Thread Don Brown

Ted wrote up a good doc somewhere on the website, but the summary is
join the dev list, participate in discussions, file jira tickets with
patches that include unit tests.

Don

On 7/12/07, Aram Mkhitaryan [EMAIL PROTECTED] wrote:

BTW, the idea about participation in contributing to this part is good.
I would love to solve this performance problem.

Does someone know how we can become a contributor of struts2?

Is there a standard procedure, or we just can solve ourselves and send the
result code?

Best,
Aram

Aram Mkhitaryan

52, 25 Lvovyan, Yerevan 375000, Armenia

Mobile: +374 91 518456
E-mail: [EMAIL PROTECTED]



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



Re: Struts 2 performance

2007-07-10 Thread Ted Husted

On 7/9/07, climbingrose [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-10 Thread Lionel
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-10 Thread climbingrose

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 [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
Regards,

Cuong Hoang


Re: Struts 2 performance

2007-07-10 Thread cilquirm

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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Struts 2 performance

2007-07-10 Thread climbingrose

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 [EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
Regards,

Cuong Hoang


Re: Struts 2 performance

2007-07-09 Thread Frank W. Zammetti

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: [EMAIL PROTECTED]
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]