首页 > 其他分享 >每周一记7

每周一记7

时间:2023-03-26 15:33:48浏览次数:30  
标签:BeanPostProcessor 基于 SpringBoot SpringApplicationRunListener 每周 Bean 一记 原理

公司 SpringBoot 项目在日常开发过程中发现服务启动过程异常缓慢,常常需要 6-7 分钟才能暴露端口,严重降低开发效率。通过 SpringBoot 的SpringApplicationRunListener、BeanPostProcessor原理和源码调试等手段排查发现,在 Bean 扫描和 Bean 注入这个两个阶段有很大的性能瓶颈。

通过 JavaConfig 注册 Bean, 减少 SpringBoot 的扫描路径,同时基于 Springboot 自动配置原理对第三方依赖优化改造,将服务本地启动时间从 7min 降至 40s 左右的过程。本文会涉及以下知识点:

基于 SpringApplicationRunListener 原理观察 SpringBoot 启动 run 方法;
基于 BeanPostProcessor 原理监控 Bean 注入耗时;
SpringBoot Cache 自动化配置原理;
SpringBoot 自动化配置原理及 starter 改造;

标签:BeanPostProcessor,基于,SpringBoot,SpringApplicationRunListener,每周,Bean,一记,原理
From: https://www.cnblogs.com/liuchao437/p/17258777.html

相关文章

  • 每周三题
    Buuctf-re-easyre下载文件解压后打开无信息,拖到IDA,F5看C语言代码  flag就在明文上。Buuctf-re-reserve1文件解压无法直接打开,拖进exeinfope查看  没有壳,为64......
  • 每周报告
    这周总体就是学习uniapp基本上也没遇到什么代码问题,这可能就是前端,代码问题遇到的很少,还有就是对springmvc的学习,这周学习后端比较的少,对于uniapp的课程还有一部分就学完......
  • Hugging Face 每周速递: ChatGPT API 怎么用?我们帮你搭好页面了
    每一周,我们的同事都会向社区的成员们发布一些关于HuggingFace相关的更新,包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等,我们将其称之为......
  • 每周总结
    本周做了大数据测试,复习了hive。差点就要忘了命令怎么使用,不过最后也是顺利完成。  但是大数据的mapreduce清洗还非常不熟练,我在想要不要下载kettle用kettle清洗。......
  • 4_13_天天一记
    继电器控制原理常闭NC常开NO公共端COM 拼板小板放在一起成本降低 低频高频超高频(双倍频6T)/显示屏(一帧)wifibluetoothgprs要求不高 过孔:上板串至下板 看......
  • 复旦高等代数II(22级)每周一题
    本学期的高等代数每周一题活动计划从第1教学周开始,到第15教学周结束,每周的周末公布1道思考题(共15道,思考题一般与下周授课内容密切相关),供大家思考和解答。每周一题将通过“......
  • 【计蒜课 每周三题】2023-02-25 第一题
    第一题题目描述给定一个长度为\(n\)的\(01\)序列\(a\),你可以对其进行若干次操作。对于一次操作,选择\(1\leql\leqr\leqn\),将\(a_l,…,a_r\)中的\(01\)翻转......
  • 【计蒜课 每周三题】2023-02-25 唱歌
    唱歌题目描述ame是一个可爱的女孩子,她想要唱歌。一共有\(n\)首歌,第\(i\)首歌的长度\(a_i\),同时唱第\(i\)首歌的满意值为\(b_i\)。ame喜欢的歌满足\(a_i\leq......
  • 【计蒜课 每周三题】2023-02-25 逛街
    逛街题目描述小蒜喜欢逛街。但是小蒜时间有限,只有\(T\)个单位时间。小蒜从\(1\)号店出发,从\(1\)号店走到第\(i\)号店需要花费\(a_{i}\)个单位的时间,这些店形成......
  • python一记
    作者:荷兰人吉多.范罗苏姆python:蟒蛇特点:跨平台/解释型/交互式/弱类型/面向对象新建myPython.py并:print('hello,world')print可以输出的内容:数字,字符,布尔表达式,运......