当前位置: 首页 > news >正文

SpringBoot 框架第 1 次接口调用慢

文章目录

  • 背景
  • 分析
    • 思路 1:DeepSeek 分析
    • 思路 2:日志分析
    • 思路 3:Arthas 分析
      • 下载 Arthas
      • 启动 Arthas
      • trace 调用耗时分析
        • Controller 调用耗时
        • Service 调用分析
        • ServiceImpl 耗时分析
        • IService 耗时分析
        • BaseMapper 耗时分析
        • debug 执行链路
        • MyBatisMapperProxy 解读
  • 解决
    • 思路 1:预热 MyBatisPlus
    • 思路 2:预热 DispatcherServlet
    • 完整案例
      • 优化代码
      • 优化效果
  • 参考

背景

项目技术框架:Spring Boot 2.7.17 + Druid 1.2.24 + MyBatisPlus 3.5.4。

😂 存在的问题:第 1 次 接口查询比较慢,后面的接口调用速度正常。

比如,某个分页查询接口,第 1 次调用耗时 600ms,第 2 次及之后耗时 150ms。

分析

分析前提:SpringBoot 连接的外部组件,比如 Redis、MySQL 尽量使用本地连接,减少因为网络波动产生的影响。

思路 1:DeepSeek 分析

DeepSeek 各种搜索,各种配置修改,但是总感觉没有对症下药。

摸索了很久,没有啥用,根本找不到症结在哪里。

思路 2:日志分析

添加 debug: true配置到 yml 配置文件中,将程序改为 debug 模式。

试了下,接口请求时,虽然能看到两段日志之间耗时较大,但是找不到是哪里慢。

思路 3:Arth

相关文章:

  • 使用homeassistant 插件将tasmota 接入到米家
  • Spring Boot 3+:现代Java应用开发的新标杆
  • 【C++特殊工具与技术】优化内存分配(四):定位new表达式、类特定的new、delete表达式
  • 可视化预警系统:如何实现生产风险的实时监控?
  • AlgorithmVisualizer项目改进与部署-网页算法可视化
  • ChatGPT 辅助 PyTorch 开发:从数据预处理到 CNN 图像识别的全流程优化
  • 对比一下blender快捷键:p和alt+p
  • k8s从入门到放弃之Service负载均衡
  • 【C/C++】玩转正则表达式
  • 对象回调初步研究
  • MySQL中【正则表达式】用法
  • Web中间件--tomcat学习
  • Python如何给视频添加音频和字幕
  • ui框架-文件上传组件
  • 在鸿蒙HarmonyOS 5中使用DevEco Studio实现指南针功能
  • 门静脉高压——治疗
  • 智能体革命:企业如何构建自主决策的AI代理?
  • 魔兽世界正式服插件与宏-敏锐盗贼实用宏探索(1)-宏命令制作入门与基本知识
  • C++--stack和queue的使用及其模拟实现
  • CppCon 2015 学习:Reactive Stream Processing in Industrial IoT using DDS and Rx
  • 在国外做盗版电影网站吗/百度站长工具排名
  • iis 网站无法访问/电脑培训网上免费课程
  • 墨子学院seo/南宁百度推广排名优化
  • 合肥市城市建设委员会网站/aso优化师工作很赚钱吗
  • 太原门户网站/线上推广的方法
  • 微信商城网站哪家做的好/微营销平台有哪些