AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當(dāng)前位置:首頁 > 科技  > 軟件

管理SpringBoot項(xiàng)目的三個(gè)強(qiáng)大的功能是否用過?

來源: 責(zé)編: 時(shí)間:2024-07-02 17:36:43 124觀看
導(dǎo)讀環(huán)境:SpringBoot2.7.181. 管理功能Admin Features通過指定spring.application.admin.enabled屬性,可以為應(yīng)用程序啟用管理員相關(guān)的功能。這在平臺(tái)MBeanServer上公開了SpringApplicationAdminMXBean。你可以使用這個(gè)特性

環(huán)境:SpringBoot2.7.18FbL28資訊網(wǎng)——每日最新資訊28at.com

1. 管理功能Admin Features

通過指定spring.application.admin.enabled屬性,可以為應(yīng)用程序啟用管理員相關(guān)的功能。這在平臺(tái)MBeanServer上公開了SpringApplicationAdminMXBean。你可以使用這個(gè)特性遠(yuǎn)程管理Spring Boot應(yīng)用程序。FbL28資訊網(wǎng)——每日最新資訊28at.com

spring:  application:    admin:      enabled: true

開啟管理功能后,你可以通過JConsole查看MBean對(duì)當(dāng)前的SpringBoot程序進(jìn)行簡(jiǎn)單的管理及查看。默認(rèn)JMX的名稱為:org.springframework.boot:type=Admin,name=SpringApplicationFbL28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片FbL28資訊網(wǎng)——每日最新資訊28at.com

在操作菜單中,我們可以通過shutdown關(guān)閉應(yīng)用程序,可以通過getProperty獲取應(yīng)用中的配置屬性信息。FbL28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片FbL28資訊網(wǎng)——每日最新資訊28at.com

獲取屬性信息:FbL28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片FbL28資訊網(wǎng)——每日最新資訊28at.com

自定義JMX名稱:FbL28資訊網(wǎng)——每日最新資訊28at.com

spring:  application:    admin:      enabled: true      jmx-name: com.pack:type=AKF,name=PackAPP

注意:這里jmx-name格式:xxx:type=yyy,name=zzzFbL28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片FbL28資訊網(wǎng)——每日最新資訊28at.com

2. 應(yīng)用退出

每個(gè)SpringApplication都向JVM注冊(cè)一個(gè)關(guān)閉掛鉤,以確保ApplicationContext在退出時(shí)正常關(guān)閉。所有標(biāo)準(zhǔn)的Spring生命周期回調(diào)(如DisposableBean接口或@PreDestroy注釋)都可以使用。FbL28資訊網(wǎng)——每日最新資訊28at.com

2.1 自定義退出碼

@Component@Order(-2)public class PackExitCodeGenerator implements ExitCodeGenerator {  @Override  public int getExitCode() {    System.out.println("PackExitCodeGenerator exit code 6...") ;    return 6 ;  }}

你可以定義多個(gè)實(shí)現(xiàn)了ExitCodeGenerator的類,通過@Order定義順序,而SpringBoot只會(huì)返回第一個(gè)非零的退出碼。FbL28資訊網(wǎng)——每日最新資訊28at.com

SpringBoot的退出操作是調(diào)用當(dāng)前容器ConfigurableApplicationContext#close方法。所以當(dāng)前容器中所有實(shí)現(xiàn)了DisposableBean或使用了@PreDestory注解他們對(duì)應(yīng)的回調(diào)方法都執(zhí)行。FbL28資訊網(wǎng)——每日最新資訊28at.com

2.2 自定義DisposableBean

@Componentpublic class AppComponent implements DisposableBean {  @Override  public void destroy() throws Exception {    System.out.println("Bean生命周期結(jié)束...") ;  }}

2.3 定義exit接口

@Resourceprivate ConfigurableApplicationContext context ;@GetMapping("")public Object exit() {  SpringApplication.exit(context) ;  return "exit" ;}

2.4 測(cè)試

調(diào)用上的接口后,你將在控制臺(tái)看到如下輸出FbL28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片FbL28資訊網(wǎng)——每日最新資訊28at.com

在關(guān)閉應(yīng)用程序之前SpringBoot會(huì)發(fā)布ExitCodeEvent事件FbL28資訊網(wǎng)——每日最新資訊28at.com

@Componentpublic class PackAppExitListener implements ApplicationListener<ExitCodeEvent> {  @Override  public void onApplicationEvent(ExitCodeEvent event) {    System.out.printf("監(jiān)聽到應(yīng)用退出事件,退出碼:%d%n", event.getExitCode()) ;  }}

結(jié)果輸出:FbL28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片FbL28資訊網(wǎng)——每日最新資訊28at.com

3. 應(yīng)用啟動(dòng)跟蹤

在應(yīng)用程序啟動(dòng)期間,SpringApplication和ApplicationContext執(zhí)行許多與應(yīng)用程序生命周期、bean生命周期甚至處理應(yīng)用程序事件相關(guān)的任務(wù)。有了ApplicationStartup, Spring框架允許你用StartupStep對(duì)象跟蹤應(yīng)用程序的啟動(dòng)順序。收集這些數(shù)據(jù)可以用于分析,或者只是為了更好地了解應(yīng)用程序啟動(dòng)過程。FbL28資訊網(wǎng)——每日最新資訊28at.com

你可以在設(shè)置SpringApplication實(shí)例時(shí)選擇ApplicationStartup實(shí)現(xiàn)。例如,要使用BufferingApplicationStartup,如下示例:FbL28資訊網(wǎng)——每日最新資訊28at.com

SpringApplication application = new SpringApplication(SpringbootComprehensiveApplication.class) ;application.setApplicationStartup(new BufferingApplicationStartup(2048)) ;application.run(args) ;

接下來需要通過可以通過Actuator暴露的端口,以JSON的形式查看信息。引入依賴FbL28資訊網(wǎng)——每日最新資訊28at.com

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

通過/startup接口查看Spring容器啟動(dòng)過程的完整信息。FbL28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片FbL28資訊網(wǎng)——每日最新資訊28at.com

在你的項(xiàng)目中你還可以注入ApplicationStartup,在自己的業(yè)務(wù)代碼中進(jìn)行監(jiān)控。FbL28資訊網(wǎng)——每日最新資訊28at.com

@Resourceprivate ApplicationStartup startup ;

這樣你就可以進(jìn)行start和end方法調(diào)用進(jìn)行記錄監(jiān)控了。FbL28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-98190-0.html管理SpringBoot項(xiàng)目的三個(gè)強(qiáng)大的功能是否用過?

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 一網(wǎng)打盡:12 個(gè) find() 函數(shù)在 Python 中的創(chuàng)意實(shí)踐

下一篇: 微服務(wù) | 微服務(wù)之Feign 與 Ribbon

標(biāo)簽:
  • 熱門焦點(diǎn)
  • 盧偉冰長(zhǎng)文解析K60至尊版 對(duì)Redmi有著里程碑式的意義

    在今天的Redmi后性能時(shí)代戰(zhàn)略發(fā)布會(huì)結(jié)束之后,Redmi總經(jīng)理盧偉冰又帶來了一篇長(zhǎng)文,詳解了為什么 Redmi 要開啟后性能時(shí)代?為什么選擇和 MediaTek、Pixelworks 深度合作?以及后性
  • 一加首款折疊屏!一加Open渲染圖出爐:罕見單手可握小尺寸

    8月5日消息,此前就有爆料稱,一加首款折疊屏手機(jī)將會(huì)在第三季度上市,如今隨著時(shí)間臨近,新機(jī)的各種消息也開始浮出水面。據(jù)悉,這款新機(jī)將會(huì)被命名為&ldquo;On
  • 如何正確使用:Has和:Nth-Last-Child

    我們可以用CSS檢查,以了解一組元素的數(shù)量是否小于或等于一個(gè)數(shù)字。例如,一個(gè)擁有三個(gè)或更多子項(xiàng)的grid。你可能會(huì)想,為什么需要這樣做呢?在某些情況下,一個(gè)組件或一個(gè)布局可能會(huì)
  • 使用LLM插件從命令行訪問Llama 2

    最近的一個(gè)大新聞是Meta AI推出了新的開源授權(quán)的大型語言模型Llama 2。這是一項(xiàng)非常重要的進(jìn)展:Llama 2可免費(fèi)用于研究和商業(yè)用途。(幾小時(shí)前,swyy發(fā)現(xiàn)它已從LLaMA 2更名為L(zhǎng)la
  • 一文掌握 Golang 模糊測(cè)試(Fuzz Testing)

    模糊測(cè)試(Fuzz Testing)模糊測(cè)試(Fuzz Testing)是通過向目標(biāo)系統(tǒng)提供非預(yù)期的輸入并監(jiān)視異常結(jié)果來發(fā)現(xiàn)軟件漏洞的方法??梢杂脕戆l(fā)現(xiàn)應(yīng)用程序、操作系統(tǒng)和網(wǎng)絡(luò)協(xié)議等中的漏洞或
  • 造車兩年股價(jià)跌六成,小米的估值邏輯變了嗎?

    如果從小米官宣造車后的首個(gè)交易日起持有小米集團(tuán)的股票,那么截至2023年上半年最后一個(gè)交易日,投資者將浮虧59.16%,同區(qū)間的恒生科技指數(shù)跌幅為52.78%
  • 超級(jí)標(biāo)準(zhǔn)版旗艦!iQOO 11S全球首發(fā)iQOO超算獨(dú)顯芯片

    上半年已接近尾聲,截至目前各大品牌旗下的頂級(jí)旗艦都已悉數(shù)亮相,而下半年即將推出的頂級(jí)旗艦已經(jīng)成為了數(shù)碼圈爆料的主流,其中就包括全新的iQOO 11S系
  • iQOO Neo8 Pro搶先上架:首發(fā)天璣9200+ 安卓性能之王

    經(jīng)過了一段時(shí)間的密集爆料,昨日iQOO官方如期對(duì)外宣布:將于5月23日推出全新的iQOO Neo8系列新品,官方稱這是一款擁有旗艦級(jí)性能調(diào)校的作品。隨著發(fā)布時(shí)
  • 聯(lián)想YOGA 16s 2022筆記本將要推出,屏幕支持觸控功能

    聯(lián)想此前宣布,將于11月2日19:30召開聯(lián)想秋季輕薄新品發(fā)布會(huì),推出聯(lián)想 YOGA 16s 2022 筆記本等新品。官方稱,YOGA 16s 2022 筆記本將搭載 16 英寸屏幕,并且是一
Top