- ??作者簡介:大家好,我是愛吃芝士的土豆倪,24屆校招生Java選手,很高興認識大家
- ??系列專欄:Spring源碼、JUC源碼
- ??如果感覺博主的文章還不錯的話,請??三連支持??一下博主哦
- ??博主正在努力完成2023計劃中:源碼溯源,一探究竟
- ??聯(lián)系方式:nhs19990716,加我進群,大家一起學習,一起進步,一起對抗互聯(lián)網(wǎng)寒冬??
事實上,當決定進行這個后端接口分析專欄部分的時候,我是低估了工作量的,因為以我當時的認知,并沒有這么多的內(nèi)容,隨著不斷地發(fā)現(xiàn)新的知識點,不斷地調(diào)研,不斷地總結(jié),最終,一個適合我目前經(jīng)驗的后端接口優(yōu)化篇幅就完成了??偟膩碚f,當完成了這部分的時候,我總體上對知識有了一個更加全面的了解,將很多的知識融匯貫通了起來,形成了一個體系,這也是我最大的收獲!
下面主要以三個思路來介紹,分別是 定位問題&問題排查、常見思路、實際問題解決
定位問題&問題排查
該部分主要介紹如何定位問題,出現(xiàn)問題如何排查的思路,這也是如何發(fā)現(xiàn)待優(yōu)化點的思路。
后端接口性能優(yōu)化分析-問題發(fā)現(xiàn)&問題定義-CSDN博客
常見思路
以15個常見的優(yōu)化點來展開概括的介紹對應優(yōu)化點
1.批量思想:
2.異步思想:
3.多線程思想:
4.空間換時間思想:恰當使用緩存
5.預取思想:提前初始化到緩存
6.池化思想:預分配與循環(huán)使用
7.事件回調(diào)思想:拒絕阻塞等待
8.鎖粒度避免過粗
9.切換存儲方式:文件中轉(zhuǎn)暫存數(shù)據(jù)
10.優(yōu)化程序結(jié)構(gòu)
11.壓縮傳輸內(nèi)容
12.線程池設(shè)計
13.機器問題 (GC、線程打滿、太多IO資源沒關(guān)閉等等)
14.調(diào)用鏈路的優(yōu)化
15.數(shù)據(jù)庫優(yōu)化
后端接口性能優(yōu)化分析-多線程優(yōu)化-CSDN博客
后端接口性能優(yōu)化分析-程序結(jié)構(gòu)優(yōu)化-CSDN博客
后端接口性能優(yōu)化分析-數(shù)據(jù)庫優(yōu)化-CSDN博客
實際問題解決(復雜優(yōu)化問題)
實際問題的優(yōu)化,是根據(jù)真實發(fā)生的問題而做的優(yōu)化,這部分內(nèi)容主要是參考優(yōu)秀的技術(shù)博客。
也希望大家能夠在理解優(yōu)化的常見思路后能夠結(jié)合 真實優(yōu)化問題做到將優(yōu)化思路融會貫通!
查詢接口性能優(yōu)化實錄,講點新手也能用的 - 掘金 (juejin.cn)
接口優(yōu)化??68474ms->1329ms - 掘金 (juejin.cn)
只改了五行代碼接口吞吐量提升了10多倍 - 掘金 (juejin.cn)
接口流量突增,如何做好性能優(yōu)化? - 掘金 (juejin.cn)
評分接口性能優(yōu)化 10 倍 - 掘金 (juejin.cn)
文獻參考
[1] 細數(shù)線程池的10個坑 (qq.com)
[2] 實戰(zhàn)總結(jié)!18種接口優(yōu)化方案的總結(jié) (qq.com)
[3] 看看別人后端API接口性能優(yōu)化的11個方法,那叫一個優(yōu)雅! - 掘金 (juejin.cn)
[4] Java后端服務接口性能優(yōu)化建議 - 掘金 (juejin.cn)
[5] 慢接口優(yōu)化思路 - 掘金 (juejin.cn)
[6] 聊聊接口優(yōu)化的幾個方法 - 掘金 (juejin.cn)
[7] 淺談系統(tǒng)性能提升的經(jīng)驗和方法 (qq.com)
[8] Java接口全鏈路優(yōu)化:如何降低接口RT時長 - 掘金 (juejin.cn)
[9] Java線上問題排查系列–后端接口響應慢的排查方法及解決方案_java接口慢排查_IT利刃出鞘的博客-CSDN博客
[10] 架構(gòu)必知:后端服務實戰(zhàn)之性能優(yōu)化_ITFLY8的博客-CSDN博客
[11] 兩萬字的性能優(yōu)化指南!39個策略提升接口性能! - 掘金 (juejin.cn)
[12] 看一遍就理解:group by 詳解 - 知乎 (zhihu.com)
[13] (二十二)全解MySQL之分庫分表后帶來的“副作用”一站式解決方案! - 掘金 (juejin.cn)
[14] 分布式事務之可靠消息最終一致性、最大努力通知 - 知乎 (zhihu.com)
[15] explain | 索引優(yōu)化的這把絕世好劍,你真的會用嗎? - 掘金 (juejin.cn)
[16] 慢SQL原因分析之索引失效 | 京東物流技術(shù)團隊 - 掘金 (juejin.cn)
[17] MySQL高級篇——索引失效的11種情況_mysql索引失效的幾種情況-CSDN博客
[18] 還不會使用分布式鎖?教你三種分布式鎖實現(xiàn)的方式 - 掘金 (juejin.cn)
[19] 聊聊redis分布式鎖的8大坑 - 掘金 (juejin.cn)
[20] 一文搞懂 Redis 高性能之 IO 多路復用 - 掘金 (juejin.cn)
[21] 聊聊并發(fā)編程的12種業(yè)務場景 - 掘金 (juejin.cn)
[22] 異步編程利器:CompletableFuture詳解 |Java 開發(fā)實戰(zhàn) - 掘金 (juejin.cn)
[23] 從消息隊列常見問題入手探討消息隊列 - 掘金 (juejin.cn)
[24] 統(tǒng)一觀測丨如何使用Prometheus 實現(xiàn)性能壓測指標可觀測 - 掘金 (juejin.cn)
[25] Java后端接口響應慢的排查方法及解決方案 - 自學精靈 (skyofit.com)文章來源:http://www.zghlxwxcb.cn/news/detail-752686.html
[26] Java-系統(tǒng)問題排查的方法 - 自學精靈 (skyofit.com)文章來源地址http://www.zghlxwxcb.cn/news/detail-752686.html
到了這里,關(guān)于后端接口性能優(yōu)化分析的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!