토픽 199 / 201·병행제어 문제점
캐시 무효화
캐시 무효화
캐시 데이터를 제거/갱신하여 원본과 일관성을 유지하는 과정
특징: 일관성 유지 핵심, "CS에서 가장 어려운 문제 중 하나"
무효화 방식
- •TTL 기반: 만료 시간 후 자동 삭제, 단순하나 Stale Data 허용, 정적 데이터에 적합
- •이벤트 기반: Pub/Sub/CDC로 변경 시 트리거, 거의 실시간, 인프라 필요
- •수동 무효화: 코드에서 명시적 삭제/갱신, 정밀 제어, 누락 위험
Cache Stampede: 인기 키 만료 시 동시 DB 조회 → 과부하
- •해결: Lock(분산 락), Early Recomputation(사전 갱신), Stale-While-Revalidate(백그라운드 갱신)
비교: TTL(시간/자동/느슨) vs 이벤트(실시간/인프라필요) vs 수동(즉시/누락위험)
연관: 캐싱, 일관성, CDC, Pub/Sub