추천
카카오페이손해보험, AOP 기반 Shadow 비교로 레거시 모듈 제거 및 Spring Boot 버전업 추진
·2026.09.03 09:00
핵심 내용
카카오페이손해보험이 AOP 기반 Shadow 비교 전략으로 운영 환경에서 레거시 모듈을 안전하게 제거하고 Spring Boot 버전업 기반을 마련했다.
1 / 3
자세히 보기
카카오페이손해보험(카손보)은 Spring Boot 2.6 버전을 사용 중인 특정 레포지토리의 버전업(최신 4.1 목표)을 위해 레거시 모듈 의존성 문제를 해결하는 과정을 공유했다. 기존 product 모듈에 대한 의존성이 버전업의 장애물이었으나, MSA 이관 완료 전까지 레거시를 제거하기 어려운 상황이었다.
AOP 기반 Shadow 비교 전략
개발팀은 Strangler 패턴을 차용해 AOP(Aspect-Oriented Programming) 기반의 Shadow 비교 로직을 도입했다. 이 방식은 운영 환경의 실제 요청에는 기존 로직의 응답을 반환하면서, 동시에 신규 로직을 실행해 결과를 비교하는 구조다.
- 안정성 확보: 운영 데이터로 신규 로직을 검증하므로 QA 부담 없이 개발자 주도로 점진적 이관이 가능하다.
- 리소스 최적화: 비교 로직은 비동기로 실행되며, 리플렉션 호출을 캐싱해 성능 저하를 최소화했다.
- 모니터링: 메모리나 커넥션 이슈 발생 시 런타임에 조절할 수 있도록 설계되었다.
구현 및 효과
@ShadowInquiry 어노테이션을 통해 비교 대상 Bean과 메서드를 지정하며, 기존 메서드와 신규 메서드의 파라미터 인덱스를 매핑한다. 이를 통해 카손보는 레거시 코드 제거와 Spring Boot 버전업이라는 두 가지 숙원을 동시에 해결할 수 있는 안전한 전환 경로를 확보했다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.