Spring Boot项目启动速度优化

1、配置自动配置排除列表,减少启动自动配置扫描,配置项spring.autoconfigure.exclude

2、启动类添加索引注解@Indexed,去除启动过程中 Components 的扫描步骤,直接从索引文件读取。

import org.springframework.stereotype.lndexed,

3、开启全局懒加载

优点:启动大幅增快

缺点:Bean 在业务访问的时候才加载,业务第一访问速度变慢(此缺点可以考虑注意点 2解决方案)

注意点:

  • 针对有依赖容器的工具类,需要增加@Lazy(faLse)和@Dependson 注解
  • 针对业务访问缓慢问题,可以选择在容器启动后自行做 Bean 加载,可以参考如下(此方案还是有缺点,自行体验)

4、开启部分懒加载,针对很少或者基本不会被访问的业务相关的 Bean,可以选择添加@Lazy注解开启懒加载

相关推荐
于指尖飞舞1 分钟前
java后端面试题(jvm极简)
java·开发语言·jvm
Seven972 分钟前
面试官:你们项目里的线程池是怎么用的?怎么管理的?
java
xieliyu.5 分钟前
Java数据结构:从0开始手搓Hash桶
java·数据结构·哈希算法
影视飓风TIM11 分钟前
C++ 核心语法笔记:拷贝构造、深浅拷贝与运算符重载
java·开发语言·javascript
极创信息16 分钟前
信创产品适配测试认证,域名和SSL是必须的吗?
java·开发语言·网络·python·网络协议·ruby·ssl
Y学院25 分钟前
Java 智能体开发实战:从核心架构到生产级落地,告别AI调用积木式编程
java·人工智能·架构
Javatutouhouduan35 分钟前
2026年Java面试核心讲(终极版)全网首次开源!
java·jvm·java多线程·java面试·后端开发·java程序员·java八股文
摇滚侠39 分钟前
MyBatis 入门到项目实战 MyBatis 各种查询功能 30-33
java·后端·spring·maven·intellij-idea·mybatis
兰令水3 小时前
leecodecode【面试150】【2026.6.14打卡-java版本】
java·算法·面试
yaoxin5211239 小时前
434. Java 日期时间 API - Period 基于日期的时间段
java·开发语言·python