8장. PostgreSQL transaction
Dispatch insert와 Outbox insert를 같은 transaction에 둔다. ORM을 써도 transaction boundary와 SQL constraint를 명시한다. connection을 await 사이 오래 잡지 않는다.
idempotency key를 unique로 만들고 같은 payload는 같은 결과, 다른 payload는 conflict를 반환한다. 예제 DispatchService의 memory map은 계약 설명용이며 production은 PostgreSQL로 교체한다.