핵심 인사이트 (3줄 요약)

  1. 본질: Fallback은 원격 서비스 호출 실패 시 미리 정의된 대체 응답을 반환하는 복원력 패턴이며, Circuit Breaker·Retry와 함께 사용되어 사용자에게 부분적이라도 서비스를 유지한다.
  2. 가치: 추천 서비스 장애 시 전체 페이지가 에러가 되는 대신, Fallback으로 **인기 상품 목록(캐시)**을 보여주면 사용자 경험 저하를 최소화한다.
  3. 판단 포인트: 캐시 Fallback·기본값·대체 서비스·Graceful Degradation 전략을 상황에 맞게 선택하고, Fallback 자체의 실패도 고려(Fallback의 Fallback)해야 한다.

Ⅰ. 개요 및 필요성

┌───────────────────────────────────────────────────────┐
│    Fallback 전략 유형                                 │
├───────────────────────────────────────────────────────┤
│  1. 캐시 반환: 이전 성공 응답 캐시                   │
│  2. 기본값: 정적 기본 데이터 반환                    │
│  3. 대체 서비스: 다른 서비스 호출                    │
│  4. 기능 비활성화: 해당 기능 숨김                    │
│  5. 에러 안내: 사용자에게 상태 안내                  │
└───────────────────────────────────────────────────────┘
  • 📢 섹션 요약 비유: Fallback은 비상식량이다. 정상 배달(서비스)이 안 오면 비상식량(캐시·기본값)으로 버틴다.

Ⅱ. 아키텍처 및 핵심 원리

전략장점단점
캐시최신에 가까운 데이터오래된 데이터 위험
기본값구현 간단개인화 없음
대체 서비스기능 유지의존성 증가
  • 📢 섹션 요약 비유: 캐시는 냉동식품, 기본값은 컵라면, 대체 서비스는 다른 식당 배달이다.

Ⅲ. 비교 및 연결

비교Fallback 없음Fallback 있음
장애 시500 에러부분 서비스 유지
UX최악Graceful Degradation

Ⅳ. 실무 적용 및 기술사 판단

  • Circuit Breaker Open 시 → Fallback 자동 호출.
  • Netflix: 추천 서비스 장애 → Top 10 목록(캐시) 반환.
  • Resilience4j: @Fallback 어노테이션.

Ⅴ. 기대효과 및 결론

Fallback은 MSA에서 사용자 경험을 지키는 마지막 방어선이며, Circuit Breaker와 함께 복원력의 핵심이다.


📌 관련 개념 맵

개념연결 포인트
Fallback장애 시 대체 응답
Circuit BreakerFallback 트리거
Graceful Degradation기능 점진적 저하
캐시Fallback의 가장 흔한 전략
Bulkhead격벽 (다른 서비스 보호)

📈 관련 키워드 및 발전 흐름도

[직접 에러 반환 (~2010s)]
    → [Hystrix Fallback (2012~)]
    → [Resilience4j Fallback (2018~)]
    → [서비스 메시 Fallback (Istio, 2020~)]
    → [현재: AI Fallback — 상황별 최적 대체 자동 선택]

👶 어린이를 위한 3줄 비유 설명

  1. Fallback은 비상식량이에요. 정상 배달이 안 오면 비상식량으로 버텨요.
  2. 추천 서비스가 고장나도 **인기 상품 목록(캐시)**을 보여줘서 쇼핑은 계속돼요.
  3. 비상식량이 없으면 굶어야(에러) 하니까, 꼭 준비해둬야 해요!