
31
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
Spring Boot 성능 개선 사례: Redis 및 Local 캐싱 활용
이 게시물은 Redis와 Local 캐시를 활용하여 데이터 조회 성능을 개선한 사례를 설명합니다.개선 배경 및 전략
- 기존 DB 조회 및 일부 Redis 캐시 사용 중 Slow Query 발생으로 서버 부하 문제
- 전체 데이터를 Redis에 올리고 Local 메모리에 로드하여 조회 시 Local 캐시만 활용하도록 설계
- 데이터 변경 시 Redis 캐시 갱신 후 Pub/Sub로 API 서버에 변경 이벤트 전파
주요 개발 내용
- Redis Hash 구조 사용으로 변경된 데이터만 효율적으로 갱신
- RedisTemplate과 RedisMessageListenerContainer를 분리하여 독립적 운영
- Enum 기반 Singleton 패턴으로 Local 캐시 데이터 관리
- ApplicationEventPublisher로 순환 의존성 문제 해결
- Local 캐시 내 데이터 조회는 Stream API로 필터링, 정렬, 페이징 처리 구현
결과 및 향후 계획
- 10000개 요청 시 2배 이상의 성능 개선 확인
- 향후 캐시 버전 관리 기능과 데이터 관리 체계 고도화 예정