如何优化提高tomcat启动速度

邂逅ttJW16
推荐于2017-11-26 · TA获得超过4867个赞
知道小有建树答主
回答量:1046
采纳率:0%
帮助的人:2418万
展开全部
在tomcat启动的时候,我们可以做一些优化设置来使得tomcat的启动更快速,下面是一些常见的优化加速启动的方法建议(以tomcat-7.+为例说明)。 1、 Jars包 1.1、将一些不必要的jar包去掉,当tomcat启动加载jar包的时候,会去搜寻每个jar包里的class文件,这些都会耗费一些时间,如果你把不必要的jar包去掉了,很显然会节省时间。 1.2、你可以将一些与TLD files、注解、网络碎片无关的jar包加入到属性tomcat.util.scan.DefaultJarScanner.jarsToSkip的值中,这可以在conf/catalina.properties中进行设置。2、 缓存 你可以在bin/catalina.sh中设置jvm所能使用到的缓存大小,如下: JAVA_OPTS=’-Xms1024m -Xmx1024m’3、 配置文件 Tomcat的配置比如server.xml是xml文件,而xml的解析也是要花时间的,如果我们能将xml配置文件尽可能地弄得简洁一些,比如去掉一些没有用到的节点,这也有助于减少启动的时间,虽然这个节省的时间看来很少。4、 应用程序 4.1、确保你程序在启动的时候没有一些处理很耗时的地方。 4.2、删除掉tomcat自带的目录webapps及下面的所有内容,不然的话每次启动的时候都会加载这些自带的例子。 4.3、修改WEB-INF/web.xml文件,在默认的情况下<web-app>中的属性metadata-complete的值为false,也就是这样:<web-app metadata-complete=”false” >,这种情况下,tomcat在启动时会去自动扫描是否有注解及网络碎片,如果你不想tomcat这样做,你可以将metadata-complete的值设为true。5、 并行启动多个应用程序 默认情况下,假设在一个tomcat下你有多个应用,那么启动的时候,这些应用程序都是依次启动的,除非所有应用全部启动完毕,tomcat才会启动完成,但从Tomcat 7.0.23+开始,你可以配置多个应用程序并行启动了!
雪V歌
2018-06-28 · 知道合伙人数码行家
雪V歌
知道合伙人数码行家
采纳数:78696 获赞数:222915
泉州兴瑞发公司2015-2017最佳优秀员工。

向TA提问 私信TA
展开全部
在tomcat启动的时候,我们可以做一些优化设置来使得tomcat的启动更快速,下面是一些常见的优化加速启动的方法建议(以tomcat-7.+为例说明)。
1、 Jars包 1.1、将一些不必要的jar包去掉,当tomcat启动加载jar包的时候,会去搜寻每个jar包里的class文件,这些都会耗费一些时间,如果你把不必要的jar包去掉了,很显然会节省时间。 1.2、你可以将一些与TLD files、注解、网络碎片无关的jar包加入到属性tomcat.util.scan.DefaultJarScanner.jarsToSkip的值中,这可以在conf/catalina.properties中进行设置。2、 缓存 你可以在bin/catalina.sh中设置jvm所能使用到的缓存大小,如下: JAVA_OPTS=’-Xms1024m -Xmx1024m’3、 配置文件 Tomcat的配置比如server.xml是xml文件,而xml的解析也是要花时间的,如果我们能将xml配置文件尽可能地弄得简洁一些,比如去掉一些没有用到的节点,这也有助于减少启动的时间,虽然这个节省的时间看来很少。4、 应用程序 4.1、确保你程序在启动的时候没有一些处理很耗时的地方。 4.2、删除掉tomcat自带的目录webapps及下面的所有内容,不然的话每次启动的时候都会加载这些自带的例子。 4.3、修改WEB-INF/web.xml文件,在默认的情况下<web-app>中的属性metadata-complete的值为false,也就是这样:<web-app metadata-complete=”false” >,这种情况下,tomcat在启动时会去自动扫描是否有注解及网络碎片,如果你不想tomcat这样做,你可以将metadata-complete的值设为true。5、 并行启动多个应用程序 默认情况下,假设在一个tomcat下你有多个应用,那么启动的时候,这些应用程序都是依次启动的,除非所有应用全部启动完毕,tomcat才会启动完成,但从Tomcat 7.0.23+开始,你可以配置多个应用程序并行启动了!
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
徭冬殷秀敏
2020-03-08 · TA获得超过3877个赞
知道小有建树答主
回答量:3048
采纳率:33%
帮助的人:465万
展开全部
如何优化提高tomcat启动速度
在tomcat启动的时候,我们可以做一些优化设置来使得tomcat的启动更快速,下面是一些常见的优化加速启动的方法建议(以tomcat-7.+为例说明)。
1、
Jars包
1.1、将一些不必要的jar包去掉,当tomcat启动加载jar包的时候,会去搜寻每个jar包里的class文件,这些都会耗费一些时间,如果你把不必要的jar包去掉了,很显然会节省时间。
1.2、你可以将一些与TLD
files、注解、网络碎片无关的jar包加入到属性
tomcat.util.scan.DefaultJarScanner.jarsToSkip的值中,这可以在conf/catalina.properties中进行设置。
2、
缓存
你可以在bin/catalina.sh中设置jvm所能使用到的缓存大小,如下:
JAVA_OPTS=’-Xms1024m
-Xmx1024m’
3、
配置文件
Tomcat的配置比如server.xml是xml文件,而xml的解析也是要花时间的,如果我们能将xml配置文件尽可能地弄得简洁一些,比如去掉一些没有用到的节点,这也有助于减少启动的时间,虽然这个节省的时间看来很少。
4、
应用程序
4.1、确保你程序在启动的时候没有一些处理很耗时的地方。
4.2、删除掉tomcat自带的目录webapps及下面的所有内容,不然的话每次启动的时候都会加载这些自带的例子。
4.3、修改WEB-INF/web.xml文件,在默认的情况下<web-app>中的属性metadata-complete的值为false,也就是这样:<web-app
metadata-complete=”false”
>,这种情况下,tomcat在启动时会去自动扫描是否有注解及网络碎片,如果你不想tomcat这样做,你可以将metadata-complete的值设为true。
5、
并行启动多个应用程序
默认情况下,假设在一个tomcat下你有多个应用,那么启动的时候,这些应用程序都是依次启动的,除非所有应用全部启动完毕,tomcat才会启动完成,但从Tomcat
7.0.23+开始,你可以配置多个应用程序并行启动了!你可以通过修改配置文件中Host里面的startStopThreads这个属性的值来达到这个目的,将多个应用startStopThreads的值设为不同即可。
6、
Entropy
Source
Tomcat
7+严重依赖SecureRandom这个类为它的session
id或其它地方取得随机数值,这取决于你的JRE,它有可能在tomcat启动时造成非常大的耗时,比如,在子猴启动tomcat-7.0.26的时候,它耗时近25秒!
INFO:
Creation
of
SecureRandom
instance
for
session
ID
generation
using
[SHA1PRNG]
took
[24,790]
milliseconds.
要解决这个问题,可以通过配置JRE使用非阻塞的Entropy
Source,在bin/
catalina.sh中加入这么一行:-Djava.security.egd=file:/dev/./urandom
即可。
加入后我再启动tomcat,整个启动下降到仅耗时Server
startup
in
912
ms。
以上内容由子猴翻译自tomcat官方网站。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式