我目前使用 tomcat 6 作为我的 Web 服务器。
我有一个非常小的应用程序,在服务器上部署应该不需要很长时间,但是我的 tomcat 启动时间太长。
它花费了大部分时间在后续步骤中。
信息:启动 Servlet 引擎:Apache Tomcat/6.0.16
我不知道为什么要花很多时间。停止服务器也是如此。我几乎尝试了我所知道的一切。我还尝试从工作区中删除服务器并从头开始。我不知道是什么问题。
您可以找出哪个库消耗了时间。当服务器以调试模式启动时,暂停其线程数次并检查堆栈跟踪。可能有一些库填充它的 Spring 应用程序上下文,编织建议的对象,初始化文件存储,等等。如果是这样,您将从堆栈跟踪中看到它。
您是否删除了所有随 tomcat 安装的默认 Web 应用程序?即使您的 webapp 很小,也可能有其他应用程序需要一些时间来安装。您可以从名为 catalina___.log 文件的服务器日志文件中检查这一点。
我知道这篇文章很旧,即使我想分享几个检查点,因为这些与tomcat版本无关......
我遇到了同样的问题,我按照以下步骤操作,现在我的服务器在 130 毫秒内启动。
这就是我尝试过的任何成功。
这可能是由于缺乏 Tomcat 所需的随机熵。
由于 SecureRandom,请参阅https://cwiki.apache.org/confluence/display/TOMCAT/HowTo+FasterStartUp#HowToFasterStartUp-EntropySource 和 Tomcat 7.0.57 上的缓慢启动
(编辑:第一个链接更新)
我猜您已将所有库 (JAR) 放在 WEB-INF/lib 文件夹中。而是将它们移动到单独的目录并使用 catalina.properties 中的 shared.loader 引用目录或 JAR