Skip to content

feat: 보상 로직 실패 처리를 위한 DLQ(Dead Letter Queue) 구현 #40

@coderabbitai

Description

@coderabbitai

배경

PendingTransfer 만료 처리 등 보상 로직 실패 시 메시지를 안전하게 보관하고 재처리할 수 있는 DLQ 메커니즘이 필요합니다.

요구사항

  • DeadLetterMessage 도메인 모델 및 엔티티 구현
  • DeadLetterQueueService 구현
  • DLQ 메시지 처리를 위한 배치 스케줄러 구현
  • PendingTransferUseCase의 expirePendingTransfer 메서드에 DLQ 적용
  • DLQ 모니터링 및 알림 기능 추가
  • DLQ 메시지 조회/관리 API 구현

기술적 고려사항

  • 현재 JPA 기반 인프라와 일치하는 데이터베이스 기반 DLQ 구현
  • 재시도 횟수 제한 및 백오프 전략 적용
  • 메시지 타입별 처리 전략 분리
  • 트랜잭션 안전성 보장

관련 파일

  • interface/src/main/java/org/c4marathon/assignment/usecase/transfer/PendingTransferUseCase.java (line 111)

참고

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