DEV 2026.05.02 · 12 min
Intermediate Spring Core Deep Dive · 4
Spring AOP는 왜 프록시인가 — 9개 챕터로 보는 하나의 구조
JDK Proxy와 CGLIB의 바이트코드 차이부터 @Transactional·@Cacheable의 Interceptor 체인, private 메서드 함정과 성능 측정까지, 프록시 AOP의 설계 결정을 추적한다.
총 5개의 글
JDK Proxy와 CGLIB의 바이트코드 차이부터 @Transactional·@Cacheable의 Interceptor 체인, private 메서드 함정과 성능 측정까지, 프록시 AOP의 설계 결정을 추적한다.
클래스 파일 바이너리 구조부터 invoke 명령어의 다형성 구현, 람다의 invokedynamic, 바이트코드 조작까지 — JVM 추상 기계의 설계 철학을 추적한다.
Parent Delegation의 보안 원칙부터 바이트코드 검증, 심볼릭 참조 해결, 언로딩 조건, 커스텀 ClassLoader 구현, ClassLoader 격리까지 — JVM 클래스 로딩 전 계층을 추적한다.
Interpreter의 즉시 실행부터 JIT 계층화 컴파일, OSR, Deoptimization, Intrinsics까지 — HotSpot이 성능을 끌어올리는 원리를 추적한다.
premain()부터 ByteBuddy @Advice 인라인 삽입까지, OTel Java Agent가 Spring MVC와 JDBC를 자동 계측하는 전체 메커니즘을 추적한다.