Zettelkasten

배치 시스템 재시도는 프레임워크 기능을 활용하는 것이 좋다

·수정 2026.04.23·수정 3

요약

  • 배치 시스템의 재시도 로직은 직접 구현보다 프레임워크 기능을 활용하는 것이 안정적이다
  • Transaction Outbox 패턴과는 해결하는 문제가 다르며, 상호 보완적으로 사용할 수 있다

본문

프레임워크 재시도의 장점

  • 이미 검증된 backoff, jitter 로직 제공
  • 재시도 횟수, 간격 설정이 선언적
  • 모니터링/메트릭 통합이 쉬움
  • Dead Letter Queue 연동 등 실패 처리 패턴 내장

Transaction Outbox는 다른 문제를 해결

  • DB 트랜잭션과 메시지 발행의 원자성 보장
  • "처리는 됐는데 메시지 발행 실패" 같은 불일치 방지

권장 조합

Outbox로 메시지 발행을 안전하게 하고, 컨슈머 쪽 재시도는 프레임워크(Spring Retry, Kafka consumer retry 등)에 맡기는 조합이 깔끔하다.

직접 재시도 로직을 구현하면 edge case 처리가 복잡해지고, 결국 프레임워크가 이미 해결한 문제를 다시 풀게 되는 경우가 많다.

참고