Return-Path: Delivered-To: apmail-jakarta-tomcat-user-archive@www.apache.org Received: (qmail 84848 invoked from network); 23 Sep 2005 14:47:14 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 23 Sep 2005 14:47:14 -0000 Received: (qmail 94097 invoked by uid 500); 23 Sep 2005 14:46:57 -0000 Delivered-To: apmail-jakarta-tomcat-user-archive@jakarta.apache.org Received: (qmail 94084 invoked by uid 500); 23 Sep 2005 14:46:57 -0000 Mailing-List: contact tomcat-user-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Help: List-Post: List-Id: "Tomcat Users List" Reply-To: "Tomcat Users List" Delivered-To: mailing list tomcat-user@jakarta.apache.org Received: (qmail 94070 invoked by uid 99); 23 Sep 2005 14:46:57 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Sep 2005 07:46:57 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (asf.osuosl.org: local policy) Received: from [194.109.24.21] (HELO smtp-vbr1.xs4all.nl) (194.109.24.21) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Sep 2005 07:47:04 -0700 Received: from [172.21.10.15] (50-208.bbned.dsl.internl.net [217.149.208.50]) (authenticated bits=0) by smtp-vbr1.xs4all.nl (8.13.3/8.13.3) with ESMTP id j8NEkVWv024222; Fri, 23 Sep 2005 16:46:31 +0200 (CEST) (envelope-from incoming@jillesvangurp.com) Message-ID: <43341546.6060006@jillesvangurp.com> Date: Fri, 23 Sep 2005 16:46:30 +0200 From: Jilles van Gurp User-Agent: Thunderbird 1.4 (Windows/20050908) MIME-Version: 1.0 To: Tomcat Users List CC: arthurm@gx.nl Subject: tld processing performance at startup Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by XS4ALL Virus Scanner X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Hi, I have a large site running on tomcat with some tag libs. Restarting tomcat can take up to 30-40 seconds which is not that bad except that we'd prefer to minimize this time because apache can queue a lot of incoming requests in this 30 seconds. We need to restart often because we are still tinkering with the site even though it already went live. In general, shorter startup times would be really nice anyhow. Some analysis of what is taking up most of this time has shown that tomcat is spending a lot of time (>40-50%) processing all the files in the web application looking for tld descriptors. In this particular web application there a few thousand small files (e.g. xml descriptors, jsps, some static stuff, lots of scripts, etc). Only a small subset is jar files (about 20) and only about ten of the files are actually tlds, all conveniently located in a subdirectory of WEB-INF. The whole thing is deployed as an unzipped directory rather than a war file so we can update stuff faster (copy some jar files, stop/start). Auto reload is not compatible with our web app so we don't have that enabled. This web log post: http://www.webweavertech.com/costin/archives/000164.html suggests that the reason for the poor performance may be a design flaw in the jsp spec which makes it necessary to do a lot of work. The ideal way would be for the tld descriptors to always be in the META-INF directory. However, the spec doesn't require this and tlds may be located anywhere in the webapplication. Is this analysis of the problem still correct for tomcat 5.0.28? On the other hand the web.xml does specify explicitly where the tlds are so I don't fully understand the need to look through the whole web application directory. Is there a way to optimize this problem away (even partially) by e.g. telling tomcat explicitly what tlds to process? Regards, Jilles van Gurp --------------------------------------------------------------------- To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org For additional commands, e-mail: tomcat-user-help@jakarta.apache.org