manual cache

CACHE_MANAGER를 쓰면 캐시 정책이 서비스 코드로 내려온다

자동 인터셉터와 달리 수동 캐싱은 key 생성, hit 판정, TTL 저장, reset 범위를 서비스 코드가 직접 책임집니다.

주입 대상

서비스가 cache-manager 인스턴스를 직접 받습니다.

@Inject(CACHE_MANAGER)
직접 호출

읽기, 저장, 삭제 범위를 코드에서 명시합니다.

get / set / reset
1

key 만들기

입력값과 권한 범위가 key에 반영되어야 합니다.

2

get 판정

hit면 원본 호출 없이 즉시 같은 DTO를 반환합니다.

3

set with TTL

miss 결과와 만료 시간을 함께 저장합니다.

4

delete 범위

쓰기 이후 필요한 key만 지우는지 점검합니다.

key collision

다른 사용자의 값이 섞이지 않게 한다.

TTL default

무한 캐시가 생기지 않게 한다.

reset scope

전체 삭제는 운영 영향이 큰 명령이다.

error path

캐시 장애가 API 장애로 번지지 않게 한다.

핵심: 수동 캐싱은 빠르게 우회하는 코드가 아니라, key·TTL·삭제 범위를 코드로 드러내는 방식이다.