Tomcat 服务器加载时间很长

Tomcat server taking very long time to load

我在前端编程方面相当初级。我对使用 Javascript/react 等有点自在,但我真的不知道服务器端的任何东西(我知道 tomcat/servers 但没什么重要的)。我的团队也是如此

我有一个网络应用程序正在尝试了解。对于开发,我正在使用 Intellij 运行(我认为是两个 tomcat 服务器?)一个应用程序,以及该应用程序的 UI,两个服务器端(我认为这是因为我看到两个本地主机)

长话短说,运行完成这些需要很长时间(都需要 +105 秒)。即使我可以通过同时 运行 节省时间,我也想尝试理解为什么要花这么长时间。

通过控制台,这在我的水平上都是乱码,但是通过计时器,我看到正在执行的两个操作大约需要 70 秒

2017-08-03 00:56:21 9556 [main] INFO o.s.b.c.e.AnnotationConfigEmbeddedWebApplicationContext - Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@6743e411: startup date [Thu Aug 03 00:56:21 SGT 2017]; root of context hierarchy
2017-08-03 00:56:27 9556 [main] INFO  o.s.b.f.s.DefaultListableBeanFactory - Overriding bean definition for bean 'dataSource' with a different definition: replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari; factoryMethodName=dataSource; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Tomcat; factoryMethodName=dataSource; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Tomcat.class]]
.
.
.
2017-08-03 00:56:45 9556 [main] INFO  o.h.h.i.QueryTranslatorFactoryInitiator - HHH000397: Using ASTQueryTranslatorFactory
DmeInitializer.initialize Application initialized
2017-08-03 00:57:51 9556 [main] INFO  c.f.f.c.s.t.pools.RulesManager - Compiling processing rules for Compare 26

如果这也很重要,根据日志,

2017-08-03 00:56:29 9556 [main] INFO  o.a.catalina.core.StandardEngine - 
Starting Servlet Engine: Apache Tomcat/8.5.4

任何人都可以就如何减少这些 运行 的时间提出任何建议吗?这非常重要,因为除非我重新启动 UI servlet

,否则我在 UI 中所做的任何更改都不会反映出来

问题的另一部分是我不熟悉 Gradle(某种似乎与 servlet 配置相关的项目经理),这让事情变得有点困难。在 intellij 中,除了定义工作区和一些自定义配置(通过 VM 选项)之外,看起来还定义了某种 class。我计划找到并研究它,尽管我认为它不会导致任何加速

半解决了我的问题 我遵循了这个 link: https://dzone.com/articles/spring-boot-application-live-reload-hot-swap-with (必须改变第一步来做同样的事情,但使用 gradle 即添加

compile("org.springframework.boot:spring-boot-devtools")

到 gradle.build(正确的,不是随机的)。

然后在完成剩余步骤后,将此行添加到 application.properties:

spring.thymeleaf.cache= false

那么当 运行 连接 tomcat servlet 时,不要只是 运行 它们,您需要 运行 它们处于调试模式

完成上述所有操作后,可以通过以下方式工作: 当 servlet 在 intellij 中 运行ning 时 - 更改 UI 代码 - 保存它(在我的例子中我使用的是记事本++而不是intellij - 返回 intellij(只需将 window 置于焦点) - 然后返回浏览器并刷新浏览器

现在每次更改时都等待 100 秒,我只需要在开始时等待 100 秒,而且它