I had to go back and look at the test code we used, but yes - looks like we
did try a non-body tag.  It did a hashtable lookup for whatever key values
was passed in as a parameter.  I remember we found that we could only
recreate the performance discrepancy with tags that did some kind of memory
lookup; just adding loops around arithmetic statements are writing output
were tried, but did not exhibit the symptoms.

Jim Weaver
Software Developer - ThoughtWorks


                                                                                       
                                                
                      "Martin Cooper"                                                  
                                                
                      <martin.cooper@tumb        To:       "'Struts Users Mailing 
List'" <[EMAIL PROTECTED]>              
                      leweed.com>                cc:                                   
                                                
                                                 Subject:  RE: Improving performance 
by splitting JSP?                                 
                      09/09/2002 05:24 PM                                              
                                                
                      Please respond to                                                
                                                
                      "Struts Users                                                    
                                                
                      Mailing List"                                                    
                                                
                                                                                       
                                                
                                                                                       
                                                






> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Monday, September 09, 2002 2:51 PM
> To: Struts Users Mailing List
> Subject: RE: Improving performance by splitting JSP?
>
>
>
> Yup, we looked at overall size of the JSP as well, and the
> association with
> performance was definitely number of bm/bw tags within a
> single JSP rather
> than overall JSP size.  We even tried editing the generated
> servlet code
> and adding big unused methods to see if the problem had to do with
> generated servlet file size.  That would kind've made sense, but was a
> negative.  I believe we also tried a tag that just did a
> sysout rather than
> any kind of memory lookup (hashtable or properties file) and
> found that
> this performance quirk in the sun vm did not appear in that case.

When you wrote your own tags (the message/write equivalents, I mean), did
you happen to play with body versus non-body tags? When I was wrestling
with
the "too many tags" problem a while ago, I ended up writing my own versions
of some of the Struts tags so that they were non-body tags, because they
caused noticeably less code to be generated. I didn't measure performance
differences, but I wouldn't be surprised to see a noticeable improvement
there too.

--
Martin Cooper


>
> We could never pin down a why, it seemed that the sun 1.3 vm
> just ran like
> a snail with a lot of bm or bw tags in a single page, so we
> stopped doing
> that ;-).  Same number of tags split up into multiple JSPs,
> or a few tags
> called the same number of times via a loop - OK performance.
>
> It is very true also that splitting them up into smaller
> bites makes them
> more readable and maintainable, so it was a good solution all
> around.  It's
> just that you are always nervous when you fix a problem and
> don't know the
> why of it ;-).
>
> Jimbo
>
>
>
> --
> To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
>
>


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







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

Reply via email to