Event-Driven · Outbox
저장과 발행을 한 묶음으로 - 아웃박스
DB에 저장하고 이벤트를 발행하는 사이에 프로세스가 죽으면, 저장은 됐는데 발행은 안 된 어중간한 상태가 남는다. 두 시스템을 한 트랜잭션으로 못 묶는 문제를, 발행을 DB에 먼저 적어 푼다.
느슨하게 잇는다 3편
Event-Driven · Idempotency
같은 메시지가 두 번 와도 - 멱등 소비자
메시지 시스템은 확실히 전달하려다 중복을 만든다. 받는 쪽이 두 번 처리하면 결제가 두 번 된다. 처리한 걸 기억하거나 연산 자체를 멱등하게 만들어, 두 번 받아도 한 번처럼 삼키는 법.
느슨하게 잇는다 2편
Event-Driven · Architecture
이으면 생기는 문제들 - 이벤트 패턴 지도
쪼개고 비동기로 이으면 편해지는 대신 새 문제가 생긴다. 중복·발행 누락·분산 트랜잭션·복잡한 조회 - 벽마다 정해진 패턴이 있다. 그 이름들의 지도를 먼저 편다.
느슨하게 잇는다 1편