此版本仍在开发中,尚未被视为稳定版本。如需最新稳定版本,请使用 Spring Boot 4.0.4!spring-doc.cadn.net.cn

优雅停机

默认情况下,所有三种嵌入式Web服务器(Jetty、Reactor Netty和Tomcat)以及基于响应式和Servlet的Web应用程序都启用了优雅关闭。 在关闭应用程序上下文的过程中发生,并在停止SmartLifecycle beans的最早阶段执行。 此停止处理使用超时时间,提供一个宽限期,在此期间现有请求将被允许完成,但不再接受新请求。spring-doc.cadn.net.cn

要配置超时时间,请配置 spring.lifecycle.timeout-per-shutdown-phase 属性,如下例所示:spring-doc.cadn.net.cn

spring.lifecycle.timeout-per-shutdown-phase=20s
spring:
  lifecycle:
    timeout-per-shutdown-phase: "20s"
如果您的集成开发环境(IDE)未发送正确的 SIGTERM 信号,则其中的关闭操作可能是立即终止,而非优雅关闭。 有关更多详细信息,请参阅您所用 IDE 的相关文档。

在宽限期拒绝请求

新请求被拒绝的确切方式取决于所使用的Web服务器。 实现方式可能是在网络层停止接受请求,也可能返回带有特定HTTP状态码或HTTP头的响应。 持久连接的使用还可能改变请求被拒绝的方式。spring-doc.cadn.net.cn

有关与您的Web服务器一起使用的特定方法的更多信息,请参阅 shutDownGracefully API 文档中的 TomcatWebServer.shutDownGracefully(GracefulShutdownCallback)NettyWebServer.shutDownGracefully(GracefulShutdownCallback)JettyWebServer.shutDownGracefully(GracefulShutdownCallback)

Jetty、Reactor Netty 和 Tomcat 将在网络层停止接受新请求。spring-doc.cadn.net.cn

禁用优雅关闭

要禁用优雅关闭,请配置 server.shutdown 属性,如下例所示:spring-doc.cadn.net.cn

server.shutdown=immediate
server:
  shutdown: "immediate"