SpringBoot2.0 优雅停机

最近新建了个SpringBoot2.0的项目,因为原来一直使用的是传统的Tomcat部署war包的形式,所以这次SpringBoot内置Tomcat部署jar包的时候遇到了很多问题。其中一个就是因为没有外置的Tomcat容器导致无法按原来的方法优雅停机。
经过了反复的搜索发现SpringBoot可以引用spring-boot-starter-actuator来暴露shutdown端口。

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

在pom文件中加入上面的代码就OK了。
再在application.properties中加入下面的配置,这里注意2.0和1.0的配置项不一样。

management.endpoint.shutdown.enabled=true

将下面的地址端口换成实际的地址端口,之后输入命令行。

curl -X POST localhost:port/actuator/shutdown

你就会发现404了!这就是最坑的地方,在SpringBoot1.0的时候这里已经收到{"message": "Shutting down, bye..."}了。但是2.0还需要在application.properties加入一个配置项,将shutdown接口暴露出去。

management.endpoints.web.exposure.include=shutdown

这时SpringBoot2.0就可以优雅停机了,当然随便这样暴露接口并不安全,再加入一些安全的配置就OK了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,958评论 6 342
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,948评论 18 139
  • 摘要 看完本文你将掌握如下知识点: 如何搭建一个SpringBoot项目 SpringBoot自动配置原理 Spr...
    飘逸峰阅读 7,188评论 1 41
  • 粒子效果是一个很好玩很有趣的东西,前几天有人问我vue怎么使用粒子效果,其实vue使用一些简单粒子效果很容易,下面...
    youth_MrZhou阅读 1,307评论 4 1
  • 我要找到梦中之人
    修敛阅读 150评论 0 0