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了。
相關文章
- rocketmq優雅停機往事MQ
- Spring Boot 系列:最新版優雅停機詳解Spring Boot
- 你的Kubernetes Java應用優雅停機了嗎?Java
- SOFAJRaft原始碼閱讀-ShutdownHook如何優雅的停機Raft原始碼Hook
- 這是一篇優雅的Springboot2.0使用手冊Spring Boot
- NodeJS Docker 打包全面優化:優雅停機、多階段、上下文目錄NodeJSDocker優化
- Java 如何實現優雅停服?刨根問底Java
- Dubbo原始碼學習--優雅停機原理及在SpringBoot中遇到的問題原始碼Spring Boot
- 什麼是線上優雅停機和調整執行緒池引數?執行緒
- 如何實現線上優雅停機和調整執行緒池引數?執行緒
- Spring Boot 2.3.0正式釋出:優雅停機、配置檔案位置萬用字元新特性一覽Spring Boot字元
- 再談優雅重試(retry)機制
- Golang優化-優雅退出Golang優化
- 優雅的PromiseKitPromise
- 優雅 VS 效能
- 如何設計一個優雅的心跳機制
- 如何優雅地學習計算機2<-->Helloworld計算機
- 如何優雅的搞垮伺服器,再優雅的救活伺服器
- 使用 Guava Retry 優雅的實現重試機制Guava
- 用WindowsAppSDK(WASDK)優雅的開發上位機應用WindowsAPP
- 如何優雅使用 vuexVue
- 優雅的使用UITableViewUIView
- 如何優雅地求和?
- 優雅的程式碼
- Excel優雅匯出Excel
- 停機問題
- SpringBoot2.0應用(五):SpringBoot2.0整合MyBatisSpring BootMyBatis
- SpringBoot2.0應用(二):SpringBoot2.0整合ActiveMQSpring BootMQ
- SpringBoot2.0應用(三):SpringBoot2.0整合RabbitMQSpring BootMQ
- 霧霾殺機肆虐,如何優雅地對抗?
- 類的優雅寫法
- 如何優雅的使用介面
- React事件優雅繫結React事件
- 如何優雅地使用 macOSMac
- 如何優雅的寫Markdown
- Tomcat 優雅關閉之路Tomcat
- EventBus的優雅封裝封裝
- 服務優雅上下線