我从Tomcat 7.0.54升级到8.0.15,将openSSL升级到1.0.1k,使用APR 1.5.1将tcnative升级到最新的1.1.32.
但是,Tomcat现在比以前慢了大约2到3倍.最值得注意的是,部署WAR文件需要更长的时间.
雄猫7
Jan 20, 2015 3:39:36 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deployment of web application archive <PATH>\file.war has finished in 433 ms
Run Code Online (Sandbox Code Playgroud)
雄猫8
Jan 21, 2015 2:27:01 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deployment of web application archive <PATH>\file.war has finished in 4,310 ms
Run Code Online (Sandbox Code Playgroud)
所有WAR文件都会发生这种情况,所有这些都是从毫秒到大约5秒.
我从server.xml中删除了JasperListener,因为它似乎已被删除.
unpackWARs="false"
autoDeploy="true"
Run Code Online (Sandbox Code Playgroud)
如果设置为true(至少不显着),unpackWars没有区别.我认为它可能是8.0.17中修复的注释扫描问题,但没有运气.
我注意到catalina.properties中的jarsToSkip已经改变了
tomcat.util.scan.DefaultJarScanner.jarsToSkip to
tomcat.util.scan.StandardJarScanFilter.jarsToSkip
Run Code Online (Sandbox Code Playgroud)
并删除了org.apache.catalina.startup.TldConfig.jarsToSkip并转到context.xml
<JarScanner>
<JarScanFilter tldSkip="websocket-api.jar,tomcat-websocket.jar"/>
</JarScanner>
Run Code Online (Sandbox Code Playgroud)
然而,这似乎都没有让我回到tomcat 7的性能.这样做的一个动作是删除websocket jar.但是我们需要它们.这让我得出的结论是,它们仍然被扫描,即使它们应该被跳过.
我错过了什么吗?context.xml是否与catalina.properties jarsToSkip不同?