Return-Path: Delivered-To: apmail-jakarta-tomcat-dev-archive@jakarta.apache.org Received: (qmail 98134 invoked by uid 500); 26 May 2001 10:34:03 -0000 Mailing-List: contact tomcat-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: tomcat-dev@jakarta.apache.org Delivered-To: mailing list tomcat-dev@jakarta.apache.org Received: (qmail 97691 invoked from network); 26 May 2001 10:33:59 -0000 Message-ID: <006a01c0e5cf$3d92dd80$714afea9@home> From: "Rickard Oberg" To: References: <3B0DFBE5.68C39FFB@xpedio.com> <3B0EEA60.639CD689@armassolutions.com> Subject: Re: Jasper performance/3.3 tag pooling Date: Sat, 26 May 2001 12:22:06 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 X-Spam-Rating: h31.sny.collab.net 1.6.2 0/1000/N > Thanks for sending the test application. I've been using monthlist.jsp while > testing rendered then hand bashed code. After some preliminary bashing :) > I think it will be possible to call all setters (except runtime expressions) > only once per run of the page. Also, we can create / obtain tag handler instances > only once per page run. That is an excellent start! > Anyway... after tweaking the rendered code, I was disappointed that there > wasn't much of a change in the performance when I hit the page directly. > The "optimized" version was even a bit slower :( So, I hooked it up to a > profiler. It said that most of the time was being spent in > webwork.util.ValueStack.findValue which is called from some of > the setters and some of the do[Start|End]Tag methods. Yeah, it's the by far most used method, and also where most of the magic happens (name->value conversions). I've been tweaking it some, but probably not enough. > So, Is there any way you could send me a new webwork.jar (no need for the > whole .war) that has tag implementations optimized for tag instance and > setter call reuse?. If you can move some/many of the calls to ValueStack.findValue > out of the doStart/doEnd methods, that should help. I will start working on this after the weekend. However I am also rewriting most of the tags for a new and simpler syntax, which is going to take some coding time too, since all the examples need to be modified, docs, etc. I will let you know as soon as possible though when the opts. are done. > Yes, I know this doesn't solve the problem of why weblogic was faster > for you, but any tag related optimizations we can make should help other > tag users (me and my day job included). Yup, that was the basic idea when I started this thread :-) Glad to see things happen! :-) > If you send a new jar, I'll test it out and let you know. Will do. /Rickard