You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by David Zimmerman <da...@lycos.com> on 2002/09/24 07:56:26 UTC

Struts and high performance sites

Hi,
we are building a webshop for a site with a high volume of users, approx. 800 concurrent users and 25k transactions per hour. We are going to use J2EE as the ground platform. I am now considering some design choices where using Struts is one of them. However I have some questions regarding the performance of Struts. I know this issue has been up many times before but I have never been able to find any satisfying answers, so...

What, if any, overhead does the Struts controller generate? This question must of course be seen in the context of writing your own controller or using any other framework. However, what is Struts overhead?

What overhead does the use of form beans generate (in the sense of objects created, memory use, the use of reflection, speed)

Custom tags (Struts' or other). Would they be applicable in a case like this? Wouldn't there be a massive creation of objects for every request?

Please help me out here! I really want your knowledge on this!

Regards
David Zimmerman


____________________________________________________________
Tired of all the SPAM in your inbox? Switch to LYCOS MAIL PLUS
http://www.mail.lycos.com/brandPage.shtml?pageId=plus

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Struts and high performance sites

Posted by "Peter A. J. Pilgrim" <pe...@xenonsoft.demon.co.uk>.
V. Cekvenich wrote:
>
> 
> The slow part is DAO in J2EE (and ADO in .NET). Avoid any EJB, they do 
> not scale.
> 

Avoid any EJB.  I presume you are talking about Entity Beans, n'est pas?
Entity Beans may be indeed be slower in comparison with the old
fashion hand-me-down-get-on-your-knees of written persistent business
objects with straight JDBC, but I will say that the Entity Beans are
designed to be (1) Scalable, (2) Portable (Relatively between J2EE
app servers) ( 100% distributable across JVMs/hosts),
(3) Transactionable.

The controversy in learned places has mostly been about Entity Beans
and not over Session Beans (stateful or stateless).

-- 
Peter Pilgrim         +-----\ +-++----++----+
Java Technologist     |     | | ||    ||    | 'n' Shine
                       |  O  | | ||  --+| ---+
         /\            | ._  / | | \  \ |    |
        /  \           | | \ \ | |+--  || ---+ A new day
       /_  _\  "Up"    | | | | | ||    ||    | is coming
         ||            +-+ +-+ +-++----++----+
<home page="http://www.xenonsoft.demon.co.uk/" />


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: DynaActionForm blowing away values...

Posted by Gemes Tibor <ge...@regens.hu>.
2002. szeptember 24. 13:54 dátummal James Krygowski ezt írtad:
> Hey all--
>
> never mind, i think that my server log isn't completely sequential/real
> time...

This is a good reason no to use System.out.println like stuff for debugging. 
Try using commons-logging w/ log4j for example.

Tib

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


RE: DynaActionForm blowing away values...

Posted by James Krygowski <ja...@shaws.com>.
Hey all--

never mind, i think that my server log isn't completely sequential/real
time...

thanks!

> -----Original Message-----
> From: James Krygowski [mailto:james.krygowski@shaws.com]
> Sent: Tuesday, September 24, 2002 7:44 AM
> To: Struts Users Mailing List
> Subject: DynaActionForm blowing away values...
>
>
> Hey all-
>
> I'm trying to use DynaActionForm to send data from an action to my jsp.
> I've got a setup something like:
>
> MaintainThemesAction ---> MaintainThemes.jsp
>
> I populate a the DynaActionForm associated with the action in the
> MaintainThemesAction but when I try to access the values it
> contains from my
> JSP I only get errors.  I've setup my form-bean and action
> mapping like the
> following xml snippets (yes, they are in the right locations in my
> struts-config.xml file ;))
>
>
>         <form-bean      name="maintainThemesForm"
>                         type="org.apache.struts.action.DynaActionForm">
>           <form-property name="themes" type="java.lang.Object[]"/>
>         </form-bean>
>
>
>
>         <action    path="/adsetup/GetThemes"
>            type="com.shaws.aps.action.AdSetupMaintenanceAction"
>            name="maintainThemesForm"
>            scope="request"
>            validate="false">
>           <forward name="success" path="/adsetup/MaintainThemes.jsp"/>
>         </action>
>
>
> Here's the errors i get.   The first few messages are system.out.println's
> from my action class.  I kinda find this output confusing given that it
> appears to run the action then map the action.  It also appears
> to blow away
> my DynaActionForm right before giving it to the JSP.   Can anyone suggest
> what is going wrong here?
>
> got 170 themes from database.
> dynaform name is maintainThemesForm
> dynaform is a NOT NULL form
> setting values to dynaform...
> checking set values.... Got an array of size 170 from dynaactionform.
> forwarding to jsp...
> 09/24 07:31:15 info [axis] Processing a 'GET' for path
> '/adsetup/GetThemes'
> 09/24 07:31:15 debug [axis]  Looking for ActionForm bean instance in scope
> 'requ
> est' under attribute key 'maintainThemesForm'
> 09/24 07:31:15 debug [axis]  Creating new DynaActionForm instance of type
> 'org.a
> pache.struts.action.DynaActionForm'
> 09/24 07:31:15 debug [axis]  Storing ActionForm bean instance in scope
> 'request'
>  under attribute key 'maintainThemesForm'
> 09/24 07:31:15 debug [axis]  Populating bean properties from this request
> 09/24 07:31:15 debug [axis]
> BeanUtils.populate(DynaActionForm[dynaClass=maintain
> ThemesForm,themes=<NULL>], {})
> 09/24 07:31:15 debug [axis]  Looking for Action instance for class
> com.shaws.aps
> .action.AdSetupMaintenanceAction
> 09/24 07:31:15 error Unhandled exception thrown from
> /adsetup/MaintainThemes.jsp:62
> [1]javax.servlet.jsp.JspException: Cannot create iterator for this
> collection
>         at
> org.apache.struts.taglib.logic.IterateTag.doStartTag(IterateTag.java:
> 337)
>         at
> jrun__adsetup__MaintainThemes2ejsp1b._jspService(jrun__adsetup__Maint
> ainThemes2ejsp1b.java:103)
>         at jrun.jsp.runtime.HttpJSPServlet.service(HttpJSPServlet.java:43)
>         at jrun.jsp.JSPServlet.service(JSPServlet.java:106)
>         at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
>         at
> jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
>         at
> jrun.servlet.JRunRequestDispatcher.invokeNext(JRunRequestDispatcher.j
> ava:414)
>         at
> jrun.servlet.JRunRequestDispatcher.forwardInvoke(JRunRequestDispatche
> r.java:387)
>         at
> jrun.servlet.JRunRequestDispatcher.forward(JRunRequestDispatcher.java
> :172)
>         at
> org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.
> java:1014)
>         at
> org.apache.struts.action.RequestProcessor.processForwardConfig(Reques
> tProcessor.java:417)
>         at
> org.apache.struts.action.RequestProcessor.processActionForward(Reques
> tProcessor.java:390)
>         at
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
> va:271)
>         at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:129
> 2)
>         at
> org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:492)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>         at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
>         at
> jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
>         at
> jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:
> 241)
>         at
> jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:
> 527)
>         at
> jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
>         at
> jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPoo
> l.java:348)
>         at
> jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.j
> ava:451)
>         at
> jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.
> java:294)
>         at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
> [0]jrun.jsp.runtime.UncaughtPageException: Unhandled exception thrown from
> /adse
> tup/MaintainThemes.jsp:62
>         at jrun.jsp.runtime.Utils.handleException(Utils.java:57)
>         at
> jrun.jsp.runtime.JRunPageContext.handlePageException(JRunPageContext.
> java:381)
> <snip/>
>
>
> --
> To unsubscribe, e-mail:
<ma...@jakarta.apache.org>
For additional commands, e-mail:
<ma...@jakarta.apache.org>



--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


DynaActionForm blowing away values...

Posted by James Krygowski <ja...@shaws.com>.
Hey all-

I'm trying to use DynaActionForm to send data from an action to my jsp.
I've got a setup something like:

MaintainThemesAction ---> MaintainThemes.jsp

I populate a the DynaActionForm associated with the action in the
MaintainThemesAction but when I try to access the values it contains from my
JSP I only get errors.  I've setup my form-bean and action mapping like the
following xml snippets (yes, they are in the right locations in my
struts-config.xml file ;))


        <form-bean      name="maintainThemesForm"
                        type="org.apache.struts.action.DynaActionForm">
          <form-property name="themes" type="java.lang.Object[]"/>
        </form-bean>



        <action    path="/adsetup/GetThemes"
           type="com.shaws.aps.action.AdSetupMaintenanceAction"
           name="maintainThemesForm"
           scope="request"
           validate="false">
          <forward name="success" path="/adsetup/MaintainThemes.jsp"/>
        </action>


Here's the errors i get.   The first few messages are system.out.println's
from my action class.  I kinda find this output confusing given that it
appears to run the action then map the action.  It also appears to blow away
my DynaActionForm right before giving it to the JSP.   Can anyone suggest
what is going wrong here?

got 170 themes from database.
dynaform name is maintainThemesForm
dynaform is a NOT NULL form
setting values to dynaform...
checking set values.... Got an array of size 170 from dynaactionform.
forwarding to jsp...
09/24 07:31:15 info [axis] Processing a 'GET' for path '/adsetup/GetThemes'
09/24 07:31:15 debug [axis]  Looking for ActionForm bean instance in scope
'requ
est' under attribute key 'maintainThemesForm'
09/24 07:31:15 debug [axis]  Creating new DynaActionForm instance of type
'org.a
pache.struts.action.DynaActionForm'
09/24 07:31:15 debug [axis]  Storing ActionForm bean instance in scope
'request'
 under attribute key 'maintainThemesForm'
09/24 07:31:15 debug [axis]  Populating bean properties from this request
09/24 07:31:15 debug [axis]
BeanUtils.populate(DynaActionForm[dynaClass=maintain
ThemesForm,themes=<NULL>], {})
09/24 07:31:15 debug [axis]  Looking for Action instance for class
com.shaws.aps
.action.AdSetupMaintenanceAction
09/24 07:31:15 error Unhandled exception thrown from
/adsetup/MaintainThemes.jsp:62
[1]javax.servlet.jsp.JspException: Cannot create iterator for this
collection
        at
org.apache.struts.taglib.logic.IterateTag.doStartTag(IterateTag.java:
337)
        at
jrun__adsetup__MaintainThemes2ejsp1b._jspService(jrun__adsetup__Maint
ainThemes2ejsp1b.java:103)
        at jrun.jsp.runtime.HttpJSPServlet.service(HttpJSPServlet.java:43)
        at jrun.jsp.JSPServlet.service(JSPServlet.java:106)
        at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
        at
jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
        at
jrun.servlet.JRunRequestDispatcher.invokeNext(JRunRequestDispatcher.j
ava:414)
        at
jrun.servlet.JRunRequestDispatcher.forwardInvoke(JRunRequestDispatche
r.java:387)
        at
jrun.servlet.JRunRequestDispatcher.forward(JRunRequestDispatcher.java
:172)
        at
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.
java:1014)
        at
org.apache.struts.action.RequestProcessor.processForwardConfig(Reques
tProcessor.java:417)
        at
org.apache.struts.action.RequestProcessor.processActionForward(Reques
tProcessor.java:390)
        at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:271)
        at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:129
2)
        at
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:492)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
        at
jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
        at
jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:
241)
        at
jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:
527)
        at jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
        at
jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPoo
l.java:348)
        at
jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.j
ava:451)
        at
jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.
java:294)
        at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
[0]jrun.jsp.runtime.UncaughtPageException: Unhandled exception thrown from
/adse
tup/MaintainThemes.jsp:62
        at jrun.jsp.runtime.Utils.handleException(Utils.java:57)
        at
jrun.jsp.runtime.JRunPageContext.handlePageException(JRunPageContext.
java:381)
<snip/>


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


EJB / was Struts and high performance sites

Posted by "V. Cekvenich" <vi...@users.sourceforge.net>.
They are hype marketed as such. Most newer developers try them, as I did 
when I was new, but in production they did not scale, so we removed 
them. On new sites I skip the writing them part,  since people would 
only remove them in production. (some management that take EJB to 
production are so upset that they go to the cached .NET ADO, so I steer 
my client's clear).

Read www.basebeans.com/bad.jsp links for other's opinion.
Some people disagree with them, but I had similar experience.

V.

Daniel Joshua wrote:
> V. Cekvenich,
> 
> 
>>The slow part is DAO in J2EE (and ADO in .NET). Avoid any EJB, they do
>>not scale.
> 
> 
> I though EJBs were designed to allow scalling?
> 
> 
> Regards,
> Daniel
> 
> 
> -----Original Message-----
> From: news [mailto:news@main.gmane.org]On Behalf Of V. Cekvenich
> Sent: Tuesday, September 24, 2002 5:56 PM
> To: struts-user@jakarta.apache.org
> Subject: Re: Struts and high performance sites
> 
> 
> Not a high volume of users, and 7 transactions per second? Should fit on
> a single medium box (if not a laptop) if you do it right.
> 
> You have to worry about creating objects if you write your own framework
> (you can put beans in session or requests, and request is better
> mostly), and then you have 2 projects, your app and a framework, and you
> won't do better than the Struts team and what about framework bugs?
> Also, with Struts, my clients are able to write several modules(pages)
> per day per developers, how's that for  productivity or beating the
> schedule?
> Some of the  Struts sites are 50 times more concurrent users I have
> worked on, no problem.
> 
> The slow part is DAO in J2EE (and ADO in .NET). Avoid any EJB, they do
> not scale.
> 
> Some good choices is RowSet(I do metadata w/ reflection to auto gen SQL
> updates - RowSet also avoids BO/DTO/VO mapping and GC), Resin, pgSQL,
> Eclipse or CodeGuide IDE, Linux/KDE and J:Rockit VM or IBM VM (Sun VM
> and Sun Inc. have issues). Sample good practices code on
> http://basicPortal.sf.net, FREE!
> 
> (If you have a large app or large # users, let a mentor help. many are
> on this list, it is cost effective, but not because of Struts only)
> 
> V.
> Struts Mentor
> 917 345 1445 /vic@baseBeans.com
> ("Mentor's helps you do it faster/cheaper)
> 
> 
> David Zimmerman wrote:
> 
>>Hi,
>>we are building a webshop for a site with a high volume of users, approx.
> 
> 800 concurrent users and 25k transactions per hour. We are going to use J2EE
> as the ground platform. I am now considering some design choices where using
> Struts is one of them. However I have some questions regarding the
> performance of Struts. I know this issue has been up many times before but I
> have never been able to find any satisfying answers, so...
> 
>>What, if any, overhead does the Struts controller generate? This question
> 
> must of course be seen in the context of writing your own controller or
> using any other framework. However, what is Struts overhead?
> 
>>What overhead does the use of form beans generate (in the sense of objects
> 
> created, memory use, the use of reflection, speed)
> 
>>Custom tags (Struts' or other). Would they be applicable in a case like
> 
> this? Wouldn't there be a massive creation of objects for every request?
> 
>>Please help me out here! I really want your knowledge on this!
>>
>>Regards
>>David Zimmerman
>>
>>
>>____________________________________________________________
>>Tired of all the SPAM in your inbox? Switch to LYCOS MAIL PLUS
>>http://www.mail.lycos.com/brandPage.shtml?pageId=plus
> 
> 
> 
> 
> 
> --
> To unsubscribe, e-mail:
> <ma...@jakarta.apache.org>
> For additional commands, e-mail:
> <ma...@jakarta.apache.org>




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


RE: Struts and high performance sites

Posted by Daniel Joshua <da...@gridnode.com>.
V. Cekvenich,

>The slow part is DAO in J2EE (and ADO in .NET). Avoid any EJB, they do
>not scale.

I though EJBs were designed to allow scalling?


Regards,
Daniel


-----Original Message-----
From: news [mailto:news@main.gmane.org]On Behalf Of V. Cekvenich
Sent: Tuesday, September 24, 2002 5:56 PM
To: struts-user@jakarta.apache.org
Subject: Re: Struts and high performance sites


Not a high volume of users, and 7 transactions per second? Should fit on
a single medium box (if not a laptop) if you do it right.

You have to worry about creating objects if you write your own framework
(you can put beans in session or requests, and request is better
mostly), and then you have 2 projects, your app and a framework, and you
won't do better than the Struts team and what about framework bugs?
Also, with Struts, my clients are able to write several modules(pages)
per day per developers, how's that for  productivity or beating the
schedule?
Some of the  Struts sites are 50 times more concurrent users I have
worked on, no problem.

The slow part is DAO in J2EE (and ADO in .NET). Avoid any EJB, they do
not scale.

Some good choices is RowSet(I do metadata w/ reflection to auto gen SQL
updates - RowSet also avoids BO/DTO/VO mapping and GC), Resin, pgSQL,
Eclipse or CodeGuide IDE, Linux/KDE and J:Rockit VM or IBM VM (Sun VM
and Sun Inc. have issues). Sample good practices code on
http://basicPortal.sf.net, FREE!

(If you have a large app or large # users, let a mentor help. many are
on this list, it is cost effective, but not because of Struts only)

V.
Struts Mentor
917 345 1445 /vic@baseBeans.com
("Mentor's helps you do it faster/cheaper)


David Zimmerman wrote:
> Hi,
> we are building a webshop for a site with a high volume of users, approx.
800 concurrent users and 25k transactions per hour. We are going to use J2EE
as the ground platform. I am now considering some design choices where using
Struts is one of them. However I have some questions regarding the
performance of Struts. I know this issue has been up many times before but I
have never been able to find any satisfying answers, so...
>
> What, if any, overhead does the Struts controller generate? This question
must of course be seen in the context of writing your own controller or
using any other framework. However, what is Struts overhead?
>
> What overhead does the use of form beans generate (in the sense of objects
created, memory use, the use of reflection, speed)
>
> Custom tags (Struts' or other). Would they be applicable in a case like
this? Wouldn't there be a massive creation of objects for every request?
>
> Please help me out here! I really want your knowledge on this!
>
> Regards
> David Zimmerman
>
>
> ____________________________________________________________
> Tired of all the SPAM in your inbox? Switch to LYCOS MAIL PLUS
> http://www.mail.lycos.com/brandPage.shtml?pageId=plus




--
To unsubscribe, e-mail:
<ma...@jakarta.apache.org>
For additional commands, e-mail:
<ma...@jakarta.apache.org>



--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Struts and high performance sites

Posted by "V. Cekvenich" <vi...@users.sourceforge.net>.
Not a high volume of users, and 7 transactions per second? Should fit on 
a single medium box (if not a laptop) if you do it right.

You have to worry about creating objects if you write your own framework 
(you can put beans in session or requests, and request is better 
mostly), and then you have 2 projects, your app and a framework, and you 
won't do better than the Struts team and what about framework bugs?
Also, with Struts, my clients are able to write several modules(pages) 
per day per developers, how's that for  productivity or beating the 
schedule?
Some of the  Struts sites are 50 times more concurrent users I have 
worked on, no problem.

The slow part is DAO in J2EE (and ADO in .NET). Avoid any EJB, they do 
not scale.

Some good choices is RowSet(I do metadata w/ reflection to auto gen SQL 
updates - RowSet also avoids BO/DTO/VO mapping and GC), Resin, pgSQL, 
Eclipse or CodeGuide IDE, Linux/KDE and J:Rockit VM or IBM VM (Sun VM 
and Sun Inc. have issues). Sample good practices code on 
http://basicPortal.sf.net, FREE!

(If you have a large app or large # users, let a mentor help. many are 
on this list, it is cost effective, but not because of Struts only)

V.
Struts Mentor
917 345 1445 /vic@baseBeans.com
("Mentor's helps you do it faster/cheaper)


David Zimmerman wrote:
> Hi,
> we are building a webshop for a site with a high volume of users, approx. 800 concurrent users and 25k transactions per hour. We are going to use J2EE as the ground platform. I am now considering some design choices where using Struts is one of them. However I have some questions regarding the performance of Struts. I know this issue has been up many times before but I have never been able to find any satisfying answers, so...
> 
> What, if any, overhead does the Struts controller generate? This question must of course be seen in the context of writing your own controller or using any other framework. However, what is Struts overhead?
> 
> What overhead does the use of form beans generate (in the sense of objects created, memory use, the use of reflection, speed)
> 
> Custom tags (Struts' or other). Would they be applicable in a case like this? Wouldn't there be a massive creation of objects for every request?
> 
> Please help me out here! I really want your knowledge on this!
> 
> Regards
> David Zimmerman
> 
> 
> ____________________________________________________________
> Tired of all the SPAM in your inbox? Switch to LYCOS MAIL PLUS
> http://www.mail.lycos.com/brandPage.shtml?pageId=plus




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Struts and high performance sites

Posted by "Peter A. J. Pilgrim" <pe...@xenonsoft.demon.co.uk>.
David Zimmerman wrote:
> Hi,
> we are building a webshop for a site with a high volume of users, approx. 800 concurrent users and 25k transactions per hour. We are going to use J2EE as the ground platform. I am now considering some design choices where using Struts is one of them. However I have some questions regarding the performance of Struts. I know this issue has been up many times before but I have never been able to find any satisfying answers, so...
> 
> What, if any, overhead does the Struts controller generate? This question must of course be seen in the context of writing your own controller or using any other framework. However, what is Struts overhead?
> 
> What overhead does the use of form beans generate (in the sense of objects created, memory use, the use of reflection, speed)
> 
> Custom tags (Struts' or other). Would they be applicable in a case like this? Wouldn't there be a massive creation of objects for every request?
> 
> Please help me out here! I really want your knowledge on this!
> 
> Regards
> David Zimmerman
> 

Well the design of Struts is such that it only ever create JUST ONE
controller /action instance.

The overhead will be number in threads created by the Servlet / JSP container
and your overall system architecture. If you truly have 800 concurrent
user during the day then you will probably have more than one
than one web servers running on separate machines. In other words
you would using an application server, most probably. A application
server (J2EE) will allow you load balance and cluster across
multiple JVM / machines. So you see I think this is where your
overhead lies, not on Struts itself.

-- 
Peter Pilgrim         +-----\ +-++----++----+
Java Technologist     |     | | ||    ||    | 'n' Shine
                       |  O  | | ||  --+| ---+
         /\            | ._  / | | \  \ |    |
        /  \           | | \ \ | |+--  || ---+ A new day
       /_  _\  "Up"    | | | | | ||    ||    | is coming
         ||            +-+ +-+ +-++----++----+
<home page="http://www.xenonsoft.demon.co.uk/" />


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>