前言
在 2021 年这个小学作文中的未来年份,没有想象中的汽车满天飞,也没有实现机器人满地跑。但牛逼的是我们都有一个共识: 知乎达到了人均 “谢邀~ 人在美国刚下飞机”的生活水平,虎扑的人均收入也在 30W+ ,还有就是程序员都人均精通 SpringBoot ,哪怕和算法聊技术一言不合就满嘴 SpringCould 分布式、微服务,然而实际操作可能是 分步试 、伪服务 ... 你一个小小系统开这么多应用启动不难受?(不难受因为可以装 13) SpringBoot 这启动速度也确实令人捉急,每个应用 5 分钟改个小功能,编码五分钟部署俩小时。 so 如何更加优雅快速的 启动 SpringBoot 应用 (满足装 13 的欲望) 呢?
其实我们都比较清楚大部分的启动时间是由于 Spring 需要加载各种 Bean 导致启动速度下降的,那么对于那些不是特别重要的 Bean 我们是不是可以让他再起一个线程做 Bean 初始化,不阻塞主线程启动,这样启动速度不就起来了么,说干就干!
那你肯定会问,我们咋判断一个 Bean 加载时间长短,找出那些 拉跨的Bean
呢?内心一阵嘲讽,嘴角泛出一阵冷笑后 不慌不忙的道来:“这对于精通 Spring 框架的我来说不是小菜一碟么 ”。我掐指一算,就知道是哪几个 B