问题遇到的现象和发生背景
speingboot项目在linux上启动非常慢,需要两三分钟,项目本身之连接了数据库。
启动过程日志
2022-11-22 10:01:45.601 [main] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.46]
2022-11-22 10:01:45.683 [main] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/api] - Initializing Spring embedded WebApplicationContext
2022-11-22 10:01:45.683 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2565 ms
2022-11-22 10:03:08.071 [main] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8080"]
2022-11-22 10:03:08.144 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '/api'
2022-11-22 10:03:08.165 [main] INFO com.zjzhd.airport.UELocApplication - Started UELocApplication in 166.052 seconds (JVM running for 166.545)
2022-11-22 10:03:08.166 [main] INFO o.s.boot.availability.ApplicationAvailabilityBean - Application availability state LivenessState changed to CORRECT
2022-11-22 10:03:08.167 [main] INFO o.s.boot.availability.ApplicationAvailabilityBean - Application availability state ReadinessState changed to ACCEPTING_TRAFFIC
2022-11-22 10:05:56.379 [http-nio-8080-exec-1] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/api] - Initializing Spring DispatcherServlet 'dispatcherServlet'
2022-11-22 10:05:56.379 [http-nio-8080-exec-1] INFO org.springframework.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet'
2022-11-22 10:05:56.381 [http-nio-8080-exec-1] INFO org.springframework.web.servlet.DispatcherServlet - Completed initialization in 2 ms
2022-11-22 10:05:56.818 [http-nio-8080-exec-1] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
这其中可以看到耗费时间比较长的步骤
2022-11-22 10:01:45.683 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2565 ms
2022-11-22 10:03:08.071 [main] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8080"]
2022-11-22 10:03:08.167 [main] INFO o.s.boot.availability.ApplicationAvailabilityBean - Application availability state ReadinessState changed to ACCEPTING_TRAFFIC
2022-11-22 10:05:56.379 [http-nio-8080-exec-1] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/api] - Initializing Spring DispatcherServlet 'dispatcherServlet'
我想要达到的结果
- 我想要知道可能的解决方法
- 一些如何分析的思路