RedisConfig 와 CacheConfig 역할정리

PUROMANGA·2025년 5월 22일

기술스택

목록 보기
2/22

🔹 RedisConfig의 역할

  • RedisConnectionFactory 생성: Redis와 연결 설정 (host, port)
  • RedisTemplate 설정: 직접 Redis에 데이터를 get/set 할 때 사용 (Map, Set, Sorted Set 등 구조 다룰 수 있음)
  • 이건 Low-Level API 접근용이야 (직접 조작할 때)

🔹 CacheConfig의 역할

  • Spring Cache 추상화(@Cacheable, @CacheEvict 등)을 위한 캐시 전략 설정
  • RedisCacheManager를 통해 @Cacheable이 알아서 Redis 캐시를 쓰도록 함
  • 여기서는 Map 구조가 아니라 "Key → Value 캐시 저장소"로 생각하면 돼 (즉, Set 같은 복잡한 구조는 여기서 안 씀

너가 정말 Set 구조를 Redis에서 사용하고 싶다면?

👉 RedisTemplate으로 직접 조작해야 해

redisTemplate.opsForSet().add("mySetKey", "value1");
redisTemplate.opsForSet().members("mySetKey");

그리고 이건 @Cacheable이 아니라 직접 컨트롤하는 로직이기 때문에
RedisCacheManager나 @CacheEvict 대상이 아님.

✅ Set형태 저장하고 싶다면?

RedisTemplate<String, Object> 빈을 만들고

opsForSet() 메서드로 사용

CacheManager랑은 별개로 동작

별도의 직렬화 설정도 가능하고, 필요한 구조를 커스터마이징할 수 있음

0개의 댓글