Outbox 패턴 도입이유
해결됨
MAU 3,000만 토스 개발자가 알려주는 금융 백엔드 실전: Outbox, 멱등성, Dual Write
안녕하세요 강의 잘 듣고 있습니다. 강의를 듣다가 Outbox 패턴을 도입하는 이유가 이해되지 않아 질문드립니다. 기존에는 DB에 payout을 저장한 뒤 블록체인 RPC 호출이 실패하면 HTTP 오류를 반환하지만, DB에는 payout이 남아 있는 문제가 있다고 설명해 주셨는데요. 그런데 이 문제가 메시징 큐와 Outbox 패턴을 도입하는 것과 어떤 관계가 있는지 궁금합니다. 외부 RPC 호출로 인해 HTTP 오류가 발생하는 문제라면, DB에 payout을 저장하고 커밋한 뒤 202 응답을 반환하고, 별도 워커가 DB에서 데이터를 조회해 송금을 처리할 수도 있을 것 같습니다. 제가 이해한 Outbox 패턴은 DB 저장과 메시징 큐에 이벤트를 발행하는 과정에서 발생할 수 있는 유실 문제를 해결하기 위한 패턴입니다. 그렇다면 먼저 메시징 큐를 사용해야 하는 이유가 있고, 그다음 DB와 큐 사이의 일관성을 위해 Outbox 패턴을 도입하는 흐름이어야 할 것 같은데요. 강의에서 설명하신 RPC 호출 실패 문제를 해결하기 위해 왜 메시징 큐가 필요한 건지 궁금합니다.
- outbox
배고프면근손실
댓글 1
좋아요 2
조회수 37





