在K8s中,当我们实现滚动升级之前,务必要实现应用级别的优雅停机。否则滚动升级时,还是会影响到业务。本文介绍SpringBoot应用实现优雅停机。此次教程基于SpringBoot 2.5.0。
1. 加入必要依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
2. 配置SpringBoot应用
默认情况下,SpringBoot是直接关机的,所以,需要将优雅停机配置打开。在applicatoin.yaml中配置:
spring:
application:
name: demo
# 停机过程超时时长设置了20s,超过20s,直接