2017-08-02 137 views
0

我的前端編程相當低級。我對使用Javascript/react等有點舒服,但我真的不知道任何服務器端(我知道的Tomcat /服務器,但沒有什麼重要的)。同樣是說我的團隊Tomcat服務器花費很長時間來加載

我有一個Web應用程序,我試圖理解。對於開發,我使用Intellij來運行(我認爲是兩個tomcat服務器?)應用程序和該應用程序的用戶界面,兩個服務器端(我認爲這是因爲我看到兩個本地主機)

長話短說,運行這些需要很長時間(都需要+105秒)。即使我可以通過同時運行兩個來節省時間,但我想試着理解爲什麼這麼長時間。

通過控制檯去,這都是廢話,在我的水平,而是由定時去,我看到正在做兩個動作佔約70秒

2017-08-03 00:56:21 9556 [main] INFO o.s.b.c.e.AnnotationConfigEmbeddedWebApplicationContext - Refreshing org.springframework.boot[email protected]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中做出的任何更改都不會反映出來,除非我重新啓動UI servlet

另一個問題是我不熟悉Gradle(似乎與servlet相關的某種項目管理器配置),這使事情變得更加困難。除了定義工作區和一些自定義配置(通過VM選項)之外,在intellij中,它看起來好像有某種類被定義。我打算尋找和考慮,雖然我想這不會導致任何速度提升

回答

0

半解決我的問題 我跟着這個鏈接: 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 

THEN運行的Tomcat的servlet的時候,不要只運行它們,你需要在調試模式下運行

做上述所有的經過,這部作品是: 時的servlet中的IntelliJ 運行 - 製作你的UI代碼更改 -SAVE它(在我的情況我使用記事本+沒有的IntelliJ - 回去的IntelliJ(只是把窗口聚焦) - 然後返回到瀏覽器和

現在刷新瀏覽器而不是等我每次改變100秒時,我只需要等待100秒秒開頭一次,並且它的