올리브영 선물하기, 성능 개선으로 더 빨라졌어요!

by DD
1년 전
조회수 0

DB 자원 과다 사용으로 인한 성능 저하, 일 단위 배치 작업으로 인한 정보 업데이트 지연 등 기존 선물하기관의 문제점을 분석함.

리플렉션 기법을 활용하여 캐싱 로직을 개선하고, 커스텀 어노테이션을 통해 개발 편의성을 높임

개편을 통해 DB 리소스 점유 문제 해결, 실시간 정보 반영, 오류 데이터 문제 개선으로 서비스 신뢰도 향상

성능 개선을 위한 아키텍처 변화

기존 선물하기관은 DB 호출 의존도가 높아 트래픽 증가 시 성능 저하가 발생했다. 따라서 Redis 캐싱 적용 및 리플렉션 기반의 커스텀 어노테이션을 활용하여 캐싱 로직을 개선했다. 결과적으로 DB 부하 감소응답 속도 향상을 달성했다.

리플렉션 기반 캐싱 구현

스프링 AOP와 Kotlin 리플렉션을 활용하여 캐싱 기능을 구현했다. @GiftCaching@GiftCachingKey 어노테이션을 통해 캐시 설정의 파편화를 해결하고, CircuitBreaker 적용으로 장애 대응력을 강화했다. 따라서 코드 중복 감소유지보수 용이성을 확보했다.

향후 과제 및 2부 예고

1부에서는 개편의 배경과 주요 개선 사항을 다루었다. 2부에서는 캐싱 구현과 관련된 상세 기술, 설계 과정에서 발생한 이슈 해결 과정을 소개할 예정이다. 따라서 기술적 깊이를 더하고, 개발자들의 궁금증을 해소할 것으로 기대된다.

올리브영은 왜 선물하기를 개편했을까? Part - 1