優(yōu)化SpringBoot程序啟動(dòng)速度的實(shí)現(xiàn)
Spring Boot 程序優(yōu)化
一、延遲初始化Bean
一般在 SpringBoot 中都擁有很多的耗時(shí)任務(wù),比如數(shù)據(jù)庫(kù)建立連接、初始線程池的創(chuàng)建等等,我們可以延遲這些操作的初始化,來(lái)達(dá)到優(yōu)化啟動(dòng)速度的目的。Spring Boot 2.2 版本后引入 spring.main.lazy-initialization
屬性,配置為 true 會(huì)將所有 Bean 延遲初始化。
spring: main: lazy-initialization: true
二、創(chuàng)建掃描索引
Spring5 之后提供了spring-context-indexer
功能,通過(guò)提前生成@ComponentScan
的掃描索引,解決在類過(guò)多時(shí)導(dǎo)致掃描速度過(guò)慢的問(wèn)題。
我們只需要將依賴引入,然后在啟動(dòng)類上使用@Indexed
注解即可。這樣在程序編譯打包之后會(huì)生成META-INT/spring.components
文件,當(dāng)執(zhí)行@ComponentScan
掃描類時(shí),會(huì)讀取索引文件,提高掃描速度。
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-indexer</artifactId> <optional>true</optional> </dependency>
@Indexed @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
三、升級(jí)SpringBoot新版本
SpringBoot每次升級(jí)都會(huì)對(duì)性能進(jìn)行一些優(yōu)化,目前最新版已經(jīng)來(lái)到了3
,Spring官方對(duì)性能優(yōu)化做的已經(jīng)非常好,能大大提高程序的編譯以及啟動(dòng)速度。
到此這篇關(guān)于優(yōu)化SpringBoot程序啟動(dòng)速度的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)優(yōu)化SpringBoot程序啟動(dòng)速度內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java?DelayQueue實(shí)現(xiàn)延時(shí)任務(wù)的示例詳解
DelayQueue是一個(gè)無(wú)界的BlockingQueue的實(shí)現(xiàn)類,用于放置實(shí)現(xiàn)了Delayed接口的對(duì)象,其中的對(duì)象只能在其到期時(shí)才能從隊(duì)列中取走。本文就來(lái)利用DelayQueue實(shí)現(xiàn)延時(shí)任務(wù),感興趣的可以了解一下2022-08-08java實(shí)現(xiàn)163郵箱發(fā)送郵件到qq郵箱成功案例
這篇文章主要為大家分享了java實(shí)現(xiàn)163郵箱發(fā)送郵件到qq郵箱成功案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05Array?Index?Out?of?Bounds:數(shù)組越界錯(cuò)誤解決方案及調(diào)試技巧
數(shù)組越界訪問(wèn)是指訪問(wèn)數(shù)組中超出其有效索引范圍的元素,這是一種常見(jiàn)的編程錯(cuò)誤,可能導(dǎo)致程序崩潰或數(shù)據(jù)損壞,下面這篇文章主要給大家介紹了關(guān)于Array?Index?Out?of?Bounds:數(shù)組越界錯(cuò)誤解決方案及調(diào)試技巧的相關(guān)資料,需要的朋友可以參考下2024-08-08實(shí)例解析Java設(shè)計(jì)模式編程中的適配器模式使用
本篇文章主要通過(guò)實(shí)例對(duì)適配器模式進(jìn)行了詳解,需要的朋友可以參考下2017-04-04Java虛擬機(jī)類加載器之雙親委派機(jī)制模型案例
這篇文章主要介紹了Java虛擬機(jī)類加載器之雙親委派機(jī)制模型案例,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08使用OkHttp3以Multipart/Form-Data方式上傳文件方式
在開(kāi)發(fā)過(guò)程中,使用multipart/form-data進(jìn)行圖片上傳是一個(gè)常見(jiàn)的需求,本文通過(guò)一個(gè)實(shí)際案例,講解了如何在項(xiàng)目中添加OkHttp3庫(kù)依賴,并使用multipart/form-data進(jìn)行圖片上傳,首先,介紹了ContentType的概念和常見(jiàn)類型2024-10-10SpringCloud服務(wù)之間Feign調(diào)用不會(huì)帶上請(qǐng)求頭header的解決方法
在Spring?Cloud中,使用Feign進(jìn)行服務(wù)之間的調(diào)用時(shí),默認(rèn)情況下是不會(huì)傳遞header的,這篇文章給大家介紹SpringCloud服務(wù)之間Feign調(diào)用不會(huì)帶上請(qǐng)求頭header的解決方法,感興趣的朋友一起看看吧2024-01-01