Spring Boot 优雅停机配置与实现
在微服务架构中,优雅停机(Graceful Shutdown)是一项非常重要的功能,它保证了应用在关闭时能够处理完当前的请求、释放资源,并平滑过渡到关闭状态。在上一篇文章中已经介绍优雅停机:分布式服务的关机艺术-01。Spring Boot 提供了对优雅停机的原生支持,但如果你想进一步增强对停机过程的控制,可以借助 spring-boot-starter-actuator 来实现 HTTP 接口触发的优雅停机。
配置 Spring Boot 实现优雅停机
要在 Spring Boot 中启用优雅停机,你只需要在 application.properties 或 application.yml 中配置以下内容:
server.shutdown=graceful
这条配置会让 Spring Boot 在收到 SIGTERM(通常由 kill -15 命令发送)信号时,执行优雅停机过程。优雅停机过程包括以下几个步骤:
- 结束接收新请求:服务器停止接收新的请求,防止新的任务被分配。
- 等待现有请求处理完成:等待当前正在处理的请求完成。对于一些长时间运行的任务,这段时间是非常关键的。
- 关闭资源:关闭数据库连接、文件句柄等资源。
- 应用退出:最后,Spring Boot 会正常关闭应用程序

680

被折叠的 条评论
为什么被折叠?



