TECH NOTES
기술노트
현장에서 검증된 개발 지식을 기록합니다.
4321
Backend
아웃박스 패턴(Transactional Outbox) — 이중 쓰기 문제와 신뢰성 있는 이벤트 발행
DB 저장과 이벤트 발행을 나눴다가 한쪽이 실패하는 이중 쓰기 문제를 아웃박스 패턴으로 해결하는 법. outbox 테이블 스키마, 폴링 릴레이 vs CDC, at-least-once와 멱등 소비까지 실전 코드로 정리한다.
Backend
멱등성 키(Idempotency Key) — 결제·주문 API에서 중복 요청을 안전하게 막기
네트워크 재시도와 더블클릭으로 결제가 두 번 일어나는 사고를 막는 법. Stripe식 Idempotency-Key 헤더 설계부터 응답 캐싱, DB 유니크 제약으로 동시성 경쟁 조건 방어, TTL 정리, 지문 불일치, at-least-once 큐 조합까지 실전 코드로 정리한다.
Backend
멱등성 키 — 중복 결제·이중 요청을 막는 실전 패턴
네트워크 재시도로 인한 중복 결제를 막는 멱등성 키. Postgres ON CONFLICT로 원자적으로 선점하는 서버 구현과 TTL·본문 해시 같은 실전 디테일을 담았습니다.
Backend
트랜잭셔널 아웃박스 패턴 — 이중 쓰기 문제를 없애는 법
DB 저장과 메시지 발행 사이의 이중 쓰기 문제를 outbox 테이블로 푸는 법. 폴링과 CDC 릴레이, at-least-once와 멱등 소비자까지 실전 관점으로 설명합니다.