2013/12/5 David Rees <dree...@gmail.com>: > Since upgrading to 7.0.47 from 7.0.42, I've seen a very severe > performance hit during startup. > > One Tomcat instance with a lot of webapps slowed down from ~33 seconds > to ~180 seconds. It appears to be related to jar-scanning - If I > change catalina.properties' > tomcat.util.scan.DefaultJarScanner.jarsToSkip to *.jar, startup > performance is actually about 10% better than before, but with the > expected app-breakage. If I go and modify jarsToSkip to manually > exclude only the jars I know should be excluded, performance is near > normal - about 10-15% worse than 7.0.42 which is acceptable but > obviously could still be better. > > I've reviewed the changelog between 7.0.42 and 7.0.47, but can't find > anything that might cause this. > > All the deployed apps are using servlet api 2.5. > > I've reviewed the FasterStartUp startup wiki and the apps already use > metadata-complete="true" in the web.xml.
Good. Remove the tomcat7-websocket.jar library if you do not need it. This library (added in 7.0.47, a JSR-356 Java WebSocket 1.0 implementation) has a ServletContainerInitializer and thus forces Tomcat to perform annotation scanning. If you read the "FasterStartUp" page carefully, it is explained there. > Any other suggestions? Update the apps to servlet api 3.0 and put in > an empty <absolute-ordering /> element? > > Is there a way to get the scanners to log whether or not a scan found > anything so they can be added to the appropriate jarsToSkip parameter? > I've only found that the TLD scanner does this unless I'm missing > something. > > Any other ideas? > Best regards, Konstantin Kolinko --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org