You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Philip Luppens (JIRA)" <ji...@apache.org> on 2008/09/19 07:18:24 UTC

[jira] Commented: (WW-2808) Performance issue Struts 2 Tag

    [ https://issues.apache.org/struts/browse/WW-2808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=44736#action_44736 ] 

Philip Luppens commented on WW-2808:
------------------------------------

I decided to do some quick profiling myself since I have multiple apps hitting production in the following months. I've created a minimalistic setup and put some Apache Bench runs against it. Note: I haven't optimized anything other than the Struts 2 recommendations, standard JVM settings, etc etc .. the point is the relative performance, not the absolute one.

Results are as I remembered from some time ago. If I stick to non-form tags, I can easily get approx. 1000req/s with a concurrency of 40 users (but with maxed CPU), but as soon as there are form tags in play, performance goes down the drain and we end up with a max of 150req/s.

Some quick profiling shows that indeed (esp) Freemarker and OGNL are to blame. Even with full caching enabled for Freemarker, it seems to hit some serious walls here - which kind of surprised me, since I've used Freemarker for a long time (as a template view layer) and never had performance issues with it.

I'm now checking out Don's pure Java tags (he reported improvements up to 4x) to see if we can get a more performant result. Other tag solutions like GXP and Groovy will also be investigated.

> Performance issue Struts 2 Tag
> ------------------------------
>
>                 Key: WW-2808
>                 URL: https://issues.apache.org/struts/browse/WW-2808
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: Value Stack
>    Affects Versions: 2.0.11.2
>         Environment: Solaris , Weblogic 9.2 MP 1 ,Sun One Web Server 6.5
> Strut2 , Spring 2.5 and Sitemesh 
>            Reporter: sajan
>            Priority: Critical
>
> There is huge performance issue and CPU hogging with Struts2 tag , this was observed while rendering JSP. These are some performance results obtained 
> Strut 2 Tag  - With all performance tuning applied as per Struts 2 documentation - Freemarker caching etc...
> Load Runner Tool
> 40 users
> 900 hits per second
> 10 transaction per second 
> Results 
> CPU utilization 90% 
> Response 3.5 sec 
> Replaced  some of  Struts2 Tag , with Custom JSP Tags  like (s:label, s:text,s:textfield,s:hidden,s:param) 
> 40 users
> 900 hits per second
> 15 transaction per second 
> Results 
> CPU utilization 70% 
> Response 2.0 sec 
> Some where down the line Struts 2 tag are very cpu hungry , to people to adopt to strut2 framework cpu utilization should be optimized .

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.