后端接口性能优化分析

  • 👏作者简介:大家好,我是爱吃芝士的土豆倪,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)

相关推荐
陆业聪3 分钟前
基本数据类型:Kotlin、Dart (Flutter)、Java 和 C++ 的比较
java·flutter·kotlin
程序修理员3 分钟前
2个word内容合并
java·word
醇氧3 分钟前
【idea】更换快捷键
java·ide·intellij-idea
isNotNullX10 分钟前
从数据仓库搭建把握复杂查询和数据分析性能优化
大数据·数据仓库·性能优化·数据分析·etl
容器( ु⁎ᴗ_ᴗ⁎)ु.。oO18 分钟前
java中的定时器
java·开发语言
薯条不要番茄酱1 小时前
数据结构-5.二叉树
java·开发语言·数据结构
王大傻09281 小时前
数据库的性能优化 -- SQL性能优化
数据库·sql·性能优化
YAy172 小时前
CC3学习记录
java·开发语言·学习·网络安全·安全威胁分析
代码小鑫2 小时前
A035-基于Spring Boot的企业内管信息化系统
java·开发语言·spring boot·后端·spring
qq_35323353893 小时前
【原创】java+ssm+mysql校园疫情防控管理系统设计与实现
java·mvc·javaweb·ssm框架·bs·疫情防控