실무에서 자주 사용하는 데이터베이스 & API 패턴 완전 정리
마스터-디테일, 다대다 해소, 이력 관리, 소프트 삭제 같은 테이블 패턴과 페이징·배치·비동기 API 패턴을 예제 SQL과 함께 모아, 어떤 문제에 어떤 패턴을 고를지 기준을 세운 정리.
태그
10편 · 아카이브에서 필터로 보기
마스터-디테일, 다대다 해소, 이력 관리, 소프트 삭제 같은 테이블 패턴과 페이징·배치·비동기 API 패턴을 예제 SQL과 함께 모아, 어떤 문제에 어떤 패턴을 고를지 기준을 세운 정리.
Request에서 Command, Entity를 거쳐 Response로 이어지도록 계층별 객체를 갈라 스프링 부트 패키지 구조를 잡고, 같은 기준으로 Vue 3 쪽 구조와 견줘본 정리.
비즈니스 로직 중간에 에러가 나면 이벤트가 유실되는 문제를 29CM가 아웃박스 테이블과 TransactionalEventListener의 BEFORE_COMMIT/AFTER_COMMIT 분리로 푼 방식을 따라가며 정리한 탐구 기록.
실시간 응급실 조회 서버를 뜯어보며 application·domain·infra 멀티모듈 분리와, CQRS·파사드 패턴으로 기능 함수를 조합해 비즈니스 로직을 드러내는 방식을 정리한 분석 기록.
공연 티켓 판매 서버의 Api·Domain·Infrastructure 멀티모듈 구성을 따라가며, 파사드 패턴과 커스텀 어노테이션으로 도메인 개념을 코드에 드러내는 방식과 FeignClient 사용을 정리한 분석 기록.
29CM와 컬리의 검색 전환기를 나란히 읽고, 원천 데이터와 변경 데이터를 카프카 발행/구독으로 흘려 검색엔진 인덱싱 파이프라인을 만드는 공통 구조를 뽑아낸 탐구 기록.
설계한 주문 생성 API를 implement 레이어에 구현체를 두고 모든 흐름이 비즈니스 레이어로 향하도록 구현한 과정. 정합성을 맞추는 방법은 장기 트랜잭션과 개별 트랜잭션 조합 두 갈래를 놓고 저울질하는 데서 멈춘다.
팀 프로젝트를 리팩터링하기 전에 '지속 성장 가능한 소프트웨어' 방법론을 클린 아키텍처·헥사고날과 견주고, 레이어 참조 규칙과 모듈 분리 기준을 우리 프로젝트 구조로 옮겨 그려본 글.
교보문고·예스24 같은 주문 서버를 맡아 코드를 짜기 전에, 회원·주문·상품·장바구니·결제·배송 여섯 도메인의 관계와 주문 프로세스의 트랜잭션·자동복구·성능 지점을 먼저 그려본 기록.
여섯 도메인이 얽힌 주문을 멀티모듈 안에서 어떻게 나눌지, 내부 통신과 외부 결제 연동을 어디서 끊을지 정하고 분산 트랜잭션과 재처리 전략까지 시퀀스 다이어그램으로 확정한 설계 기록.