목록 보기
올리브영은 왜 선물하기를 개편했을까? Part - 2
백엔드

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

올리브영
올리브영
2025년 8월 4일

두줄요약

선물하기 전시 영역의 캐시 적용 방식을 커스텀 모듈과 AoP로 재구성했습니다. Redis 분산 락을 더해 캐시 스탬피드까지 해결했습니다.

문제 상황

  • 선물하기 전시 영역에서 캐시 적용 코드가 @CircuitBreaker와 @Cacheable로 분리되어 사용성과 유지보수성이 떨어짐
  • 캐시 key, TTL, Redis hash 지원, fallback 처리 등 요구가 늘어나며 기존 방식의 한계가 드러남
  • 부하 테스트에서 캐시 만료 시 다수 요청이 DB로 몰리는 캐시 스탬피드 발생

해결 방법

  • @DisplayCaching, @DisplayCachingKey, DisplayCacheModule, Aspect를 조합한 커스텀 캐시 모듈 설계
  • Redis VALUE/HASH 지원, 동적 키 생성, 날짜 접미사, TTL, 실패 처리 옵션, fallback 후 재적재 여부를 어노테이션 속성으로 제어
  • 캐시 스탬피드 대응을 위해 Redis 기반 분산 락을 추가해 fallback 실행을 한 번으로 제한

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...