Spring Boot项目启动速度优化

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

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

import org.springframework.stereotype.lndexed,

3、开启全局懒加载

优点:启动大幅增快

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

注意点:

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

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

相关推荐
YANZ2226 分钟前
亚马逊绿标(CPF):从环保认证到跨境流量新引擎
java·大数据·人工智能·搜索引擎·百度
超梦dasgg10 分钟前
智慧充电系统订单服务Java 实现方案
java·开发语言·微服务
JWASX12 分钟前
【RocketMQ 生产者和消费者】- 事务源码分析(2)
java·rocketmq·java-rocketmq
手握风云-20 分钟前
Spring AI:让大模型住进 Spring 生态(四)
java·后端·spring
南滑散修21 分钟前
红黑树-非黑即红
java·开发语言
Java面试题总结27 分钟前
Spring Boot:别再重复造轮子,这些内置功能香麻了
java·spring boot·后端
迷糊小白告35 分钟前
Java微服务——SpringCloud
java·spring cloud·微服务
qq_2698704335 分钟前
java rabbitmq 队列在Springboot的设计
java·rabbitmq·java-rabbitmq
abcnull1 小时前
Springboot+Vue2的Web项目小白入门Demo快速学习!
java·elementui·vue·maven·springboot·web·小白
2501_932750261 小时前
Java IO流基础全面详解:字节流、字符流
java·开发语言