[英]Spring Boot Shutdown Lifecycle
这是我关闭 Spring 引导应用程序时看到的日志序列。 有人可以让我知道这是否是应该发生的事件的正确发生吗?
2022-09-15 15:30:20.458 INFO 81214 --- [ Thread-16] o.s.s.concurrent.ThreadPoolTaskExecutor : Shutting down ExecutorService 'applicationTaskExecutor'
2022-09-15 15:30:22.518 INFO 81214 --- [ Thread-16] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default'
2022-09-15 15:30:22.520 INFO 81214 --- [ Thread-16] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated...
2022-09-15 15:30:22.529 INFO 81214 --- [ Thread-16] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.
根据我的理解,我认为 ExecutorService 是主要的 ThreadPoolExecutor,应该是最后一个关闭的。 应用程序和数据库之间建立的连接是否没有安全关闭?
这是有道理的,因为您首先关闭了应用程序池,这意味着无法安排任何新任务通过该点。 最有可能的关闭例程正在等待所有已调度和执行的任务完成。
由于其中任何一个都可以使用数据库连接,因此数据库关闭被推迟。
完成后,关闭 db connectiin 池是安全的。按照设计,再也不会使用它了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.