前言 最近在寫項目的時候,又寫到很久沒寫的 AOP 切面實現一個需求,又想到上次同學面試的時候被問到了 Spring AOP 的實現原理是什麼,以前就知道是用了代理模式,但是也沒有進行過多的去研究,剛好碰到了也就研究一下代理模式。 什麼是代理模式 代理模式就是通過一個代理對象來間接訪問目標對象,這樣可以在不改變目標對象的情況下,為它添加一些額外的功能或行為。簡單來説,代理就是“替身”,它在幕後幫目
一、問題是怎麼發現的 最近有個新系統開發完成後要上線,由於系統調用量很大,所以先對核心接口進行了一次壓力測試,由於核心接口中基本上只有純內存運算,所以預估核心接口的壓測QPS能夠達到上千。 壓測容器配置:4C8G 先從10個併發開始進行發壓,結果cpu一下就飆升到了100%,但是核心接口的qps才200左右。於是觀察jvm的垃圾回收發現younggc很頻繁,但是fullGC數量為零。 二、排查問題
字節碼改寫方式的多樣性主要源於不同的使用場景、需求和設計哲學。 以下兩個方面是比較重要的原因: https://www.zhihu.com/question/7501915796/answer/61918375697 學習和使用成本 精細化控制能力與性能需求 首先説一下jdk代理,它是在2000年5月發佈的jdk 1.3中引入的,這裏對jdk代理就不做過於詳細的介紹了,它的出現主要是為了提