@Cacheable(cacheNames = "user") // @Cacheable("user")와 동일
public User readUserById(String id)
이렇게 설정했고 메서드 호출 시 파라미터를 1로 넘겼다면, 레디스에 캐시 키는 어떻게 저장될까?
> KEYS
1) "user::1"
이때 해당 키는 레디스에 어떤 자료구조로 저장될까?
> TYPE user::1
string
@Cacheable은 단순 key → value 캐싱 구조이며, 레디스에 저장될 때도 보통 직렬화된 객체를 문자열로 저장한다. 즉, @Cacheable로는 Redis의 Hash 구조를 직접 활용하지 못한다. RedisTemplate을 직접 사용해야 한다
HashOperations를 사용하여 저장한 경우는 아래와 같이 저장된다
> TYPE user::1
hash
'Spring > Cache' 카테고리의 다른 글
| Redis cache with Spring Boot (0) | 2023.11.17 |
|---|---|
| Spring Cache Abstraction with Spring Boot (0) | 2023.11.14 |