Skip to content

[Experiment/V4] Idempotent Consumer + DLQ 도입 #78

@seonghooncho

Description

@seonghooncho

배경

v3까지는 발행 누락 문제를 줄일 수 있지만, at-least-once 전달 환경에서 중복 소비와 poison message 문제는 남아 있다.
v4에서는 idempotent consumer와 DLQ를 추가해 소비자 측 안정성을 검증한다.

상위 이슈:

목표

  • 동일 메시지 재전달 시 side effect 중복 반영 방지
  • 반복 실패 메시지를 DLQ로 격리
  • 정상 메시지 처리 흐름 보호

구현 범위

  • processed jobs 컬렉션 추가
  • imageJobId 기준 중복 처리 방지
  • SQS DLQ 추가
  • retry 후 DLQ 이동 정책 구성
  • poison message 및 duplicate delivery 재현 시나리오 정리

핵심 지표

  • duplicate side effect count
  • DLQ count

대표 검증

  • duplicate delivery
  • poison message
  • DLQ 이동 및 필요 시 re-drive 검토

완료 조건

  • 동일 메시지가 여러 번 와도 결과는 한 번만 반영된다
  • 반복 실패 메시지가 DLQ로 격리된다
  • 태그 exp-v4-idempotent 기준으로 결과를 기록할 수 있다

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions