后端接口性能优化分析

  • 👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家
  • 📕系列专栏:Spring源码、JUC源码
  • 🔥如果感觉博主的文章还不错的话,请👍三连支持👍一下博主哦
  • 🍂博主正在努力完成2023计划中:源码溯源,一探究竟
  • 📝联系方式:nhs19990716,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬👀

文章目录

事实上,当决定进行这个后端接口分析专栏部分的时候,我是低估了工作量的,因为以我当时的认知,并没有这么多的内容,随着不断地发现新的知识点,不断地调研,不断地总结,最终,一个适合我目前经验的后端接口优化篇幅就完成了。总的来说,当完成了这部分的时候,我总体上对知识有了一个更加全面的了解,将很多的知识融汇贯通了起来,形成了一个体系,这也是我最大的收获!

下面主要以三个思路来介绍,分别是 定位问题&问题排查、常见思路、实际问题解决

定位问题&问题排查

该部分主要介绍如何定位问题,出现问题如何排查的思路,这也是如何发现待优化点的思路。

后端接口性能优化分析-问题发现&问题定义-CSDN博客

常见思路

以15个常见的优化点来展开概括的介绍对应优化点

1.批量思想:

2.异步思想:

3.多线程思想:

4.空间换时间思想:恰当使用缓存

5.预取思想:提前初始化到缓存

6.池化思想:预分配与循环使用

7.事件回调思想:拒绝阻塞等待

8.锁粒度避免过粗

9.切换存储方式:文件中转暂存数据

10.优化程序结构

11.压缩传输内容

12.线程池设计

13.机器问题 (GC、线程打满、太多IO资源没关闭等等)

14.调用链路的优化

15.数据库优化

后端接口性能优化分析-多线程优化-CSDN博客

后端接口性能优化分析-程序结构优化-CSDN博客

后端接口性能优化分析-数据库优化-CSDN博客

实际问题解决(复杂优化问题)

实际问题的优化,是根据真实发生的问题而做的优化,这部分内容主要是参考优秀的技术博客。

也希望大家能够在理解优化的常见思路后能够结合 真实优化问题做到将优化思路融会贯通!

查询接口性能优化实录,讲点新手也能用的 - 掘金 (juejin.cn)

接口优化🚀68474ms->1329ms - 掘金 (juejin.cn)

只改了五行代码接口吞吐量提升了10多倍 - 掘金 (juejin.cn)

接口流量突增,如何做好性能优化? - 掘金 (juejin.cn)

评分接口性能优化 10 倍 - 掘金 (juejin.cn)

文献参考

1 细数线程池的10个坑 (qq.com)

2 实战总结!18种接口优化方案的总结 (qq.com)

3 看看别人后端API接口性能优化的11个方法,那叫一个优雅! - 掘金 (juejin.cn)

4 Java后端服务接口性能优化建议 - 掘金 (juejin.cn)

5 慢接口优化思路 - 掘金 (juejin.cn)

6 聊聊接口优化的几个方法 - 掘金 (juejin.cn)

7 浅谈系统性能提升的经验和方法 (qq.com)

8 Java接口全链路优化:如何降低接口RT时长 - 掘金 (juejin.cn)

9 Java线上问题排查系列--后端接口响应慢的排查方法及解决方案_java接口慢排查_IT利刃出鞘的博客-CSDN博客

10 架构必知:后端服务实战之性能优化_ITFLY8的博客-CSDN博客

11 两万字的性能优化指南!39个策略提升接口性能! - 掘金 (juejin.cn)

12 看一遍就理解:group by 详解 - 知乎 (zhihu.com)

13 (二十二)全解MySQL之分库分表后带来的"副作用"一站式解决方案! - 掘金 (juejin.cn)

14 分布式事务之可靠消息最终一致性、最大努力通知 - 知乎 (zhihu.com)

15 explain | 索引优化的这把绝世好剑,你真的会用吗? - 掘金 (juejin.cn)

16 慢SQL原因分析之索引失效 | 京东物流技术团队 - 掘金 (juejin.cn)

17 MySQL高级篇------索引失效的11种情况_mysql索引失效的几种情况-CSDN博客

18 还不会使用分布式锁?教你三种分布式锁实现的方式 - 掘金 (juejin.cn)

19 聊聊redis分布式锁的8大坑 - 掘金 (juejin.cn)

20 一文搞懂 Redis 高性能之 IO 多路复用 - 掘金 (juejin.cn)

21 聊聊并发编程的12种业务场景 - 掘金 (juejin.cn)

22 异步编程利器:CompletableFuture详解 |Java 开发实战 - 掘金 (juejin.cn)

23 从消息队列常见问题入手探讨消息队列 - 掘金 (juejin.cn)

24 统一观测丨如何使用Prometheus 实现性能压测指标可观测 - 掘金 (juejin.cn)

25 Java后端接口响应慢的排查方法及解决方案 - 自学精灵 (skyofit.com)

26 Java-系统问题排查的方法 - 自学精灵 (skyofit.com)

相关推荐
方也_arkling6 小时前
【Java-Day08】static / final / 枚举
java·开发语言
橙淮6 小时前
Spring Bean作用域与生命周期全解析
java·spring
Chengbei116 小时前
一站式源码安全检测工具、云安全 / APP / 小程序源码敏感信息递归多层目录扫描AK、JWT、手机号、身份证等敏感信息
java·开发语言·安全·web安全·网络安全·系统安全·安全架构
llz_1126 小时前
web-第一次课后作业
java·开发语言·idea
秋97 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本7 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
DIY源码阁7 小时前
JavaSwing学生成绩管理系统 - MySQL版
java·数据库·mysql·eclipse
basketball6168 小时前
C++ NULL 和 nullptr 区别 以及 nullptr 的核心实现
java·开发语言·c++
JAVA面经实录9179 小时前
MyBatis面试题库
java·mybatis