목록 보기
이제 Redis를 멈춰보겠습니다: @CacheEvict 파헤치기
백엔드

이제 Redis를 멈춰보겠습니다: @CacheEvict 파헤치기

우아한 형제들
우아한 형제들
2025년 11월 4일

두줄요약

`@CacheEvict(allEntries = true)`가 내부적으로 어떻게 동작하는지 Spring Cache와 Redis 구현 레벨에서 살펴보았습니다. 기본 `KEYS` 전략이 운영 환경에서 위험할 수 있어 대안도 함께 정리했습니다.

핵심 내용

  • @CacheEvict(allEntries = true)가 내부적으로 cacheWide로 변환되어 캐시 전체 삭제 경로를 타는 구조
  • Spring Cache 추상화에서 clear()가 RedisCache의 clean()으로 이어지고, 기본 배치 전략은 KEYS 기반 전체 조회 후 삭제
  • KEYSDEL이 운영 환경에서 Redis 지연과 블로킹을 유발할 수 있어 SCAN 또는 UNLINK 계열 대응이 필요

댓글 0

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

댓글을 불러오는 중...