【问题标题】:Tomcat is slow on my VM, but not in EclipseTomcat 在我的虚拟机上很慢,但在 Eclipse 中却没有
【发布时间】:2017-09-29 00:36:24
【问题描述】:

我有一个以前在我的 VM 上这样部署的 web 应用程序:

  • 一场包含核心的战争
  • 通过将所有依赖项的 JAR 添加到 CLASSPATH 中,将它们提供给 Tomcat

=> 我的应用程序启动大约需要 1 分钟

我正在努力在该 Web 应用程序上应用一些“最佳实践”,我首先致力于包含依赖项。现在 webapp 看起来像这样:

  • 一场包含核心(WEB-INF/类)和所有依赖项(WEB-INF/lib)的战争

在我的 Eclipse 中,启动服务器时没有延迟,大约需要 2 分钟。但在我的虚拟机上,现在大约需要 5 分钟。

我想知道旧的 webapp 部署是否是一个好习惯?如果有那么长的启动时间是正常的(对我来说)。

谢谢。

【问题讨论】:

  • 如果我们对您的机器规格、分配给服务器的内存量等一无所知。我想不可能告诉您原因。
  • 在我的世界里,一分钟对于开始任何事情都是极其漫长的。

标签: java spring tomcat web-applications


【解决方案1】:

如果您在无头服务器上启动 Tomcat,则可能需要很长时间才能为生成 sessionId 的 SecureRandom 收集足够的熵。然而,这应该只影响启动。 您可以在此处阅读有关How do I make Tomcat startup faster 的更多信息。

否则,您必须查看 CPU 和内存利用率,并启用信息/调试日志记录,以便查看 Tomcat 使用时间的位置。

【讨论】:

    【解决方案2】:

    在我的 Eclipse 中,我将 eclipse.ini 修改为 -Xms512m -Xmx2048m -XX:MaxPermSize=2048m

    并在我修改的eclipse中的tomcat属性中, -Xms512m -Xmx1024m -XX:PermSize=1024m -XX:MaxPermSize=1024m

    ///我的机器有 8GB 内存

    【讨论】:

      猜你喜欢
      • 2011-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-20
      • 1970-01-01
      • 2016-04-05
      • 2013-01-30
      • 1970-01-01
      相关资源
      最近更新 更多