tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Mikusa <dmik...@pivotal.io>
Subject Re: Startup of tomcat 8 takes twice as long as startup of tomcat 6
Date Mon, 15 Dec 2014 15:08:17 GMT
On Mon, Dec 15, 2014 at 8:40 AM, Yaragalla Muralidhar <
yaragallamurali@gmail.com> wrote:
>
> for me it is taking more than that. I have deployed a simple war file.


How simple?  What about when you run it without any apps deployed?  How
fast does it startup then?


> It took so long to deploy it.
>
> omcat-8.0.15\webapps\ROOT has finished in 240 ms
> 15-Dec-2014 19:08:32.348 INFO [main]
> org.apache.coyote.AbstractProtocol.start St
> arting ProtocolHandler ["http-nio-8080"]
> 15-Dec-2014 19:08:32.357 INFO [main]
> org.apache.coyote.AbstractProtocol.start St
> arting ProtocolHandler ["ajp-nio-8009"]
> 15-Dec-2014 19:08:32.360 INFO [main]
> org.apache.catalina.startup.Catalina.start
> Server startup in 336069 ms
>

Have you tried anything listed here?

   http://wiki.apache.org/tomcat/HowTo/FasterStartUp

If so, what were the results?

Dan

PS.  If you have a profiler, hook it up to Tomcat and see what's taking so
long.  Most of the time it's the app, unless you're hitting one of the
issues on the wiki page I listed above.


>
> *Thanks and Regards,*
> Muralidhar Yaragalla.
>
> *http://yaragalla.blogspot.in/ <http://yaragalla.blogspot.in/>*
>
> On Mon, Dec 15, 2014 at 7:03 PM, gchris@gmx.de <gchris@gmx.de> wrote:
> >
> >
> >
> > Hi,
> >
> > we used to deploy our webapp in a tomcat 6.0.35 and want to upgrade to
> > tomcat 8.0.9.
> > During testing we discovered, that the startup process of tomcat 8 is
> > twice as long as the startup process of tomcat 6 (with the same single
> > webapp deployed)
> >
> > My test system is as follows:
> > Windows 7, JRE 1.7.0, Tomcat 6.0.35/8.0.9
> >
> > Inspection of the log files revealed, that the additional time is used
> for
> > class loading:
> >
> > Log of tomcat 6:
> > ...
> > Nov 28, 2014 5:07:59 PM org.apache.tomcat.util.digester.Digester
> > endDocument
> > Fein: endDocument()
> > Nov 28, 2014 5:07:59 PM org.apache.catalina.loader.WebappClassLoader
> > loadClass
> > Fein: loadClass(org.springframework.web.util.Log4jConfigListener, false)
> > ...
> > Fein: Parent class loader is: WebappClassLoader
> > context:
> > delegate: false
> > repositories:
> > ----------> Parent Classloader:
> > org.apache.catalina.loader.StandardClassLoader@189ff97
> > Nov 28, 2014 5:08:08 PM org.apache.jasper.compiler.JspRuntimeContext
> > initClassPath
> > Fein: Compilation classpath initialized: ...
> > Nov 28, 2014 5:08:08 PM org.apache.jasper.servlet.JspServlet init
> > Fein: Scratch dir for the JSP engine is: ...
> > Nov 28, 2014 5:08:08 PM org.apache.jasper.servlet.JspServlet init
> > Fein: IMPORTANT: Do not modify the generated servlets
> > Nov 28, 2014 5:08:08 PM org.apache.catalina.core.StandardContext start
> > Fein: Starting completed
> > ...
> > Nov 28, 2014 5:08:09 PM org.apache.catalina.startup.Catalina start
> > Information: Server startup in 10861 ms
> >
> > Log of tomcat 8:
> > ...
> > 28-Nov-2014 16:09:09.128 FINER [localhost-startStop-1]
> > org.apache.tomcat.util.scan.StandardJarScanner.scan Not scanning JAR
> >
> [file:/C:/Program%20Files/tomcat%208/tolina_webserver-3.0.0-SNAPSHOT-20141103-130423/bin/tomcat-juli.jar]
> > from classpath
> > 28-Nov-2014 16:09:09.128 FINE [localhost-startStop-1]
> > org.apache.catalina.loader.WebappClassLoader.loadClass
> > loadClass(org.apache.jasper.servlet.JasperInitializer, false)
> > 28-Nov-2014 16:09:09.128 FINE [localhost-startStop-1]
> > org.apache.catalina.loader.WebappClassLoader.loadClass Delegating to
> parent
> > classloader1 java.net.URLClassLoader@1c47dd5
> > 28-Nov-2014 16:09:09.128 FINE [localhost-startStop-1]
> > org.apache.catalina.loader.WebappClassLoader.loadClass Loading class from
> > parent
> > ...
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.jasper.compiler.JspRuntimeContext.<init> Parent class loader
> is:
> > WebappClassLoader
> > context: /manager
> > delegate: false
> > ----------> Parent Classloader:
> > java.net.URLClassLoader@1c47dd5
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.jasper.compiler.JspRuntimeContext.initClassPath Compilation
> > classpath initialized: ...
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.jasper.servlet.JspServlet.init Scratch dir for the JSP engine
> > is: ...
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.jasper.servlet.JspServlet.init IMPORTANT: Do not modify the
> > generated servlets
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.tomcat.util.modeler.Registry.registerComponent Managed=
> >
> Catalina:type=JspMonitor,WebModule=//localhost/manager,name=jsp,J2EEApplication=none,J2EEServer=none
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.tomcat.util.modeler.BaseModelMBean.preRegister preRegister
> > org.apache.jasper.servlet.JspServlet@1067d4c
> >
> Catalina:type=JspMonitor,WebModule=//localhost/manager,name=jsp,J2EEApplication=none,J2EEServer=none
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.catalina.core.StandardContext.startInternal Starting completed
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.catalina.util.LifecycleBase.setStateInternal Setting state for
> >
> [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/manager]]
> > to [STARTING]
> > 28-Nov-2014 16:09:28.362 FINE [localhost-startStop-1]
> > org.apache.catalina.util.LifecycleBase.setStateInternal Setting state for
> >
> [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/manager]]
> > to [STARTED]
> > ...
> > 28-Nov-2014 16:09:28.377 FINE [main]
> > org.apache.catalina.util.LifecycleBase.setStateInternal Setting state for
> > [StandardServer[8005]] to [STARTED]
> > 28-Nov-2014 16:09:28.377 INFO [main]
> > org.apache.catalina.startup.Catalina.start Server startup in 21443 ms
> >
> > Searching the web and the mail archives resulted in quite a few hints how
> > to improve performance generally.
> > I followed the instructions on
> wiki.apache.org/tomcat/HowTo/FasterStartUp,
> > in particular:
> > - Disabling JAR scanning (metadata-complete="true", <absolute-ordering/>
> > in the <web-app>.
> > - in catalina.properties:
> > tomcat.util.scan.StandardJarScanFilter.jarsToSkip=\*.jar
> > org.apache.catalina.startup.ContextConfig.jarsToSkip=\*.jar
> > org.apache.catalina.startup.TldConfig.jarsToSkip=\*.jar
> > - Removing the web socket API and implementation JARs
> > - Changing the entropy source (-Djava.security.egd=file:/dev/./urandom)
> >
> > These changes were in effect when the above logs were written. While
> these
> > changes resulted in a faster startup process (on both tomcats), I found
> no
> > clue about why tomcat 8 takes longer in general to complete server
> startup.
> >
> > I compared the jars loaded in both cases and tried to remove the two
> > additional jars in tomcat 8.
> > I compared the configurations of both tomcats and aligned the registered
> > listeners and disabled XMLValidation and XMLNameSpaceAware in
> server.xml. I
> > reduced the bigger MIME-Mapping in web.xml of tomcat 8
> > to the MIME-Mapping of tomcat 6.
> > I compared the number of classes and ressources loaded and the number of
> > ClassNotFound- or RessourceNotFound-Messages in the log files.
> >
> > None of these actions resulted in new insights to the problem.
> >
> > Any advice on this subject or any hint to additional ressources that
> could
> > help would be appreciated very much.
> >
> > Best regards,
> > Gero
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message