优化SpringBoot程序启动速度的实现
作者:ThinkStu 时间:2023-09-28 13:04:52
Spring Boot 程序优化
一、延迟初始化Bean
一般在 SpringBoot 中都拥有很多的耗时任务,比如数据库建立连接、初始线程池的创建等等,我们可以延迟这些操作的初始化,来达到优化启动速度的目的。Spring Boot 2.2 版本后引入 spring.main.lazy-initialization
属性,配置为 true 会将所有 Bean 延迟初始化。
spring:
main:
lazy-initialization: true
二、创建扫描索引
Spring5 之后提供了spring-context-indexer
功能,通过提前生成@ComponentScan
的扫描索引,解决在类过多时导致扫描速度过慢的问题。
我们只需要将依赖引入,然后在启动类上使用@Indexed
注解即可。这样在程序编译打包之后会生成META-INT/spring.components
文件,当执行@ComponentScan
扫描类时,会读取索引文件,提高扫描速度。
<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);
}
}
三、升级SpringBoot新版本
SpringBoot每次升级都会对性能进行一些优化,目前最新版已经来到了3
,Spring官方对性能优化做的已经非常好,能大大提高程序的编译以及启动速度。
来源:https://blog.csdn.net/qq_35760825/article/details/128659210
标签:优化,SpringBoot,启动速度
0
投稿
猜你喜欢
Android 获取屏幕的多种宽高信息的示例代码
2021-07-10 06:07:10
Android封装实现短信验证码的获取倒计时
2023-06-28 22:57:23
Android可筛选的弹窗控件CustomFiltControl
2023-01-21 09:01:46
Jackson 反序列化时实现大小写不敏感设置
2021-11-18 06:17:18
C#实现多线程下载文件的方法
2022-04-24 10:59:43
Java matches类,Pattern类及matcher类用法示例
2022-02-21 22:39:52
解决C#中WebBrowser的DocumentCompleted事件不执行的实现方法
2021-07-07 22:59:06
阿里nacos+springboot+dubbo2.7.3统一处理异常的两种方式
2022-12-05 03:50:25
Java通过反射,如何动态修改注解的某个属性值
2022-08-22 04:10:51
C#使用NPOI将List数据导出到Excel文档
2022-12-18 12:28:09
Linux+Docker+SpringBoot+IDEA一键自动化部署的详细步骤
2023-08-12 15:25:39
快速解决Android适配底部返回键等虚拟键盘的问题
2021-10-25 14:50:23
Android控件之RatingBar自定义星级评分样式
2023-12-22 16:03:33
C# 获取文件夹里所有文件名的详细代码
2023-01-07 02:05:20
spring中的FactoryBean代码示例
2023-11-11 18:37:20
WindowsForm实现警告消息框的实例代码
2023-05-25 00:00:54
Android个人手机通讯录开发详解
2023-01-22 01:21:30
Android编程自定义线程池与用法示例
2021-11-27 14:46:53
java 使用HttpURLConnection发送数据简单实例
2023-12-12 01:44:00
java list去重操作实现方式
2021-09-22 13:26:08